• Decq@lemmy.world
    link
    fedilink
    arrow-up
    16
    arrow-down
    1
    ·
    edit-2
    6 days ago

    I disagree. I love it for a desktop system . The fact that you can just try a package/app out with nix shell -p pkg and it doesn’t mess with your global environment and don’t have to bother to uninstall/clean up is very nice. Also combined with direnv/shell.nix it’s really nice for setting up different dev environments, no need to globally install your dev tools (of course you can also do this without nixos too). Or the fact I can run a test variant of my setup without being afraid of corruption with nixos-rebuild test and it will never be able to fuck my existing setup…

    Of course, configuring everything in a single structure is a bit of work at the beginning. But it’s really not that bad (though the documentation could really use some work) . You can just reuse your existing dot files by just including them without converting them to the nix language. And the fact I can now update and configure all my systems from one place and one structure is amazing, without having to ssh in every machine and remember how it’s configured.

    Now does that mean it’s the final distro? Probably not. But would I go back to a non-declaritive setup? Most definitely never. Maybe I’ll try out guix sometime, but I personally never liked lisp variants as a language. But who knows what else comes along. But imho declarative is the way to go for any setup, desktop or server.