top-level configurations for all my NixOS machines
Go to file
Colin 2b8ff8d5ae rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00
helpers port helpers/home-manager-gen-colin.nix to modules system 2022-06-09 14:50:24 -07:00
machines rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00
modules rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00
nixpatches duplicity: migrate secrets to sops 2022-06-07 02:33:11 -07:00
pkgs sane-scripts: add a script for syncing Music 2022-06-11 17:54:29 -07:00
secrets rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00
.gitignore move secrets to a subdirectory, for improved overrides 2022-05-26 23:52:08 -07:00
.sops.yaml rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00
TODO.md remove the last remnants of the old `secrets` system. 2022-06-08 17:07:48 -07:00
configuration.nix move sops config to a dedicated file 2022-06-06 17:25:33 -07:00
flake.lock update nixpkgs/nixos-22.05: 2022-06-09 -> 2022-06-11 2022-06-11 15:54:46 -07:00
flake.nix rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00
image.nix add img targets for desko and uninsane machines 2022-05-22 02:57:05 -07:00
readme.md rename 'uninsane' machine -> 'servo' 2022-06-12 15:11:41 -07:00

readme.md

to build:

nixos-rebuild --flake "/etc/nixos/#servo" {build,switch}

query with:

nix flake show

secrets

we use sops for secrets. see helpers/universal/secrets.nix for some tips.

building images

to build a distributable image (GPT-formatted image with rootfs and /boot partition):

nix build ./#imgs.lappy

this can then be dd'd onto a disk and directly booted from a EFI system. there's some post-processing to do before running a rebuild on the deployed system (e.g. change fstab UUIDs) refer to flake.nix for more details

admin tips

online: https://nixos.wiki/wiki/Cheatsheet

verify ALL nix store contents with:

sudo nix-store --verify --check-contents  # add the --repair flag to auto-repair as well

search for a package with:

nix search nixpkgs <query string>

find which package owns some file with:

nix-locate /bin/vim  # or any other package-relative path