During development, we leave a container running and `exec` into it
to run multiple commands. To keep the container running, we need a PID
1 process that never terminates, which we achieved previously with
Python. This technically works, but ultimately leaves a lot of zombie
processes. If we use a "true" init process for PID 1, it will clean
these up.
Aimee OS/container-images/pipeline/head There was a failure building this commitDetails
Although most software can be cross-compiled, there are quite a few edge
cases where executables built for the target system need to be run on
the build host. Notably, `ldconfig` only considers libraries for the
same machine type as the tool itself, so it's impossible to run it in a
cross-compiled root. In order to get passed these situations, we can
use QEMU in user mode to emulate the target architecture, allowing ARM
executables to run on AMD64 machines.
* Base
* Crossdev
* Build
The *Base* layer is bootstrapped from a regular Gentoo stage 3
environment. The *Build* layer is the primary artifact, and is
"squashed" into a single layer when built.