pdtpartners / nix-snapshotter

Brings native understanding of Nix packages to containerd
MIT License
532 stars 15 forks source link

x86-64 only ? #96

Open delneg opened 1 year ago

delneg commented 1 year ago

Hi, I've tried to run the example but got error: flake 'github:pdtpartners/nix-snapshotter' does not provide attribute 'apps.aarch64-linux.vm', 'packages.aarch64-linux.vm', 'legacyPackages.aarch64-linux.vm' or 'vm'

I can see systems = [ "x86_64-linux" ]; in flake.nix, is there any way to get around that ?

adrian-gierakowski commented 1 year ago

You can try adding ”aarch64-linux” to systems list, and it might just work. But it’s likely that it doesn’t if the author’s didn’t include it themselves.

delneg commented 1 year ago

I managed to launch it on macOS with nix run "github:pdtpartners/nix-snapshotter#apps.x86_64-linux.vm" and the help of https://github.com/zhaofengli/rosetta-spice

elpdt852 commented 1 year ago

I'm open to adding aarch64-linux support but we'll want to have automated testing on that architecture as well. Also note that containerd relies on a linux kernel, so it won't work with home-manager and only inside a linux VM.

We should investigate if we can integrate with projects like: https://github.com/lima-vm/lim

cc @AkihiroSuda does lima support any kind of host -> VM mount so that we can potentially setup a macOS nix store mount into the lima VM?

AkihiroSuda commented 1 year ago

mount

You can define mounts here: https://github.com/lima-vm/lima/blob/938ea3e649f6b0a286da2c35bfbac3398e811383/examples/ubuntu.yaml#L17-L20 Not sure if it works with nix store though.

elpdt852 commented 1 year ago

Thanks, we'll need to do something like NixOS vms where they mount /nix/store -> /nix/.ro-store and use overlay ontop. See: https://github.com/NixOS/nixpkgs/blob/23.05/nixos/modules/virtualisation/qemu-vm.nix#L934-L939