this post was submitted on 28 Jul 2024
809 points (97.8% liked)

linuxmemes

20731 readers
1077 users here now

I use Arch btw


Sister communities:

Community rules

  1. Follow the site-wide rules and code of conduct
  2. Be civil
  3. Post Linux-related content
  4. No recent reposts

Please report posts and comments that break these rules!

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] F04118F@feddit.nl 25 points 1 month ago (2 children)

Don't listen to him! Just start using Nix to manage dependencies and dev environments for your projects but keep your OS the same until you are really good at Nix

[–] leisesprecher@feddit.org 11 points 1 month ago (2 children)

Yeah, you want to sniff nix first before you mainline nixos.

[–] MTK@lemmy.world 7 points 1 month ago

Nah, best way to learn is to fuck your shit up until you fucked it back into a usable state

[–] QuazarOmega@lemy.lol 3 points 1 month ago

Yeah, you want to sniff nix

MMMMH, lice killing cream 🤤🤤
nix bottle

[–] PlexSheep@infosec.pub 2 points 1 month ago (1 children)

How does that work? Let's say I'm on pop os developing a thing, how would I manage deps and dev envs with nix then? In a VM or what?

I'm a Linux nerd, but I totally don't get nix. Tried to install some nix package manager on my Debian based distro and it was completely broken (the nix thing, not my os)

[–] F04118F@feddit.nl 2 points 1 month ago* (last edited 1 month ago)

I um.. didn't get started yet. But a colleague demoed it to my and it's kind of between virtual environments and containers, if you're familiar with Python.

You write a Nix config and specify exactly which versions of which package you want to have. Reproducibility is the main selling point of Nix. Things don't just break overnight because a dependency of a dependency of a dependency got upgraded. You can always go back to exactly what it was like before. Guaranteed. That's pretty cool.

Ok so you got that config, then you build and activate it, and it replaces your shell. You enter the Nix shell. You still have access to all your files and directories, but your Nix config controls exactly which versions of your tools you have. gcc, npm, python, maven, whatever you use.

You can see why this makes people want to build an immutable OS.

The main drawback of Nix is that it has a bit of a learning curve. Hence why I haven't started yet. Maybe it's time though.