My personal NixOS settings and tools
To build the iso, run:
docker run --rm -it -v $(pwd):/workspace -w /workspace nixos/nix sh -c "nix build --extra-experimental-features 'nix-command flakes' .#nixosConfigurations.installer.config.system.build.isoImage && cp result/iso/*.iso ."The installer will guide through the process and at the end the machine should be ready to roll.
Apps like Neovim and Fish come already pre-configured from home-manager. All plugins and configurations are pre installed.
Secrets are managed using sops-nix with a hybrid age + GPG setup:
- Age keys: Per-machine keys for automatic decryption at login
- GPG (YubiKey): Master key for bootstrapping new machines
- Clone the dotfiles repository
- Plug in the YubiKey
- Run the setup script:
nix-shell -p age sops yq-go --run "fish ~/.dotfiles/home/secrets/sops-setup.fish"
- The script will:
- Generate a new age key for this machine
- Update
.sops.yamlwith the new key - Re-encrypt secrets
- Edit the secrets file:
sops ~/.dotfiles/home/secrets/env.yaml - Add the new secret key to
home/secrets.nix - Add the environment variable to the template in
home/secrets.nix - Rebuild