{
"$type": "site.standard.document",
"canonicalUrl": "https://devlog.croft.click/2025/04/20/nixos-journey",
"description": "Adopting NixOS on the Dell Inspiron 3501 — from macOS user to declarative Linux config, the learning curve, and what actually clicked.",
"path": "/2025/04/20/nixos-journey",
"publishedAt": "2025-04-20T12:00:00.000Z",
"site": "at://did:plc:ofrbh253gwicbkc5nktqepol/site.standard.publication/3mlen2qhzrt2s",
"tags": [
"infra"
],
"textContent": "nixos adoption\n\nSwitched the secondary machine (Dell Inspiron 3501) to NixOS after stints with Arch, Fedora, Ubuntu, Debian, and Bazzite. Drawn by the declarative configuration model — the entire system described in code, reproducible from a Git repo. The learning curve was steep: Nix's functional, lazily-evaluated expression language is unlike anything in typical sysadmin work. The module system was the main source of early frustration — options nest, attributes merge, and things that look compatible sometimes aren't. Eventually it clicked, and the config-as-documentation model became the primary appeal. Rollback support changed how willing I was to experiment — worst case is a failed build and the system sits on the previous generation.",
"title": "My Journey to NixOS"
}