* Test nix-installer-action on Namespace.so
It is special in that it doesn't have systemd, and it'd be great to
support Namespace.so. It is also a good test case for a variety
of self-hosted GHA runner use cases.
* Make correlation more confident
* Borrow docker as a process supervisor on Linux GHA runners without systemd
This change introduces a Docker container shim which spawns the Nix
daemon after bind mounting all the relevant paths into the container.
The image is actually completely empty, other than metadata about what
to run.
This is a cheap and cheerful way to get decent process supervision in
environments that don't bring systemd, but do have docker ... which
is most everywhere in the GHA ecosystem.
* Ignore generated files
* Run on arm64 why not
* Load a pre-built image, don't build
* Check the userInfo.username instead of an env var
* Stop double-printing output to the console
* can't rm and restart
* what
* Clean up the container at the end
* Emit the fetch line in the 'installing nix' section
* tweak output
* delete what
Background: Namespace managed runners run each github job in a container, in a
separate micro-vm managed by Namespace. These VMs and containers do not rely on
systemd, and instead use Namespace's own init/process management.
Use the GitHub Actions-issued JWT to authenticate with FlakeHub.
The repository will be granted its due permissions on FlakeHub,
and be able to pull the user's private flakes.