My unified nix flake for all configuration management.
All checks were successful
/ build-host (map[host:beefcake]) (push) Successful in 33s
/ build-host (map[host:dragon]) (push) Successful in 46s
/ build-host (map[host:flipflop]) (push) Successful in 36s
/ build-host (map[host:foxtrot]) (push) Successful in 42s
/ build-host (map[host:rascal]) (push) Successful in 18s
/ build-host (map[host:router]) (push) Successful in 27s
/ build-devshell (push) Successful in 18s
/ flake-check (push) Successful in 4m13s
|
||
---|---|---|
.forgejo/workflows | ||
.helix | ||
lib | ||
packages | ||
secrets | ||
.envrc | ||
.gitignore | ||
.sops.yaml | ||
flake.lock | ||
flake.nix | ||
readme.md |
Nix for lytedev
NixOS Modules - Home Manager Modules - Desktop - Laptop - Server - Router - Packages - Templates - Docs
Details
I aim for declaring everything where possible, but I definitely break the rules if it's convenient enough and try to write it down when I do so. I also don't like repeating myself in configuration. I am mostly focused on being pragmatic and getting things done and doing so in a way that makes it easy to keep doing so (maintainability), but I also occasionally fall into experimenting with big refactors of the code for no real gain.
Layers
- Common defaults (machines that I might not interact with at all or only rarely, such as backup targets)
- Machines that I interact with only remotely (
shell
class) - Machines that I interact with directly, such as a laptop or my desktop
workstation (
desktop
class)