1.6 KiB
1.6 KiB
Agent Instructions
Nix/Darwin Rebuilds
IMPORTANT: When making changes to Nix configuration files (e.g., nixos/home/danny/home.nix, nixos/flake.nix, etc.), always ask the user to rebuild before assuming packages are available.
To rebuild:
cd ~/dotfiles/nixos
darwin-rebuild switch --flake .
Do not automatically run rebuild commands - ask the user first.
Repo is public
No keys, tokens, or identifying secrets in the repo. Prefer scp or config outside the repo.
Learnings (NixOS server)
- Minimal ISO: use Ethernet or the graphical installer (Wi‑Fi on minimal is fiddly).
- Server hardware: stub in repo; user replaces with
nixos-generate-config --show-hardware-configfrom the server. - Root password: console only; set danny’s password as root once for sudo.
- SSH keys: use actual key names on the machine (e.g.
id_ed25519_github), not assumedid_ed25519.
Server (nixos-server)
- Commit and push before testing on the server; it clones/pulls from origin.
- Bootstrap: server has no git until first rebuild. Use
nix run --extra-experimental-features "nix-command flakes" nixpkgs#gitto clone. Enable flakes in the daemon viaserver-configuration-with-flakes.nix: scp to server/tmp/configuration.nix, on serversudo cpto/etc/nixos/configuration.nix, thensudo nixos-rebuild switch. Then build flake and runswitch-to-configuration switch(see nixos/readme.md). - Auto-rebuild timer (
dotfiles-rebuild) only runs after the system has been switched to the flake config. Check withsystemctl is-active dotfiles-rebuild.timeron the server.