Thanks! I feel your pain on the docker adoption in a commercial setting. To be fair there can also be security and other technical implications involved.
BreadMakesYouFull
Creator of
Recent community posts
Thanks! I somewhat ran out of time, but still wanted to join the Jam. It's a little bit of a meta-entry as a lot of the time was spent on the containerfiles, reading what was available, and experimental gimp -> butano bmp export rather than the rom itself. I'd restored my gba for fun and only discovered the Jam by accident, I was super impressed by how accessible making stuff is, and how elaborate the community has managed to go with full games compared to other platforms :)
Thanks for taking a look and giving some feedback! Hopefully I can add some context that might help:
Docker or Podman are build tooling that can bypasses the complex manual setup for developers, and gives a package a known stable platform. Defiantly not something necessary or fit for everyone, just a possibility! gbadev has a lot of approaches and resources... but they're a little manual and don't always make great choices on install methods. Also a lot of projects are made open source but really as "it works for me".
If you've never heard of containers before I'd definitely encourage you to give them a go!
https://www.docker.com/resources/what-container/
You can read the project readme where a previous jam entry is used as an example. Its very much build-able... but only with specific versions of butano (understandable but less accessible for others to explore). A Containerfile, often called dockerfile could have described the build steps concretely, as well and been a reference others in future.
A 10gib container is for bundling whatever you like, but doesn't have to be that big! In this case all of Debian's goodness, gimp, mgba, devkitpro, butano, vim and whatever you'd want to extend it with, inside something that can run on mac windows linux! It would be trivial to make a leaner image though.
Containers are also great for CI/CD setups, allowing you to run your code in the same environment from development to production, which can save a lot of headaches, test test test.
I hope that helps add some context, it's not the right fit for everyone, but development in general has been shifting for a while now and probably will continue to with projects like nix, guix, atomic blue and so on.
It might be that this approach isn't really right for the homebrew/indie community but I thought I'd give it a try anyway in case anyone finds the example helpful :)
---
[Update: some concrete use cases I found on itch.io where people have used docker to overcome something]
- An entry this game jam used docker to build the web emulator :D https://setsquare.itch.io/dungeon-tactics-advance
- A dev that used dockerfiles to build for windows in a jam https://itch.io/post/4804820
- Devlog on using docker for PS2 / gadot dev https://itch.io/t/3658957/compiling-godot-for-the-playstation-2-progress-report
- A gamejam that provided a container environment for their platform