Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hermetic cross system deployments fail #33

Open
Gerschtli opened this issue Oct 27, 2022 · 3 comments
Open

Hermetic cross system deployments fail #33

Gerschtli opened this issue Oct 27, 2022 · 3 comments

Comments

@Gerschtli
Copy link

Currently, it is not possible to run an hermetic deployment from a x86_64-linux to an aarch64-linux machine. It fails with

/nix/store/5xr8ndqi3i7pxydh41lvx859mqfq1c0g-nixos-rebuild
/nix/store/5xr8ndqi3i7pxydh41lvx859mqfq1c0g-nixos-rebuild/bin/nixos-rebuild: line 373: /nix/store/qarssrazji0q9xp80xg8shsm2crckfr0-coreutils-9.0/bin/mktemp: cannot execute binary file: Exec format error

Hermetic deployment should copy and use cross compiled packages on the target machine.

@MatthewCroughan
Copy link
Owner

This is actually an issue with nixos-rebuild, which is why I was thinking of implementing multiple backends, so that we could for example choose between using nixos-rebuild and nix copy to implement the deployment, or any other method, perhaps our own custom activation.

If we use nixos-rebuild we encounter this bug NixOS/nixpkgs#177873

If we use nix copy and use the activation script from a NixOS system closure directly, we encounter this bug NixOS/nixpkgs#82851

@Gerschtli
Copy link
Author

Ouh, that looks like fun :D If you need some help, I would be glad to join :)

@MatthewCroughan
Copy link
Owner

@Gerschtli Just fixing those bugs I posted would ultimately fix them in Nixinate too. I don't have the time to work on them right now, but I may find interest later on, in which case I'll give you a ping!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants