Hi everyone!
I saw that NixOS is getting popularity recently. I really have no idea why and how this OS works. Can you guys help me understanding all of this ?
Thanks !
everyone
Now that’s what I’d call a stretch…
Indeed, why would I switch, already have been running NixOS for 10+ years.
I’ll edit. That was clearly a stretch
Here’s the straightforward version of why I use it:
-
The entire state of your operating system is defined in a config file, and changes are made by changing the config file. This makes it super easy to reproduce your exact system many times and to know where all the many different configuration elements that describe your system are located.
-
Updates are applied atomically, so you don’t have to worry about interrupting the update process and if it fails, the previous state of your system is still bootable. By default every time you change something, you get another option in the boot menu to roll back to.
-
Making container-like sub systems is super easy when you’re familiar with nix, so you can have as many different enclaves as you like for different software versions, development environments, desktop setups, whatever without taking a performance hit. Old versions of stuff are very accessible without breaking your new stuff.
-
The package manager has a lot of software and accessing nonfree stuff is straightforward. Guix looks rad, but nix ended up being the more practical compromise for my usecase. I didn’t want to have to package a heap of software the moment I made the switch.
-
I actually installed it after reading this and I have to say it’s pretty fucking sweet.
Compiling your own stuff is a bit unintuitive but overall I love it
I used NixOS for a couple of years. My experience is like this:
- It is a rolling release (mostly)
- You write a declarative configuration for your system, e.g., my config will say I want Neovim with certain plugins, and I can also include my Neovim configuration
- It is stable, and when it breaks it is easy to go back
- Packages are mostly bleeding edge
Note that there’s both the rolling unstable channel and a bi-annual stable release channel.
Important to note that NixOS has both a rolling release and point release version.
deleted by creator
Glancing over the website, I thought it’s an immutable OS, like Fedora Silverblue. I could imagine that it might be cool to use with Ansible and stuff. But for an average user? I can’t really see the advantages in respect to the work you have to put in.
It is an immutable distro, altough it isn’t image-based like Fedora’s rpm-ostree.
NixOS basically replaces Ansible because the Nix package manager achieves the same goals already (configuration, deployment, …).
But I agree, the work necessary to put into this non-standard distro makes it hard to recommend for a casual user.
All I year about from the linux community is NixOS and btrfs, neither of which I have any interest in. It almost feels like someone with an agenda is promoting these two with how prevelant they are.
I like using btrfs with Arch because of the snapshots. If an update breaks something I can just boot into a snapshot from grub keep using my PC and solve the problem later. It’s very useful… yes… very… you should try it… come… try btrfs… it’s warm and cozy… INSTALL IT!
I have tried btrfs in the past and when it goes wrong you are utterly shafted. You can’t even mount it as a read only file system, it will just lock you out entirely. And the support isn’t great, I ended up finding something that had a disclaimer along the lines of “only run this if you really know what you’re doing”, but obviously I didn’t as the documentation didn’t tell me enough to know. So the only people who could possibly know are the developers of the file system themselves. Anyway, I was 2 days in to trying to recover my data by this point so I gave it a go, nothing to lose - it refused to do anything. Great.
So in summary I’m not going to try it again.
can confirm, I’ve recently had my btrfs partition on NixOS go permanently read-only because it ran out of metadata space (which you can’t extend without write access, even though btrfs does reserve 0.5GB of metadata space) so I’ve switched to bcachefs
I don’t know NixOS. My Linux machine runs Pop_OS and Manjaro.
What are the pros and cons of NixOS ?