Hi,

zimoun <zimon.touto...@gmail.com> skribis:

> Does something like that would make sense?

Yes, that’s the idea.

> diff --git a/guix/download.scm b/guix/download.scm
> index 2e9ecb43fc..2497ea0f75 100644
> --- a/guix/download.scm
> +++ b/guix/download.scm
> @@ -499,6 +499,7 @@ (define %download-fallback-test
>  (define* (url-fetch* url hash-algo hash
>                       #:optional name
>                       #:key (system (%current-system))
> +                     (mirrors %mirrors)
>                       (guile (default-guile))
>                       executable?)
>    "Return a fixed-output derivation that fetches data from URL (a string, or 
> a
> @@ -519,7 +520,8 @@ (define file-name
>        (_
>         (basename url))))
>  
> -  (let ((uri (and (string? url) (string->uri url))))
> +  (let ((uri (and (string? url) (string->uri url)))
> +        (mirror-file (plain-file "mirrors" (object->string mirrors))))

There are subtleties though: we don’t want to create a new <plain-file>
at each call as this would lead to poor performance (lack of
memoization).

> This change would a world rebuild, right?

No, not at all.

Thanks,
Ludo’.

Reply via email to