guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: updating list of substitutes


From: Ludovic Courtès
Subject: Re: updating list of substitutes
Date: Thu, 23 Apr 2015 11:52:10 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Andreas Enge <address@hidden> skribis:

> On Wed, Apr 22, 2015 at 01:46:35PM +0200, Pjotr Prins wrote:
>> 5. We reload the list of substitutes after a fixed time
>> Let me rephrase. Can we have a more lazy approach towards fetching
>> substitutes? Rather than a fixed TTL we could fetch the latest list on
>> the first failed substitute.
>
> A while ago, the list of substitutes was downloaded even when removing
> packages from a profile, which Ludovic fixed if I remember correctly.

Not really, see below.

> But even when installing, one may not need to download anything if the
> package is already in the store. So I think the following would be good:
>   Determine the list of packages to be installed in a profile with "guix
>   package" or to be built with "guix build". If they are all in the store,
>   fine, otherwise, check the age of the list of substitutes and if it is
>   to old, download it again.

This is correct, except it’s not just about packages explicitly
specified by the user: anytime the daemon is asked to build something,
it calls out to ‘guix substitute’, which tells it whether a substitute
is available for that thing.

‘guix substitute’ has a cache of what’s available, which it refreshes
when it gets too old (hence the “updating substitute list” message.)

‘guix package -r’ actually asks the daemon to build/download (if needed)
the Guile package that is used to create the new profile.  If that Guile
package is missing, then it is built/downloaded.

HTH,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]