-4
6 Reasons Why You Should Consider Using NixOS Linux
(itsfoss.com)
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
These comments really speak to me as someone who is comfortable in Arch but mildly interested in NixOS. The concept seems great, and it seems to work very smoothly when it works. Yet there are always these war stories where people have had to fight the system, to debug some misbehaving hack that is nonetheless required to smash a particular package into the NixOS mould. It is discouraging. The idea I get is that NixOS involves more time doing OS curation chores than does Arch, which already hits the limit of my willingness.
Flakes are another issue. The pre-flakes way seems to be de-facto deprecated, yet the new, flaky way is experimental. I don’t want to waste time learning a doomed paradigm, and I don’t want to depend on anything experimental.
For me, configuration files in git plus btrfs snapshots is just so straightforward. I want to see NixOS as a better way, but I can’t.
Pretty much, unfortunately. It sucks, because in order for Nix to accomplish its vision, things have to be like this - I don't really see a way around it.
I am amazed by what the Nix[OS] community has accomplished and give high respect to them for it, but I can't do it. If the documentation (and procedures, eg Flakes) were a bit more structured I'd probably be a bit more willing to put more time into trying to figure it out but... that's just not the case currently.
I have similar feelings about immutable distros, it is a very intriguing concept but every single time I've tried one out, I run into some issue that requires hacks to get around it. If I did end up using one long-term, it'd probably be something from Universal Blue because it seems fairly easy to just modify the image. However, it's still a massive paradigm shift of getting used to making changes at build-time (of the image), rather than making changes to your system at runtime.
For now, I just do pretty much the same thing you do, important dotfiles go into git, and btrfs snapshots for "Uh oh, something broke and I need things to work right now" moments (which is thankfully quite rare).