Simon, zimoun 写道: > I am often annoyed because when I run "guix upgrade", Guix > downloads again the heavy texlive-20190410-texmf.tar.xz if I > have > forgotten to protect it from "guix gc" using the trick, e.g., > > https://lists.gnu.org/archive/html/help-guix/2020-02/msg00110.html > > What could be a more general solution independent of the trick? You might be happy with ‘--gc-keep-outputs’. From (guix)Invoking guix-daemon: ‘--gc-keep-outputs[=yes|no]’ Tell whether the garbage collector (GC) must keep outputs of live derivations. When set to ‘yes’, the GC will keep the outputs of any live derivation available in the store—the ‘.drv’ files. The default is ‘no’, meaning that derivation outputs are kept only if they are reachable from a GC root. *Note Invoking guix gc::, for more on GC roots. ‘--gc-keep-derivations[=yes|no]’ Tell whether the garbage collector (GC) must keep derivations corresponding to live outputs. When set to ‘yes’, as is the case by default, the GC keeps derivations—i.e., ‘.drv’ files—as long as at least one of their outputs is live. This allows users to keep track of the origins of items in their store. Setting it to ‘no’ saves a bit of disk space. In this way, setting ‘--gc-keep-derivations’ to ‘yes’ causes liveness to flow from outputs to derivations, and setting ‘--gc-keep-outputs’ to ‘yes’ causes liveness to flow from ▶ derivations to outputs. When both are set to ‘yes’, the effect is ▶ to keep all the build prerequisites (the sources, compiler, ▶ libraries, and other build-time tools) of live objects in the store, regardless of whether these prerequisites are reachable from a GC root. This is convenient for developers since it saves rebuilds or downloads. Kind regards, T G-R