Hello Ludovic,

thanks for the quick answer! :)

Ludovic Courtès <[email protected]> writes:

> Tomas Volf <[email protected]> skribis:
>
>> However when a -L argument is introduced, the shell creation becomes
>> much slower:
>
> It’s a feature: use of ‘-L’ or ‘GUIX_PACKAGE_PATH’ disables caching.
>
> This is because in that case what the manifest and command line refer to
> is “uncontrolled”.

Is this feature documented somewhere?  Manual page `Invoking guix shell'
either does not mention this or I cannot find it (both is possible ^_^).

And follow-up question, is there a way to work around this feature,
possibly via a command-line option?  I have to admit that having 2s
penalty on every guix shell invocation is somewhat frustrating.

(Since I am using `guix shell' with -CN flags, I cannot trivially work
around this via a profile.)

> For the same reason, ‘./pre-inst-env guix shell x y z’ in a checkout
> does not benefit from caching.
>
> See uses of ‘cache-is-authoritative?’ in guix/scripts/shell.scm.

Thank you for the pointer, I will try to dig around a bit.  This seems
to talk about package cache, which is used for the specifications
resolving, correct?  Does it have other uses?  Because even when I
rewrite the manifest to uses packages->manifest, the shell command is
still not caching.  Is the package cache used even for
packages->manifest?  I lack knowledge in this area.

Have a nice evening,
Tomas

-- 
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.



Reply via email to