summaryrefslogtreecommitdiff
path: root/guix/download.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-11-28 22:17:39 +0100
committerLudovic Courtès <ludo@gnu.org>2018-11-28 22:25:34 +0100
commita52ae1b6620fcef28e668047a51a6b2a9fb89e35 (patch)
treef099267aa22d59d2720a19275175bb9a94855402 /guix/download.scm
parent7565d40e1e583b35148088bcf79760b9f95f91d9 (diff)
downloadgnu-guix-a52ae1b6620fcef28e668047a51a6b2a9fb89e35.tar
gnu-guix-a52ae1b6620fcef28e668047a51a6b2a9fb89e35.tar.gz
download: Make (guix base16) a soft dependency.
Fixes <https://bugs.gnu.org/33542>. Reported by Mark H Weaver <mhw@netris.org>. * guix/download.scm (%content-addressed-mirrors): Autoload (guix base16).
Diffstat (limited to 'guix/download.scm')
-rw-r--r--guix/download.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/guix/download.scm b/guix/download.scm
index 0f92e12c08..7aebec44ac 100644
--- a/guix/download.scm
+++ b/guix/download.scm
@@ -373,7 +373,13 @@
;; procedure that takes a file name, an algorithm (symbol) and a hash
;; (bytevector), and returns a URL or #f.
'(begin
- (use-modules (guix base32) (guix base16))
+ (use-modules (guix base32))
+
+ ;; XXX: (guix base16) appeared in March 2017 (and thus 0.13.0) so old
+ ;; installations of the daemon might lack it. Thus, load it lazily to
+ ;; avoid gratuitous errors. See <https://bugs.gnu.org/33542>.
+ (module-autoload! (current-module)
+ '(guix base16) '(bytevector->base16-string))
(list (lambda (file algo hash)
;; Files served by 'guix publish' are accessible under a single