5 ms·
nixpkgs isn't rigorous about reproducible builds. Hadoop is actually a great example of this. They do not build it from source, a prerequisite for calling a bui
by davexunit 8y ago
nixpkgs isn't rigorous about reproducible builds. Hadoop is actually a great example of this. They do not build it from source, a prerequisite for calling a build reproducible. Instead, they download the binaries that the Apache project has already built and run patchelf on them to make them work.
https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/networking/cluster/hadoop/default.nix https://github.com/NixOS/nixpkgs/blob/master/pkgs/applicatio...
- deleted 8y ago[deleted]
- ixxie 8y agoThat is true, but in my experience in small scale personal desktop and cloud computing, NixOS is in practice reasonably reproducible on the system level. For me in terms of interface, the strength of the Nix ecosystem is declarative system, ops and service configs in the same language used for package and build specification. The technical strength is striving towards reproducibe builds by hashing the dependency tree to build an immutable store. Yes sometimes this means getting binaries but you can always pin the package version or even have multiple versions in tandem. The practical upshot of this immutability is system level rollbacks, which are generally reliable although there are ways to break it. Yes there is garbage collection. Nixpkgs has is quite an achievement, and yes it has its warts but we are working hard to make it better. If we manage to shape up the data science I will try it out at work too. Im very curious how it might scale.