logoalt Hacker News

corndogeyesterday at 9:44 PM2 repliesview on HN

Nix solved it. Languages could choose to adopt Nix as their packaging system.


Replies

tadfisheryesterday at 10:37 PM

It did and didn't. Nix tools for building language-specific packages almost always wrap the language build tool/package manager. This can be easy or hard, depending on how onerous the build tool is for vendoring libraries.

What Nix and build tools need to agree on is a specification or protocol for "building a software dependency tree". Like, I should be able to say 'builder = cargo' in a Nix derivation and Cargo should be able to pick up everything it needs from the build environment. Alas, there is simply far too much tied up in nixpkg's stdenv for this to be viable, so we have magic stdenv builder behavior via hooks when a build tool is included in nativeBuildInputs.

show 2 replies
gitaariktoday at 3:57 AM

In theory, but not in practice