Build system
Docker, staged build scripts and the steps from source to a bootable ISO.
- Choice: our own staged Bash scripts running
debootstrapinside a privileged Debian container (build/). - Alternatives: live-build (Debian), mkosi, debos, Ubuntu's livecd-rootfs.
- Why: the stages are short, readable and each does one thing, and they can be re-run individually (
make stage S="40 90"). The container makes builds identical on any Linux host. Fixed configuration lives inconfig/: package lists, languages, the app manifest, hidden and renamed launchers, third-party packages with checksums. live-build and mkosi are capable, but they add a configuration language on top of what are ultimately the same steps.