Introduction to Nix & NixOS (nixos-and-flakes.thiscute.world)
from learnbyexample@programming.dev to linux@lemmy.ml on 21 Aug 03:14
https://programming.dev/post/36052282

#linux

threaded - newest

just_another_person@lemmy.world on 21 Aug 03:22 next collapse

This…is not what this project represents or is meant for. Christ.

I can’t count the number of times people gloss over the actual useful tools they are given in the immutable world, and try and distill it down to being about desktop bullshit.

NIX IS FOR REPRODUCIBLE BUILDS. That’s fucking it, seriously. It’s literally on their website.

Stop trying to put a hat on a hat for some random crap you thought was a good idea.

IT’S A HORRIFIC EXPERIENCE FOR NEW USERS TRYING TO RUN A DESKTOP. Steer clear.

Edit: this is some dumb shit

Although we cannot achieve complete system reproducibility, the /home directory, being an important user directory, contains many necessary configuration files

That’s literally all it’s good for… reproducible builds.

Fuck off whoever posted this.

Edit2: oh wait… It’s the boot account that is polluting everything in these threads

balsoft@lemmy.ml on 21 Aug 07:00 next collapse

NIX IS FOR REPRODUCIBLE BUILDS. That’s fucking it, seriously. It’s literally on their website.

This post is specifically about NixOS and friends, though.

IT’S A HORRIFIC EXPERIENCE FOR NEW USERS TRYING TO RUN A DESKTOP. Steer clear.

There are thousands of users who run NixOS on their desktop, and thousands more users of home-manager (or nix-darwin) on macOS. If you are ready to put in the time and learn how it works, it’s wonderful - your entire distribution, the thing through which you interact with computers, becomes just another project in your ~/projects, rather than something you have to manually configure. You can’t forget “how to configure $X”, because it is all recorded in one place and done automatically when you get a new machine or update or whatever. It’s GNU Stow on steroids, for your entire system.

There are a lot of downsides for sure as well (mostly the learning curve, and having to fix the buggy bullshit in some software which only runs well in FHS), but if you are a software developer (or adjacent) and like Linux, NixOS is still awesome.

IEatDaFeesh@lemmy.world on 21 Aug 07:47 next collapse

IT’S A HORRIFIC EXPERIENCE FOR NEW USERS TRYING TO RUN A DESKTOP. Steer clear.

Same can be said for Arch but people still install it as their first distro.

illusionist@lemmy.zip on 21 Aug 07:51 collapse

Because there are people recommending it which is nuts

IEatDaFeesh@lemmy.world on 21 Aug 07:57 next collapse

Yeah but people are still capable of using Arch and imo NixOS is much easier than Arch. Once you figure out how to do something on NixOS you don’t have to go through all the troubleshooting/learning over and over. With Arch it’s an active investment of your time all the time.

So if people are capable of using Arch, then they can handle NixOS. NixOS is hard but it’s not world ending hard.

atzanteol@sh.itjust.works on 21 Aug 12:37 collapse

Once you figure out how to do something on NixOS you don’t have to go through all the troubleshooting/learning over and over.

That’s how learning works.

Eyedust@lemmy.dbzer0.com on 21 Aug 10:10 collapse

You should try it.iusearchbtw

somerandomperson@lemmy.dbzer0.com on 21 Aug 13:40 next collapse

Same

bobo@lemmy.ml on 22 Aug 08:54 collapse

Nixos > arch without a doubt

Eyedust@lemmy.dbzer0.com on 22 Aug 09:53 next collapse

I’m more in the group of Nix != Arch. They’re just different. I love them both, tbh.

I would like to add that I have never recommended them to beginners. I usually like to recommend Pop!_OS.

I really have been wanting to try Bazzite lately, too.

bobo@lemmy.ml on 22 Aug 11:44 collapse

There’s not a lot of competition in the bleeding edge rolling distro space, so I think it’s fair to compare them. Especially since you’re not forced to make it reproducible.

I wouldn’t suggest either to beginners either though.

Eyedust@lemmy.dbzer0.com on 22 Aug 12:52 collapse

