Install via the NixOS installer, configure drives etc. to build a default config. Then to add to the share config...
- Edit the configuration.nix file to
- Enable SSH
- Install git
- Install kitty (to use system clipboard)
- Set the hostname of the new machine
Rebuild the config with the new hostname and then connect via ssh.
- ssh-copy-id to the new machine
- scp the parent config to the child computer's homedir
- mv the child's config to
/etc/nixos-aside - mv the parent config to
/etc/nixos - cp
nixos-asideto/etc/nixos/hosts - git add, commit, and push (to work on parent environment)
- Concat the hardware and config files into one host file. (follow the parent pattern, ensure the drives are correct)
- Commit the change and pull/rebuild on the child machine
Configure the machine to get secrets
- Create a public key for the new machine via SOPS-NIX instructions
- Add the Public key to the .sops.yaml file
- sops updatekeys secrets.yaml
I could use hardware-configuration instead of putting everything into the machine host file. Then when hardware changes it's easier regenerate the configuration.