{
"$type": "site.standard.document",
"canonicalUrl": "https://devlog.croft.click/2026/02/18/nix-config-rewrite",
"description": "Rewrote the entire nix-config around proper Nix modules — replaced custom patterns with the module system, switched to sops-nix, moved desktop to KDE Plasma.",
"path": "/2026/02/18/nix-config-rewrite",
"publishedAt": "2026-02-18T19:19:50.000Z",
"site": "at://did:plc:ofrbh253gwicbkc5nktqepol/site.standard.publication/3mlen2qhzrt2s",
"tags": [
"infra"
],
"textContent": "nix config rewrite\n\nRewrote the entire nix-config. The previous version worked but was held together with optimism and duct tape — values scattered across files, custom cfgLib/specialArgs patterns that fought the module system. Replaced all of it with proper Nix modules using modules/options.nix for configuration. Switched from ragenix to sops-nix for secrets management. Moved desktop config from GNOME to KDE Plasma with plasma-manager. Tightened the macmini and server configs. The result: nix flake check passes, the config is leaner and more declarative, and changing a setting no longer requires hunting through multiple files. Repo version bumped to v0.3.1.",
"title": "Nix Config Rewrite"
}