.. | ||
amd64.tar.gz | ||
arm64.tar.gz | ||
Dockerfile | ||
README.md |
Determinate Nix Installer Action: Docker Shim
The image in this repository is a product of the contained Dockerfile. It is an otherwise empty image with a configuration layer.
This image is to be used in GitHub Actions runners which don't have systemd available, like self-hosted ARC runners.
The image would have no layers / content at all, however Docker has a bug and refuses to export those images. This isn't a technical limitation preventing us from creating and distributing that image, but an ease-of-use limitation. Since some of Docker's inspection tools break on an empty image, the image contains a single layer containing a README.
To build:
docker build . --tag determinate-nix-shim:latest
docker image save determinate-nix-shim:latest | gzip --best > amd64.tar
Then, extract the tarball:
mkdir extract
cd extract
tar -xf ../amd64.tar
It'll look like this, though the hashes will be different.
.
├── 771204abb853cdde06bbbc680001a02642050a1db1a7b0a48cf5f20efa8bdc5d.json
├── c4088111818e553e834adfc81bda8fe6da281afa9a40012eaa82796fb5476e98
│ ├── VERSION
│ ├── json
│ └── layer.tar
├── manifest.json
└── repositories
Ignore manifest.json
, and edit the other two JSON documents to replace amd64
with arm64
, both in a key named "architecture:
"architecture":"amd64"
Then re-create the tar, from within the extract
directory:
tar --options gzip:compression-level=9 -zcf ../arm64.tar.gz .
Then git add
the two .tar.gz's and you're done.