Skip to content

Nix Learning Index

Learning Nix on NixOS. Coming from a strong Linux background.

Study Material

  • igray/dotfiles (vendor/dotfiles-main/) — Ian's clean single-machine NixOS + Home Manager config for a Framework 13 laptop. Good for understanding the basic structure.
  • wimpysworld/nix-config (vendor/nix-config-main/) — Wimpy's production-grade multi-machine config (NixOS + macOS). Deep end, but very well documented. Featured on Linux Matters podcast ep. 7.

Lesson Log

# Topic File
01 What is Nix — concepts and vocabulary 01-what-is-nix.md
02 Flakes — the entry point of any config 02-flakes.md
03 NixOS vs Home Manager — what lives where 03-nixos-vs-home-manager.md
04 Ian's config tour — a simple real-world flake 04-ian-config-tour.md
05 Wimpy's config tour — advanced patterns 05-wimpy-config-tour.md
06 Installing packages and updating the system 06-installs-and-updates.md
07 Tiling window managers, bspwm, and sxhkd 07-tiling-wm-bspwm-sxhkd.md
08 nix-darwin — declarative macOS configuration 08-nix-darwin.md
09 COSMIC and Hyprland — modern Wayland desktops 09-cosmic-and-hyprland.md
10 Modern terminal toolkit 10-terminal-toolkit.md
11 Dev & code — git, direnv, editors 11-dev-and-code.md
12 Writing, notes & bookmarks 12-writing-notes-bookmarks.md
13 Communication & calls 13-communication-calls.md
14 Files, photos & passwords 14-files-photos-passwords.md
15 Reading & listening 15-reading-and-listening.md
16 Audio production & streaming 16-audio-production-streaming.md
17 Homelab — using the services 17-homelab-services.md
18 nixproject day-to-day workflow 18-nixproject-workflow.md

Running Notes

Things to remember that don't fit a lesson yet.

  • nix flake update refreshes flake.lock — like apt update but pinned
  • --show-trace is your friend when debugging build failures
  • nixpkgs stable vs nixpkgs-unstable — two channels, can mix them
  • The Nix store lives at /nix/store — immutable, content-addressed, never hand-edit it