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 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 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.
- 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!
Oh, even better. I'm going to put it on the Ubuntu desktop my employer wants me to use.
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.
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.
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.
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 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.
Well nixpkgs and NUR should be big enough, and you can just quite literally use Nix to grab stuff from Github anyways.
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
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
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
If nixos has been around this long how come it's only now starting to pick up in popularity?
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
Linux
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.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0