Hacker News new | ask | show | jobs
by wasting_time 1 hour ago
I'm surprised to see no mention of Guix. It solves all of these issues, and already has a good story both for cross and native builds on a variety of architectures.

Adding new targets is deceptively easy, just copy an existing template and substitute your values.

https://codeberg.org/guix/guix/src/branch/master/gnu/system/...

https://codeberg.org/guix/guix/src/branch/master/gnu/bootloa...

1 comments

Does guix have any advantage here over nix?
I didn't know Nix had support for embedded systems. Where are the images defined?
What do you mean by image? In Nix you instantiate a NixOS system and specify the architecture. There are a number of tools to build a disk image from a NixOS system.

$ my-arm-system = nixpkgs.lib.nixosSystem { system = "aarch64-linux"; modules = [ ./configuration.nix ]; };

$ :b arm-system.config.system.build.images.iso

Lisp