NixOS a year later
NixOS a year later
➡️ Last year I already did a series of posts about my switch to NixOS as a home system. Almost a year has passed since I moved my laptops to this wonderful OS, and I'd like to share my impressions.
To say I'm satisfied is an understatement.
After Debian-based distros — and, frankly, not just those — this one meets my requirements 100%. All my settings live in a git repo, for each of my machines. The configuration differs somewhat, but not much; a shared config is used, but, for example, I don't need photoprism on the smaller machine, so an exception is made there. Adding packages is a new line in the config and running a single command, which creates a new snapshot of the whole system, and I can roll back if needed. But that has never once been necessary.
🔖 By the way, the package base is so large that I found 99.9% of packages in it. And, perhaps, literally only a few applications had to be downloaded separately. Incidentally, due to the system's peculiarities (it has its own file hierarchy), you can't just take and run something like an appimage. But as usual, where there's a problem, there's a solution: appimage-run
🔖 Moreover, some of my packages sit on the stable branch and some on unstable, so as to get the freshest software, such as k9s, terraform, kubectl, cursor, firefox, telegram, and so on.
This is very convenient and so far works stably. Also, in my projects I use a shell.nix file with a configuration of the dependencies needed for a given application, and at the required versions too.
The closest analog in the python world is virtualenv, although that's a rather rough comparison.
In other respects it's a regular Linux, but it's precisely the nix package manager and configuring the system through code that make it a masterpiece.
I definitely recommend it! 🙂