Solene'% : Mirroring sources used in nixpkgs (software preservation)

5 Likes

I’ve been holding this text for a while, I needed find-tarballs.nix: Include patches by rapenne-s · Pull Request #188626 · NixOS/nixpkgs · GitHub to be merged, thanks to @AndersonTorres it’s now done :pray:t3:

1 Like

Very nice, this has been one of my primary concerns with the reproducibility of nix. The internet sometimes does just disappear, and I’ve in fact been bitten more than a few times by this using upstream nixpkgs. Not a huge deal for my personal use, but I’d loathe to build a commercial system with nix without solving this.

It’d be really cool if this was integrated a bit better, but I suppose injecting sources directly into the nix store is good enough. The company I work for has done some work on a generic source code mirroring tool, which might be interesting to interface with too: CodethinkLabs / lorry / lorry · GitLab

3 Likes

It was practical for me to reuse the Nix fetcher because of the hashes, they are in various format using different algorithm, and I just delegated all the complexity to nix :smiley:

1 Like

Own <3

After the thing about fetchpatch, I believe this is more of a data hoarding than a software preservation. After all, fetchpatch destructively modifies its input in order to generate the checkhash.

Indeed, my point is first to be able to use nixpkgs while being entirely offline, this would be nice if we could keep the original patch files though, but that would require adding a checksum for all of them :exploding_head: