nixos machine and package configurations.
Jake Hillion
caa3128310
All checks were successful
flake / flake (push) Successful in 1m27s
home-manager currently has a pinned stateVersion on all hosts, even though many of the hosts were initialised after that point. Create a condition such that any hosts initialised after 24.05 (the latest currently host) will use that version in home-manager instead of pinning to 22.11. Any future users can pass the stateVersion through without the `if`. Test plan: ``` # system.stateVersion = "23.11"; $ nix eval '.#nixosConfigurations."boron.cx.ts.hillion.co.uk".config.home-manager.users.root.home.stateVersion' "22.11" ``` ``` # system.stateVersion = "24.05"; $ nix eval '.#nixosConfigurations."phoenix.st.ts.hillion.co.uk".config.home-manager.users.root.home.stateVersion' "22.11" ``` ``` # system.stateVersion = "24.11"; // no-commit change $ nix eval '.#nixosConfigurations."phoenix.st.ts.hillion.co.uk".config.home-manager.users.root.home.stateVersion' nix eval '.#nixosConfigurations."phoenix.st.ts.hillion.co.uk".config.home-manager.users.root.home.stateVersion' error: ... (stack trace truncated; use '--show-trace' to show the full trace) error: A definition for option `home-manager.users.root.home.stateVersion' is not of type `one of "18.09", "19.03", "19.09", "20.03", "20.09", "21.03", "21.05", "21.11", "22.05", "22.11", "23.05", "23.11", "24.05"'. Definition values: - In `/nix/store/8dhsknmlnv571bg100j9v9yqq1nnh346-source/modules/home/default.nix': "24.11" ``` |
||
---|---|---|
.gitea/workflows | ||
darwin/jakehillion-mba-m2-15 | ||
hosts | ||
modules | ||
pkgs | ||
scripts | ||
secrets | ||
flake.lock | ||
flake.nix | ||
README.md | ||
renovate.json |
nixos
Building Raspberry Pi images
Raspberry Pi images that support Tailscale and headless SSH can be built using a command. It is easiest to run this command on AArch64 on Linux, such as within a Linux VM or Docker container on an M1 Mac.
docker run -v $PWD:/src -it --rm nixos/nix:latest /bin/sh
nix-env -f https://github.com/nix-community/nixos-generators/archive/master.tar.gz -i
cd /src
nixos-generate -f sd-aarch64-installer --system aarch64-linux -c hosts/microserver.home.ts.hillion.co.uk/default.nix
cp SOME_OUTPUT out.img.zst
Alternatively, a Raspberry Pi image with headless SSH can be easily built using the logic in this repo.