[WIP] Use flake to push to ghcr.io with multiplatform images
Hi team, I needed a native arm images for my M1 devcontainer, so I forked the repo and made a small PoC in my fork.
This is probably useable in upstream repo as well. Can someone help decide if this PR is worth to be merged/follow up?
The general idea is to use flake.nix to build a matrix of images with a combination of nix channel x nix system.
For each image per system, we push to ghcr.io.
For each images, we created multiplatform manifests that combines each system per images. This way, user can use a single unified tag and docker daemon will pick architecture that fits best, just like buildx. I used this approach because I don't know how to directly create multiarch images from nix dockertools.
I've tested this PoC for bash and devcontainer in my own repo.
Thanks for the comments!
Hi @lucernae, I just saw this PR. Are you still interested in getting this work merged?