Commit Graph

5 Commits (c3418b96e7ecdb32d3237eba848d2a90ae86bdaf)

Author SHA1 Message Date
Dustin 961cb0078c lib: Disable emerge color
Although Jenkins is supposed to be able to decode ANSI escape sequences
for terminal colors, it doesn't do so in all cases and when it does, it
doesn't seem to produce the right result for output from `emerge`.
2024-12-14 17:37:25 -06:00
Dustin a67ed592df tools: Install tini
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.
2024-12-14 09:45:50 -06:00
Dustin aaed7211b2 build: Install QEMU
Aimee OS/container-images/pipeline/head There was a failure building this commit Details
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.
2024-12-12 18:02:16 -06:00
Dustin f99176abf3 tools: emerge shadow first
_sys-apps/shadow_ needs to be installed explicity, otherwise all
_acct-user/*_ and _acct-group/*_ packages will fail to install.
2024-12-08 10:59:30 -06:00
Dustin 65988b0c32 Rework images into three layers
* 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.
2024-12-08 10:59:28 -06:00