NixOS — volume overview
Volume 2: Nix & NixOS
Role in the series: independent volume on declarative systems with Nix and NixOS.
Baseline: Nix 2.34.x · NixOS 26.05 “Yarara”.
Pacing: author estimate ~4h per study day when you work the full lab; use any schedule you like.
Who this volume is for
- Comfortable on a Unix shell
- Willing to use disposable VMs and reinstall without drama
- Wants rebuildable machines, not only package-manager trivia
What “done” looks like
- Explain store, derivations, generations, and GC roots plainly
- Run one flake-defined NixOS host; break it and roll back
- Home Manager for the user layer; secrets kept out of the store
- Package something real; deploy beyond one box with tests/CI habits
- Capstone: wipe and rebuild from flake + keys
How this volume is ordered (expert summary)
| Stage | Theme | Why here |
|---|---|---|
| Lab 0 | Single-server lab + dev machine (+ Elitebook profile) | Before Day 1 — KVM, disks, roles |
| I | Foundations + first flake shell | Modern defaults from day 1 |
| II | Flake-based first host | Rebuild/rollback before deep theory |
| III | Layout + Home Manager | System then user |
| IV | Secrets + service patterns | Production habits without app zoo |
| V | Packaging craft | After you have consumed packages for real |
| VI | Fleet: Disko, deploy, CI | Boring new hosts |
| VII | Internals + currency | Debug and upgrade without superstition |
| VIII | Capstone | Prove rebuildability |
Lab 0 (do this first)
| Doc | Purpose |
|---|---|
| Lab 0 — Overview | Roles: host vs journey guest vs dev |
| Lab 0A — Journey single-server | KVM, VMs, containers, storage |
| Lab 0B — NixOS dev machine | Editor, flakes, SSH, caches |
| Lab 0C — Elitebook 2570p | Your spare HP · 16 GB profile |
| Lab 0D — Ops cheatsheet | Daily commands |
Optional note on application languages
Stage V is a natural place to package any language’s binary you care about (buildGoModule or equivalent is only an example). This volume stands alone—no other monorepo book is required.
Syllabus contract
See NixOS syllabus. Narrative days follow that document only.
Lab 0 first, then Day 1–90 (Nix 2.34.x · NixOS 26.05). Gates at Days 10, 22, 32, 44, 56, 70, 82, 90.