this post was submitted on 12 Nov 2023
86 points (96.7% liked)
Linux
48338 readers
800 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
- 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
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I tried NixOS and was quite frustrating when I needed community help / documentation. I guess that's the aspect of "the new arch", the community will go "not my problem fix it yourself". I've seen some good tutorials on YT popped up since then, so I'll try it again once I get college vacation. It's hard for me as a non programmer/psychology student. My field doesn't overlap with programming not by a little, lmao. I think you need to recommend nix and have the way people need to do things. Like, a nix flake? You can get it to work 100 ways, and nix uses its own language and way of declaring things. That's one thing that made me go "I just need to have a working system and I have a Arch install script done". I like to fiddle around with things, but when you are stuck with something and there isn't a clear path to do it, it gets frustrating. The 100 ways to 1 thing makes copycat difficult, because you have to copy the same person, which will not have all the needs for you, or find people that did their config the same way (which is really hard). Like, overlays, packaging programs, making modules, even Arch had a "this is how you get things done" wiki. I really think Nix and NixOS is really good and I will try it out again in some months.
Yeah, I don’t have good answers for you… I honestly don’t know what the best way to get people into it is. The resources really are not great.
FWIW I think when it does end up clicking everything is a LOT less complicated than it seems at first. Nix is sort of all about building up these attribute sets and then once that really sinks in everything starts to make a lot more sense and you start to realize that there aren’t that many moving parts and there isn’t much magic going on… but getting there is tricky. A lot of people recommend the nix pills, and honestly I think it’s the best way to understand nix itself. If you do earnestly read through them I think there is a good chance you will come out enlightened… they just start so slow and so boringly that it’s tempting to skip ahead and then you’re doomed. They also have a bit of a bad habit of introducing simple examples that don’t work at first which can be confusing, and eventually some of the later stuff seems like “ugh, I thought we already solved this” but it’s building up nicer abstractions. The nix pills give a pretty good overview of best practices in that sense, I think… so maybe it’s the source of truth you’re looking for (or part of it anyway). I think the nix pills are a bit more “how the sausage is made” than is necessary to use nix, but it’s probably the best way to understand what all of these weird mkDerivation functions you keep seeing are actually doing, and having an understanding of the internals of nix makes it a lot easier to understand what’s going on.