nixcfg/hosts
Aly Raffauf ae0e007ba2
Some checks are pending
flakehub / flakehub-publish (push) Waiting to run
git-mirror / gitlab-sync (push) Waiting to run
nix-build / default-build (push) Waiting to run
nix-build / fallarbor-build (push) Waiting to run
nix-build / lavaridge-build (push) Waiting to run
nix-build / mauville-build (push) Waiting to run
nix-build / petalburg-build (push) Waiting to run
nix-build / rustboro-build (push) Waiting to run
nix-check / fmt-check (push) Waiting to run
nix-check / eval-check (push) Waiting to run
home: nixify swayidle (#60)
* home/hyprland: nixify idled

* home/hyprland: don't pass before-sleep commands if autosuspend is disabled

* home/hyprland: simplify idled options

* home/sway: mirror hyprland idleD improvements
2024-07-23 17:04:23 -04:00
..
common hosts: accept flake config during autoUpgrade 2024-07-22 14:00:32 -04:00
fallarbor hosts: add secrets.nix 2024-07-22 19:56:56 -04:00
lavaridge hosts: add secrets.nix 2024-07-22 19:56:56 -04:00
mauville hosts: add secrets.nix 2024-07-22 19:56:56 -04:00
petalburg home: nixify swayidle (#60) 2024-07-23 17:04:23 -04:00
rustboro hosts: add secrets.nix 2024-07-22 19:56:56 -04:00
README.md hosts: add README.md 2024-07-20 20:35:01 -04:00

Hosts

Provisioning New Devices

  1. Create hosts/$HOSTNAME/default.nix and other host-specific nix modules (e.g. disko.nix,hardware.nix, and home.nix).
  2. Add host to nixosConfigurations in flake.nix.
  3. (OPTIONAL) Generate a cert.pem, key.pem, and device ID for Syncthing with syncthing -generate=$HOSTNAME. Find the device ID in the generated config.xml and add it to nixosModules/services/syncthing/default.nix, encrypt the cert and key with agenix, and set them as appropriate in the host configuration.
  4. Install NixOS from this flake. Secrets will not be available on first boot without a valid SSH private key.
  5. Copy the new system's public SSH key (/etc/ssh/ssh_host_ed25519_key.pub) to the host configuration (secrets/publicKeys/root_$HOSTNAME.pub).
  6. Add the new public key to secrets/secrets.nix and rekey all secrets with agenix --rekey.
  7. Rebuild the new system from git. Secrets will be automatically decrypted and immediately available in /run/agenix/ for NixOS and $XDG_RUNTIME_DIR/agenix/ for users.
  8. (OPTIONAL) Generate a new user SSH key and add it to nixosModules/users/default.nix in order to enable passwordless logins to other hosts.