Yeah, it does make sense that you can compare them in that sense, but as far as actual system setup goes, I don’t think they’re comparable. Don’t get me wrong, I love NixOS. When I was learning nixlang and setting up everything to be modular and reproducible, I was having a blast.

However, I also had a blast learning Arch and figuring out how my system works the way it does. I’ll be honest, though, NixOS helped me learn how Home was separate from Root. That alone really helped me learn how the general Linux system file hierarchy worked.

But there are also things I would have never learned about Linux if I never messed with Arch, such as essential system symlinks, how they work, and how to use chroot in the live environment to fix broken ones (thanks to a botched Arch update, lol).

If you like it, learn it-use it. All this comparing and inter-distro warring seems pointless. There’s not a distro I’ve used that I haven’t had things I really liked and really hated.

bobo@lemmy.ml on 22 Aug 14:14 collapse

Great points about learning, but I’m just explaining what my original comment was about: daily experience of using a distro and reliability.

For me arch installation was the most educational Linux experience since after 10+ years of using Linux, that was the first time I clearly understood each part of the system. But tbh that knowledge has so far been mostly academic - knowledge for the sake of knowledge.

All this comparing and inter-distro warring seems pointless.

It’s got a point when every thread has people recommending arch, even when it’s not relevant in any way. We’re talking about arch in a thread about a nixos guide after all.

dreadbeef@lemmy.dbzer0.com on 22 Aug 10:23 collapse

I feel like I learned more about linux and my computer by installing arch (before we had the neat installer we have now). So for me, arch is a better learning tool. I do really like nix (havent used it myself, but Im a functional programmer and declarative configuration is my jam) but it’s definitely a better way of managing an installation than arch I imagine. My next distro if arch ever fails me will be an immutable distro, Nix is definitely top 3 for me that I reach for

bobo@lemmy.ml on 22 Aug 11:40 collapse

I’m talking about day to day usage. Arch installation is a good learning experience, but running it for me was more trouble than it’s worth.

The worst issue I’ve had so far with nix is an update failing before it’s applied because of some package. Meanwhile arch would regularly update, and then fail to boot or break something.

I gave up on arch after a few years when I had to literally weigh whether -S or -Syu would be more likely to mess up my system while I was working abroad.

bobo@lemmy.ml on 22 Aug 08:53 collapse

This…is not what this project represents or is meant for. Christ.

What do you think nixos is for?

That’s literally all it’s good for… reproducible builds.

Tell me you didn’t run nixos without telling me you didn’t run nixos

just_another_person@lemmy.world on 22 Aug 08:58 collapse

I use it for reproducible builds in packaging and CI/CD pipelines because…that’s what it’s made for.

bobo@lemmy.ml on 22 Aug 11:32 collapse

Got a lot of use for DE and other gui related modules in that usecase? Are you spinning up KDE to build a container? Did you write to the devs that they remove the installation wizard for desktop use? Did they accidentally add all of the non-reproducible imperative commands to nix?

Get over yourself. It’s a great distro for desktop use, and I seriously don’t get why you’re foaming at the mouth because people are using it differently than you…

just_another_person@lemmy.world on 22 Aug 13:24 collapse

Lol wut?? No.

No there is no desktop in a packaging, CI, or CD pipelines 🤣🤣🤣

What on earth are you talking about.

bobo@lemmy.ml on 22 Aug 13:56 collapse

But there is in nixos you donkey…

just_another_person@lemmy.world on 22 Aug 15:09 collapse

No…you CAN install one if you’d like, you waste of space. Just like any other Linux OS, all packages aside from the kernel are optional. Hell, Nix didn’t have anything but the templating setup when I started it using it forever ago. They didn’t have any packages available for any sort of GUI at all.

Get outta here with your uninformed idiocy.

Burghler@sh.itjust.works on 21 Aug 05:33 next collapse

It’s old, but it checks out.

Used this when first getting setup with flakes.

echedeylr@lemmy.blahaj.zone on 21 Aug 10:54 next collapse

This person is really privileged mew

samc@feddit.uk on 22 Aug 22:24 collapse

Not sure I like their definition of declarative. I’d instead say that a config is “declarative” if the result of applying that configuration is independent of the current state of the system.

[deleted] on 22 Aug 23:49 collapse

.