My system and home configs.
README.md

built with nix

DOTFILES #

My dotfiles for NixOS.

I made the background image, feel free to use it.

Setup #

Setup channel (for normal nix-shell) #

This is not necessary when just rebuilding, but will be used by any nix expressions (like those in project-level shell.nix files) that call import <nixpkgs>.

This will also fix command-not-found.

sudo nix-channel --add https://nixos.org/channels/nixos-unstable nixos
sudo nix-channel --update

Clone repo and rebuild #

sudo chown kyle: /etc/nixos
git clone --recursive https://gitlab.com/kylesferrazza/nix.git /etc/nixos
cd /etc/nixos
sudo nixos-rebuild --flake . switch

Initial rebuild with self-hosted caches #

The kyle.caches module configures the harmonia binary caches running on shai and gaotona, but on a fresh install those substituters/keys aren't in nix.conf yet. Pass them on the CLI for the bootstrap rebuild — the rebuild-with-caches helper in the devshell does this for you, reading the cache list straight from nixosModules/caches-data.nix:

nix develop
rebuild-with-caches           # defaults to `switch`
rebuild-with-caches boot      # or `build`, etc.

Once that rebuild lands, the caches are in nix.settings and subsequent nixos-rebuild invocations pick them up automatically.

Naming #

Hosts #

Hostname Role
hoid Personal laptop (arm64)
navani Secondary laptop
highstorm Desktop (gaming/workstation)
urithiru VPS (services)
shai amd64 builder
nightblood VPS (AI agent, arm64)
gaotona arm64 builder