this post was submitted on 03 Dec 2023
73 points (86.1% liked)

Linux

48157 readers
664 users here now

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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I've been here a week ago already asking if Arch would be fine for a laptop used for university, as stability is a notable factor in that and I'm already using EndeavourOS at home, but now I'm curious about something else too - what about Arch vs NixOS?

I heard that NixOS is pretty solid, as due to the one file for your entire system format you can both copy and restore your system easily whenever, apart from your normal files and application configurations of course.

Are there any major downsides to NixOS compared to Arch apart from the Arch Wiki being a bit less relevant? I'd also lose access to the AUR, but admittedly I don't think I've ever actually needed it for anything, it's just nice to have. Also, since NixOS has both rolling release and static release and you can mix and match if you wanna get packages from unstable or not, I'm not losing Arch's bleeding edge, which is nice.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 5 points 11 months ago

I'm a bit surprised to see that you disagreed with the "NixOS is hard to configure" bit, but then also listed some of the reasons why it can be hard to configure as cons.

By "configure", they probably didn't mean just setting up say, user accounts, which is definitely easy to set up in Nix.

The problems start to arise when you want to use something that isn't in Nixpkgs, or even something that is out of date in Nixpkgs, or using a package from Nixpkgs that then has plugins but said plugin(s) that you want aren't in Nixpkgs.

From my experience with NixOS, I had two software packages break on me that are in Nixpkgs - one of them being critical for work, and I had no clue where to even begin trying to fix the Nixpkg derivation because of how disorganized Nix's docs can be.

Speaking of docs inconsistencies you still have the problem of most users saying you should go with Flakes these days, but it's still technically an experimental feature and so the docs still assume you're not using Flakes...

I was also working on a very simple Rust script, and couldn't get it to properly build due to some problem with the OpenSSL library that one of the dependent crates of my project used.

That was my experience with NixOS after a couple of months. The concept of Nix[OS] is fantastic, but it comes with a heavy cost depending on what you're wanting to do. The community is also great, but even I saw someone who heavily contributes to Nixpkgs mention that a big issue is only a handful of people know how Nixpkgs is properly organized, and that they run behind on PRs / code reviews of Nixpkgs because of it.

I'd still like to try NixOS on say, a server where I could expect it to work better because everything is declarative such as docker containers - but it's going to be a while before I try it on my PC again.