NixOS Infrastructure Hub¶
A multi-host NixOS configuration built on flakes, a single parameterised host template, Home Manager as a flake module, and Stylix-driven theming. This site documents every module, package, and host — and explains the reasoning behind each architectural choice.
Get started Browse the reference View on GitHub
The hosts¶
-
p620 — AMD Workstation
Primary development and AI workloads. Radeon RX 7900 with ROCm, local inference, binary cache server.
-
p510 — Media Server
Headless Intel Xeon server. Plex media stack, NVIDIA transcoding, k3s MicroVMs.
-
razer — Laptop
Mobile development. Hybrid Intel + NVIDIA graphics, Secure Boot via lanzaboote, power management.
How it fits together¶
-
One host template
A single parameterised
desktop.nixtemplate selects betweenworkstationandlaptopprofiles. No per-host import duplication. -
Feature flags
Modules are imported explicitly and gated by feature flags with dependency and conflict validation.
-
Stylix theming
A single base16 palette drives colours everywhere — terminals, Zellij, COSMIC — from
config.lib.stylix.colors. -
agenix secrets
Secrets are age-encrypted, committed safely, and loaded at runtime — never read during evaluation.
Build this site¶
The documentation is built reproducibly with Nix — the same toolchain locally and in CI:
nix build .#docs # -> ./result (static site)
just docs-serve # live preview at http://127.0.0.1:8000
just docs-check # strict build (fails on broken links)
Always in sync
The entire Reference section is generated
from the live Nix source at build time. It mirrors every file under
modules/, pkgs/, hosts/, lib/, and overlays/, so it can never
drift from the configuration.