# NixOS * There is controversy about flakes, rather use channels (e.g. with niv) ## Build and Switch * https://nixos.wiki/wiki/Nixos-rebuild Directly change to new config, make it default: ```shell sudo nixos-rebuild -I nixos-config=yodaTux/configuration.nix switch ``` ## Install Home Manager with niv * https://github.com/nix-community/home-manager/tree/release-23.05#releases > To avoid breaking users' configurations, Home Manager is released in branches corresponding to NixOS releases ( > e.g. `release-23.05`). > Home Manager provides both the channel-based setup and the flake-based one. Check your channel: ```shell sudo nix-channel --list #=> nixos https://nixos.org/channels/nixos-23.05 ``` Use the corresponding branch: ```shell niv add nix-community/home-manager -n home-manager -b release-23.05 ``` ## disko and nixos-anywhere * Introductive presentation: https://pad.lassul.us/cccamp-workshop * disko: https://github.com/nix-community/disko * nixos-anywhere: https://github.com/numtide/nixos-anywhere/ **TODO** ## General Notes ### Nix Pills * https://nixos.org/guides/nix-pills/pr01 It provides a tutorial introduction into the Nix package manager and Nixpkgs package collection, in the form of short chapters called 'pills'. ### Thesis There are two (?) theses about Nix. One is https://edolstra.github.io/pubs/phd-thesis.pdf ### Search for packages * https://search.nixos.org/packages?channel=23.05 ## TODOS * FDE remote SSH unlock: https://nixos.wiki/wiki/Remote_LUKS_Unlocking