I use this repo to maintain the hardware and OS configuration of my daily-driver desktop, which also acts as a home server.
I use NixOS for the operating system, and host many docker container services.
All of the configuration for that is declarative, and version controlled, right here in this repo.
- Download and boot NixOS Minimal installer
- Working internet connection (ethernet is easiest)
git clone --depth=1 https://github.com/smissingham/nixos-config
cd ./nixos-config/installation/
sudo bash 0_all.sh
- Prompt for
YES
to permit overwrite contents of md0 - Prompt (twice) for LUKS passphrase
- Prompt again to open LUKS
- Wait for NixOS installation to finish
- Prompt for user password
sudo reboot
- Optionally, set root passwd (after login is easier)
- clone repo to ~/Documents
- From now on, use
./_rebuild.sh
to copy config from home dir to/etc/nixos
- When desired,
git push
to push the auto-generated commits up to github master