6 ms·
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 architect
by wasting_time 3mo 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/images https://codeberg.org/guix/guix/src/branch/master/gnu/system/...
https://codeberg.org/guix/guix/src/branch/master/gnu/bootloader/u-boot.scm https://codeberg.org/guix/guix/src/branch/master/gnu/bootloa...
- yjftsjthsd-h 3mo agoDoes guix have any advantage here over nix?
- mghackerlady 3mo agoLisp
- wasting_time 3mo agoI didn't know Nix had support for embedded systems. Where are the images defined?
- KingMachiavelli 3mo agoWhat 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
- throwawayqqq11 3mo agoPSA: nixos-rebuild build-vm (--flake DIR#HOSTNAME / configuration.nix) ./result/bin/SCRIPT to build and launch a nixos vm with qemu.
- KingMachiavelli 3mo agoIMO the nixos-rebuild scripts are unnecessary and just obscures what’s being built. build-vm is the same as building the configs “config.system.build.vm” attribute. nixos-rebuild is fine for getting started but you end up needing to use the attribute path to do anything more complicated like CI caching or inspecting the drvPath.
- t0mpr1c3 3mo agoGuix has some security advantages (grafts for security patches, full source bootstrapping, 100% OSS) and its documentation is generally thought to be superior to Nix. For me the main downside of Guix is that the maintenance team is very small, which does not seem sustainable.