Live data from Hacker News

Purely Functional Linux with NixOS [video]

begriffs.com

1–10 of 143 posts

Re: Purely Functional Linux with NixOS [video]

#4
Anyone using NixOS as a server in production? We're on FreeBSD now but I think Linux in our stack is inevitable (many servers, like Aerospike, are Linux only). There's always Ubuntu, but this looks lovely. I've had my eye on it for a personal Linux workstation but haven't heard anything about it as a server.

Re: Purely Functional Linux with NixOS [video]

#5
GNU/Linux distribution with revertible package management.

EDIT: I believe that my description is more accurate and if I am wrong I would like to be corrected. But I'd appreciate if you didn't downvote me simply because I use the term "GNU/Linux". I don't downvote you if you use the kernel's name for the entire OS. Thanks.

Re: Purely Functional Linux with NixOS [video]

#6
post #3

> where multiple versions of the same library or application can live in harmony How does NixOS solve the diamond dependency problem?

I think in practice, I have far less trouble with the actual diamond dependency problem - binary A requires libraries B and C, which depend on two different versions of D - than the boring version - system A runs binaries B and C, which depend on two different versions of D. NixOS solves the latter.

Re: Purely Functional Linux with NixOS [video]

#8
post #3

> where multiple versions of the same library or application can live in harmony How does NixOS solve the diamond dependency problem?

If you are asking about a single application depending on conflicting libraries such that it can't be built at all, I don't think NixOS can solve that. What it can do is have multiple conflicting libraries installed simultaneously and individual applications can choose which completely-defined environment they want to run in.

Re: Purely Functional Linux with NixOS [video]

#10
post #3

> where multiple versions of the same library or application can live in harmony How does NixOS solve the diamond dependency problem?

It's largely mitigated by allowing multiple versions.

Imagine A depends on B and C, which both depend on D. The diamond dependency usually pops up when B and C need different versions of D.

But in this case, Nix allows you to simply install another version of B or C such that they can share D.

This doesn't help you if there's no set of A ... D that are jointly consistent, but then you would've been SOL anyway.

Post reply on HN