I apologize for completely unrelated comment in the thread, but could you elaborate on what you mean? This sounds interesting.
Most likely, he’s using something like https://github.com/nmattia/niv or flakes. And selects different packages from different points in time.
No, nothing but mainline Nix/Nixpkgs (it is a pretty old construction, too).
I have some system packages, and then I have a ton of buildEnv
s written, and then also some linkFarm
s.
These buildEnv
s are in my $PATH
. And I have a script that is similar to nix-shell
but older and also allows manipulating $LD_LIBRARY_PATH
in addition to $PATH
and $NIX_CFLAGS
etc., so some of the linkFarm
s just serve as its cache/index.
Then typically I rebuid all of these from master
, sometimes something doesn’t build (like ffmpegFull
right now) and then the corresponding shard stays behind for some time, and if something breaks too badly I might checkout an older revision and rebuild one shard.
Sometimes I rebuild just one shard I care about, like in the case I try to find out which TeXLive packages I need to add to compile a file my coauthor has edited.
(The shard-building part is online on GitHub)