this post was submitted on 28 Jun 2024
779 points (94.7% liked)

Programmer Humor

19512 readers
652 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 37 points 4 months ago (2 children)

Nix user arrives to the room.

[–] [email protected] 10 points 4 months ago (1 children)
[–] [email protected] 16 points 4 months ago

Nix can build you a bit-to-bit exact environment for your app. It is a superior environment, but is hard to use in the beginning and users can feel snobby sometimes. It is awesome, but YMMV.

[–] [email protected] 5 points 4 months ago (1 children)

How do you separate Nix programs from the rest of the system?

[–] [email protected] 9 points 4 months ago* (last edited 4 months ago) (1 children)

It creates a set of symlinks so every program sees exactly the dependencies it needs.

https://nixos.org/guides/nix-pills/09-automatic-runtime-dependencies#automatic-runtime-dependencies

You can also create a container:

https://nixos.wiki/wiki/NixOS_Containers

Or you can create reproducible docker containers with nix:

https://dev.to/anurag_vishwakarma/a-better-way-to-build-reproducible-docker-images-with-nix-2k59

The secret sauce with nix is reproducibility. If it builds once, it will continue building exactly like that forever. Bit by bit.

[–] [email protected] 2 points 4 months ago

That's very interesting, I was aware of how NixOS separated dependency versions but I didn't know it natively supported containers.