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

Programmer Humor

19302 readers
1000 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
[–] kshade@lemmy.world 71 points 3 months ago (8 children)

For real though, containerization isn't the only way to separate applications from each other but totally fine, it's the "It works on my machine, so here's my machine" mentality that doesn't fill me with confidence. I've seen too much barely-working jank in containers that probably only get updated when a new version of the containerized application itself is released.

[–] pimeys@lemmy.nauk.io 36 points 3 months ago (5 children)

Nix user arrives to the room.

[–] qaz@lemmy.world 5 points 3 months ago (1 children)

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

[–] pimeys@lemmy.nauk.io 9 points 3 months ago* (last edited 3 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.

[–] qaz@lemmy.world 2 points 3 months ago

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

load more comments (3 replies)
load more comments (5 replies)