I want to develop a game and am considering collaborating with others, potentially even making it open-source.

To make this process smoother, I need to establish an easy-to-replicate development environment—one that can be set up by non-programmers (such as artists) but is also simple for me to configure so I can focus on actual development.

I’ve explored various options (Docker, Podman, Anaconda, NixOS, VMs), but the choices are overwhelming, and I’m unsure which one is best for my needs.

I’ve had partial success with a Fedora+i3wm virtual environment (VM), creating a plug-and-play experience. However, this setup requires extra space (~3GB for the OS) and includes software already installed on the host system. It also requires users to learn i3wm and possibly use the command line, which may not be ideal for everyone.

I would appreciate any advice on how to approach this effectively.

Edit: An example of things to setup:

  • The right .Net Sdks version
  • Git
  • Git LFS
  • Format Checks
  • VScode (+ extensions)
  • Godot (+ extensions)

Final: I have read your recommendations, researched your suggestions, and looked at what other projects use (Luanti uses docker). And I have finally decided that at least for now this might be a bit overboard. I will start with a simple setup script and setup files (such as for vscode) with instructions. And if I need to in the future I will most likely use Docker.

  • OneCardboardBox
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    edit-2
    2 days ago

    I set up a very straightforward Godot dev environment yesterday using toolbox which is built on top of rootless Podman.

    • Create a new fedora toolbox
    • Enter toolbox
    • Install DotNet dependencies, git, etc with dnf
    • Install Godot binary from release page
    • Turns out there were other dependencies I needed
    • Godot wanted a few Wayland libs on the container, so I installed Weston (maybe overkill)
    • Godot wanted libxrandr so I added that too
    • Godot just works ™

    The nice thing about toolbox is that it uses my native host Wayland compositor. So whatever I have running in the toolbox can be interacted normally through sway (my host WM).

    You can either distribute a container image with your given toolbox configured, or just document the setup steps.