Operating · 4 min read

Further reading

Prerequisite: Troubleshooting, or just an appetite.

Outcome: you know where to go for depth in every direction the tutorial only touched on.

This is a curated list. Everything here is either canonical (official docs) or widely-endorsed by the community. No half- finished blog posts, no dead links.

Bookmark, do not memorise. Return here whenever you catch yourself thinking “there should be a good source for this”.

Start-here hubs

  • nix.dev – the official modern documentation site. If you are unsure where a topic lives, start here. Maintained by the NixOS Foundation Documentation Team.
  • Zero to Nix – Determinate Systems’ friendly, opinionated intro. Great complement to this tutorial; often clearer on concepts, less on operations.
  • NixOS website – the landing page. Points at every downstream resource.
  • NixOS learn page – the aggregator of official learning material.

Manuals (authoritative)

Every Nix / NixOS / Nixpkgs question has an answer here. They are dense; use search.

  • Nix Reference Manual – the language, the CLI, the store, everything the nix binary can do.
  • NixOS Manual – installing, configuring, and administering NixOS. Sections worth flagging:
  • Nixpkgs Manual – how the package collection is structured, how to write a derivation, overlays, mkDerivation, stdenv, everything package-side.

Search tools

Community-maintained knowledge

  • NixOS Wiki – the modern wiki, actively maintained. Great for “how do I do X” recipes and ecosystem overviews. Older nixos.wiki redirects here.
  • NixOS Discourse – the primary forum. Search first, ask second. Categories worth browsing:

Chat

  • NixOS Matrix rooms – the main chat platform.
    • #nixos:nixos.org – general.
    • #nixos-help:nixos.org – how-do-I questions.
    • #nix-dev:nixos.org – development.
    • Language, tool, and topic subrooms all live under #nixos.org as well.
  • NixOS on Redditr/NixOS. Lower signal than Discourse but useful for community pulse.

Books

  • Nix Pills – Luca Bruno’s series that reconstructs Nix from first principles. Long, worth every page. Chapters 1-6 are the language; 7-20 are derivations and packaging; the rest are advanced.
  • nix.dev tutorials – the Foundation’s guided tutorials. Complements this doc.
  • Xe Iaso: NixOS series – well-written blog series. The flake tutorials are worth reading after Flakes.

Deploy tools

If you outgrow deploy-rs (or want to compare):

  • deploy-rs – what this repo uses.
  • Colmena – well-maintained alternative; declarative fleet layout inside the flake. Docs.
  • NixOps4 – the official next-gen deploy tool from the NixOS Foundation. Still maturing.
  • disnix – service- level distributed deployment. Niche.

Wiki comparison: NixOS Wiki – Deployment tools.

Secrets

Disk layout

Testing

  • NixOS tests – the integration-test framework. You can spin up whole networks of NixOS VMs, run Python assertions against them, and CI the results. Best-in-class; nothing outside Nix has an equivalent.
  • nixt – unit-test framework for Nix expressions.

Ops adjacencies

Not part of this tutorial, but you will meet them:

  • nix-darwin – run “NixOS-style” module system on macOS. If your ops laptops are Macs, this is how you version-control them.
  • home-manager – manage user dotfiles / user-scope packages declaratively.
  • nix-community/nixvim – configure Neovim declaratively.
  • cachix – run your own binary cache (or point at community-provided ones).
  • hydra – the CI system Nixpkgs itself uses. Overkill for a small fleet; useful once you want to prebuild your own store paths.
  • flake-parts – module-system-style organisation for flakes themselves. Nice once your flake grows.

Talks and videos

Reflection-dev repos

And when you get stuck

The order that usually works fastest, in decreasing likelihood of a hit:

  1. Search search.nixos.org/options (for a NixOS option) or /packages (for a package name).
  2. Search NixOS Wiki for the tool or error.
  3. Search NixOS Discourse for the error message verbatim.
  4. Read the manual chapter for the module in question.
  5. Ask in #nixos-help:nixos.org or on Discourse.
  6. If it looks like a bug, open an issue in the relevant repo.

Welcome to Nix. It repays every hour you spend learning it, and the community rewards specific, well-formulated questions generously.

Esc
Start typing to search.