As the title implies, should I do it? I love Arch so far, and I can fix most issues that pop out. However, I sometimes wish to start fresh without too much hassle, but I get a feeling NixOS isn’t as mature as Arch.
Have any of you used both, and if so, what do you miss from Arch? What are you grateful for in NixOS?
If you make the switch you won’t be able to tell people you use Arch, so keep that in mind.
true, but you’ll be able to tell people you use nix
Nix is the new Arch
I use Nix BTW…
You can always lie .
That’s not the Arch way.
I know , just kidding.
I think we can all agree that using nix in no way prevents people from talking about it
- 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.
Great bot
Best Bot!
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 am allowed to use Ubuntu or Fedora (I would use the Fedora but they seemed to have fucked it up) at work. I use Arch for personal. This seams like a good way to learn Nix. I am probably never leaving Arch. It’s like a member of my family.
Oh, even better. I’m going to put it on the Ubuntu desktop my employer wants me to use.
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.
Thanks.
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)
I never went back to windows. I had my stuff in a separate partition so when I went back to Fedora or Arch, I had my stuff there
Tbh same, I only ever went back to windows when I absolutely needed something to work immediately for something work related (my manager does not have much patience for my antics with technology when it doesn’t go 100% smoothly)
My PC which is now purely for personal use I just completely wiped and replaced, didn’t even keep the old disk contents because it was full of years worth of windows usage detrius
hahahaha nice. I hope I don’t have to dual boot windows. My laptop is fast enough for VMs
As long as you’ve got patience and you’re not using it for work you should be fine
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.
That’s more or less the same boat I’m in tbh. I’m just starting to play around with using shells for development environments
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
Documentation is crap, but has been getting much better recently. Companies are also starting to use NixOS in production and are making contributions. The low friction ARM development process becomes more relevant every day.
That explains it, documentation is ok but not nearly as good as arch’s, feels like it takes a lot of googling
You have to know exactly what to ask for, which is a big problem when you’re starting out
True but that applies to most tech and it’s a transferable skill
deleted by creator
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).
You can always download appimages and run them or run unpatched binaries with steam-run. Worst case is packaging them yourself, but once you geht the hang of it, that also goes relatively fast.
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.That is good to know, but if you are missing something it seems you need to package it yourself. I’m sure I could do that, just not sure I really want to be doing it.
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
:)@remindme@mstdn.social 3 minutes test
@ForthEorlingas Ok, I will remind you on Monday Jul 10, 2023 at 4:59 PM PDT.
@ForthEorlingas Here is your reminder!
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
Here is an alternative Piped link(s): https://piped.video/watch?v=AGVXJ-TIv3Y
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source, check me out at GitHub.
You can install Nix on arch to try it out without changing your OS.
I think you might like to try it. Maybe to get a taste for it try the nix package manager first. Right now I’m kind of struggling on whether or not NixOS is the one for me or Gnu Guix. Both are pretty awesome.
Your reason of “wish to start fresh” doesn’t sound compelling.
Arch is stable, and works great. Biggest draw for NixOS is packages. I don’t think NixOS has anything to offer in packages that I can’t get in Arch. I’ll not advocate switching to an experimental distro with who knows what other headache, just because I can run Debian or rpm packages. Not for a daily driver.
Do it only if you are bored or something.
I think the biggest draw for Nix is
configuration.nix
and being able to centralize your system configuration. I personally find the AUR to be better in terms of software, especially from GitHub.I agree that people shouldn’t jump blind into Nix without first getting to grips with it though a VM or something, tho. The learning curve is quite steep.
I absolutely jumped straight in lol it’s not too bad as long as you have some time to read the wiki and play around
Default configuration the installer generates is good to get you going
Yeah, if you have the time and the inclination to sit down and learn how Nix operates, then you’ll be fine.
For myself, I realized that I am happier tinkering with it now and again rather than running it as a daily driver OS.
I can’t imagine using anything else at this point tbh, it’s been the smoothest, cleanest experience I’ve ever had on Linux
It’s the one that finally made me abandon windows completely and stop distro hopping
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. The overall structure of Nix is just… It’s not meant for a normal person to daily drive, it’s designed for replicability. You don’t interact with it the way you would a normal OS.
That being said, a lot of people around me love Nix, and do daily drive it. I don’t know how they can stand it, but they do.
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.