If you make the switch you won't be able to tell people you use Arch, so keep that in mind.
post
- NixOS has been around almost as long as Arch (20 vs 21 years)
- you can install the Nix package manager on other distros as an intermediate step to start to give you the feel of things – ie. use Arch to manage your system packages and use Nix to manage your user & GUI packages
- the Nix repository has more packages and more up-to-date packages than AUR
- two recent videos making the rounds on NixOS
- NIX OS: the BEST package manager on the MOST SOLID Linux distribution – The Linux Experiment
- NixOS is Mindblowing – Chris Titus Tech
Here is an alternative Piped link(s): https://piped.video/watch?v=DMQWirkx5EY
https://piped.video/watch?v=fuWPuJZ9NcU
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I'm open-source, check me out at GitHub.
use Arch to manage your system packages and use Nix to manage your user & GUI packages
Brilliant. Thanks.
While I agree it's nice to have access to nixpkgs' packages in other OSs (I've never did this so take the following with a grain of salt), it is my opinion that you're missing out on the biggest features if you don't fully opt for the nix approach.
I wouldn't reduce the nix tools to a package manager. It's a set to interact with the nix language, which primarily is a language to build a system from. You have the biggest advantage when you know that your system only consists of components built from your set of instructions (of course this pulls in a lot of stuff from nixpkgs) because that brings your system closer to reproducibility. It also makes it more consistent.
I've also been distro-hopping, but settled on NixOS. I find it very clean, you know exactly where your (system-level) configuration files are (...and could even manage user-level config files using home-manager). There is a stable branch, which is, well, stable. And even if it wasn't, you can rollback the system at any point, which is trivial (just select a different generation during boot).
One of the biggest advantages for me is universal reproducible working environments. Using Nix+direnv, I can lock all tools (make, gcc, JupyterLab, Python, Julia) that I'm using in a project to specific versions (and upgrade/rollback). I can install programs/libraries in a nix shell and they will be removed on the next garbage collection. Upgrades are extremely safe: I once had a problem with RAM that corrupted a lot of my files during an upgrade. Nix can detect and repair this.
Downside is that Nix doesn't follow FHS, so some programs need a little help, for example by Nix' steam-run.
Do you mind me asking what FHS means in this context?
FHS is the filesystem hierarchy standard than Linux and most Unix/Unix-like systems use. The Wikipedia entry has a good simple explanation. The full standard can be found here. NixOS does not use this standard, as it's not compatible with many features Nix offers.
NixOS is as mature as arch, I'd say, but because of its nature it has issues here and there, but rarely so.
That said, the learning curve for nix/nixos is very very very steep, so good luck learning. It took me a while for me to use it nicely, and even then, I'm nothing more than a beginner. Even so, I'm quite comfortable and pretty much can't use any other linux distro.
I don't get why everyone says it's so bad, you get a decent starter config and to install stuff you just add one line to it
Installed it bare metal on a Friday and was up and running by Monday
By no means a master of it but the config is pretty intuitive generally speaking
For many it's a radical change in paradigm, and I assume many just want to understand it well
Fair enough to be honest when I jumped in I dual booted with windows so always had a safety net (also was experimenting on my laptop before moving to my PC)
That's true for the configuration.nix. I still cannot fully wrap my head around using Nix Flakes for managing my nixos configuration, home manager and overlaying or creating packages. My setup so far works, but I still don't feel like I fully understand it.
If nixos has been around this long how come it's only now starting to pick up in popularity?
I wish I knew. I learned of it and started playing with it last year, with me using it full time since Feb of 2023, with a couple of hopping and then coming back to NixOS
I switched to Nixos after reading a lot about it and eventually switched back to arch because I didn't like how hacky everything felt. On the surface it seems really clean because of the central configuration file and the reproducible nature of the whole thing, but in the rare case something doesn't go as planned, it's hard to know how to do anything about it. Basically everything that would have been a configuration issue for you to fix, is now a bug. Also, I found no easy way to install software that isn't in nixpkgs (which is rare, but happens).
I would recommend you give it a shot. Nix is not conventional and you will find that the ways you’re used to doing things are arch are done differently on NixOS. It’s not a matter of maturity. It’s a matter of use case. I use it on two systems, but not my main one because there are some things that I don’t want to deal with that NixOS imposes. I encourage you to give it a try and see what you like about it.
I haven't used NixOS but it does sound interesting. From what I gather all you need is your configuration.nix file to rebuild the entire system the same as it was before. I think for sure the biggest thing I would miss is the AUR.
Not a Nix user, but IIRC nixpkgs is actually bigger than the AUR by a long shot.
In practice it takes a long time to build a config for absolutely everything in your system at least from my experience of it
There are a few things I've not bothered to put in the config like wallpaper, gtk theme, macros (though I do want to put macros in declaratively because it feels like missing a limb not having them)
System setup wise you can completely wipe the machine and have it back up to where you left it in 20 mins or so
Well nixpkgs and NUR should be big enough, and you can just quite literally use Nix to grab stuff from Github anyways.
I've been distro-hopping for quite a while. I've settled on Arch for the long haul.
!remindme 2 years
The bot lives in our hearts.
You can do it here too! Just tag @remindme@mstdn.social :)
I just made a post about my musing on NixOS so maybe read that? (here) Basically after the main learning curve it's pretty easy to use.
I'm getting the hang of their package manager as well, so if need be I can make my own (Like I would for Arch. The AUR scares me from a security standpoint).
My main advice is to not go against the curve. If the manual says that NixOS does it that way, do it that way, because going against the grain is like going through a cheese grater in this OS.
Unlike Arch where you can do things as you want, in Nix you do things using Nix. You can almost always accomplish what you want, but it's gotta be done the NixOS way. This is actually a benefit rather than a problem once you get used to it, because it starts becoming second nature, and it is extremely powerful.
there is nothing to miss. Watch this : https://www.youtube.com/watch?v=AGVXJ-TIv3Y
I've never been able to daily drive Nix, or for that matter stand using it in a VM. I've always hated every aspect about it. I currently use Arch, but for stability reasons am switching back to (probably, might end up going for something debian based) Fedora on my desktop.
top 50 comments