My nixOS config
- Nix 100%
gnome-shell keeps segfaulting in libmutter, and with the PAM core limit at 0 systemd-coredump threw every dump away, so there was no backtrace to work from. Raise the limit to unlimited; dumps land root-owned in /var/lib/systemd/coredump, readable only by their owner. Enable nixseparatedebuginfod2 so gdb/coredumpctl can fetch symbols for store paths on demand. The user manager inherits the limit at its first login, so it takes a reboot (or a full logout) to apply. Assisted-by: Claude:opus-5 |
||
|---|---|---|
| modules | ||
| patches | ||
| secrets | ||
| .gitignore | ||
| .sops.yaml | ||
| configuration.nix | ||
| flake.lock | ||
| flake.nix | ||
| hardware-configuration.nix | ||
| README.md | ||
NixOS
Assisted-by: Claude (claude-opus-4-5 → claude-opus-4-6 → claude-opus-4-7 → claude-opus-4-8 → claude-fable-5)
Flake-based NixOS configuration for a ThinkPad P14s Gen 6 (AMD), tracking nixos-unstable.
Highlights
- Secure Boot via lanzaboote
- Secrets: sops-nix with age — xray config, WireGuard, SSH keys, private routes/hosts; encrypted files stay out of the repo (only
.examplestructure files are tracked), decrypted to/run/secretsat activation - Desktop: GNOME on Wayland, AMD GPU
- Local LLMs: Ollama with ROCm (gfx1151) + Lemonade for XDNA2 NPU serving via nix-amd-ai
- Networking: Xray VLESS+Reality with sing-box TUN, WireGuard, WWAN modem
- Gaming: Steam with gamescope, declarative Flatpaks via nix-flatpak
- Litecoin Core (MWEB): vendored package build, revived after removal from nixpkgs
- Power: AMD P-State tuning, zram swap ahead of disk swap
Layout
flake.nix # inputs and host definition
configuration.nix # entry point, imports modules
modules/ # one module per concern (boot, desktop, ollama, xray, ...)
secrets/ # sops-encrypted (age) secrets, gitignored; .example files document structure
Usage
sudo nixos-rebuild switch --flake /etc/nixos#meow
Fresh install: restore secrets/ and the age key (/var/lib/sops-nix/key.txt) from out-of-band backup first.
TODO
- Evaluate Home Manager