--- Begin Message ---
Subject: |
guix gc should keep around recent intermediate build ingredients by default |
Date: |
Tue, 3 Dec 2019 11:48:16 +0100 |
[ This is a user/developer friendliness feature request. I’m not arguing
that `guix gc` should do anything differently on a technical level, I’m
just trying to argue that the default experience should be different. ]
Current situation:
I use a forked guix repository as my default channel, which
includes a number of slow-to-build Haskell packages. Now and
then, I run out of disk space. So I call `guix gc`, which invariably
removes the store paths involved in building my current system generation,
so the next call to `guix system reconfigure` takes hours.
Desired situation:
After calling `guix gc`, the paths that were involved in my last system
build are still around, so reconfiguring doesn’t result in everything
being rebuilt.
(If there’s some way I can achieve that now, perhaps by explicitly managing
some roots, or passing specific arguments to `guix gc`, I’d be happy to
know! I’d still argue that we should try to make this the default behaviour,
though.)
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#38469: guix gc should keep around recent intermediate build |
Date: |
Tue, 10 Dec 2019 17:39:07 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hi,
Robert Vollmert <address@hidden> skribis:
>> Have you tried passing the options '--gc-keep-derivations=yes’ and
>> '--gc-keep-outputs=yes' to guix-daemon?
>
> I had not. I added that right now, and first tests seem to indicate
> that this helps. Thanks!
Yes, I think these options are exactly what you want.
> Would it be a bad idea to make this the default?
I think the current defaults are more appropriate; after all, they
really allow “garbage” to be collected.
> Alternatively, how about some kind of developer config fragment that
> would modify a system configuration with settings that are a good
> idea for Guix development, if not general use? That might also include
> things like setting the $%!^@!*^% guile backtrace columns variable
> for guix-daemon.
I think what you’d want is to set COLUMNS within derivation, not “for
the daemon”.
So I don’t know, I’m sympathetic to the idea of developer settings in
Guix System, but I’m not sure what it could bring beyond these two
options.
In the meantime, I propose to close this bug and to discuss this
potential new feature separately.
Thanks,
Ludo’.
--- End Message ---