[Nix-dev] garbage collecting source (was: btrfs-progs (was:contributing to nixpkgs/nixos))

Michael Raskin 7c6f434c at mail.ru
Tue Dec 20 12:48:06 CET 2011


>> Ah, that's what I missed.
>> 
>> nix-store -qR $(nix-instantiate /etc/nixos/nixos -A system) | xargs nix-store -r
>
>I added it to the FAQ:
>https://nixos.org/wiki/FAQ#How_to_keep_build-time_dependencies_around_.2F_be_able_to_rebuild_while_being_offline
>
>In the manpage of nix-store I found '--include-outputs' and am not fully
>sure about its effect. By diffing I found that it mostly lists tarballs
>in the store and I assume I do not need to realise them explicitly as
>they are realised by realising the closure's paths and kept by having
>gc-keep-outputs - correct? Nomenclature violated?

Realising derivations means building all the output paths.

BTW, I guess we will have problems with this strategy when we finally
have multiple outputs - realising headers after the library set has been
substituted may fail because some outputs already exist.

>> I just use nix-reduce build and so I sometimes forget what Nix commands
>> are actually used.
>
>What is nix-reduce / how do I get it and more information about it? I
>found some references to it, but it's not in my path and grep/find on
>/etc/nixos also did not reveal it.

It is script I added into Nix repo that is not installed because its use
case is unclear to some people.

It tries to do something about all references of a given package in a 
specified way. It is in /etc/nixos/nix/scripts/ (at least its template);
look up my configuration.nix in configurations/ repo to see how to 
install this script.

Among other things, it can build only fixed-output derivations (as we 
know, only such derivations can access network succesfully).





More information about the nix-dev mailing list