Hi,

Edouard Klein <e...@rdklein.fr> skribis:

> - Why is this step not substitutable ? The inputs are known, a hash can
> be derived, a substitute server could be queried for an output of that
> hash ? What am I missing ? Does the guix derivation not end up in the
> store ? What makes it so special that it can't be served by a substitute
> server ?

It’s not substitutable because it’s not a derivation.  It’s not a
derivation because it needs to access the store to “compute the Guix
derivation”.

The latter could be addressed with “nested” or “recursive” derivations
as Nix calls them, but it’s quite a beast.

Anther option would be to have a built-in derivation builder that would
do that process on behalf of users.  That would turn the process into a
derivation, which is thus cachable, substitutable, etc.

> - Is there a way (even a very dirty one, like hand copying stuff accross
>   /var/guix/profiles/per-user/*/current-guix) I can stop paying this 4
>   minutes per user price ? As I said, this is downtime on my server, as
>   I need to stop all other services to let guix pull finish.

I don’t know of any quick hack for that.

Thanks,
Ludo’.

Reply via email to