Something went wrong. Try again.
likely broken
Something went wrong. Try again.
Repository Instructions #
Configuration Boundaries #
flake.nixexposes twox86_64-linuxsystems:chiis the Framework 12 desktop/laptop andhalois the headless Strix Halo server.modules/common.nixaffects both hosts.hosts/chi/andhome/own chi; halo useshosts/halo/configuration.nixplus the separatehosts/halo/home.nixHome Manager config.- Halo's existing Podman/Compose application definitions live outside this repository under
/home/molly/; do not assume container services are declarative here. hosts/*/hardware-configuration.nixis generated bynixos-generate-configand deliberately excluded from treefmt. Keep it byte-identical unless the hardware configuration itself must change.system.stateVersionandhome.stateVersionare compatibility pins, not release-version markers. Do not bump them during routine input updates.
Verification #
- Format and lint with
nix fmt, then runnix flake check. The formatter is treefmt with Alejandra, Statix, and deadnix. nix flake checkdoes not evaluate both complete host configurations; CI separately runsnix eval --raw .#nixosConfigurations.chi.config.system.build.toplevel.drvPath.- CI also runs
nix eval --raw .#nixosConfigurations.halo.config.system.build.toplevel.drvPath. - Evaluate both hosts after changing
flake.nix,flake.lock,modules/common.nix, or shared inputs. For a host-only change, the affected host evaluation is the focused check. - Update inputs deliberately with
nix flake update; reviewflake.lock, then rerun formatting, flake checks, and both host evaluations before deployment.
Secrets And Packages #
- Only encrypted SOPS YAML belongs under
secrets/. Edit halo secrets withsops secrets/halo.yaml; age private keys stay at~/.config/sops/age/keys.txton chi and/var/lib/sops-nix/keys.txton halo, outside Git. - After changing a halo secret, deploy halo before restarting its consumer so
/run/secrets/halo/*is rematerialized.
Deployment #
- Do not run activation commands unless deployment was explicitly requested. Use
buildordry-activateinstead ofswitchfor a preview. - Deploy chi locally with
sudo nixos-rebuild switch --flake .#chi. - Deploy halo from chi with
sudo nixos-rebuild switch --flake .#halo --target-host halo --use-remote-sudo.