download: Add berlin.guixsd.org as a content-addressed mirror.
authorLudovic Courtès <ludo@gnu.org>
Wed, 28 Nov 2018 21:23:10 +0000 (22:23 +0100)
committerLudovic Courtès <ludo@gnu.org>
Wed, 28 Nov 2018 21:25:34 +0000 (22:25 +0100)
* guix/download.scm (%content-addressed-mirrors)[guix-publish]: New
procedure.
Use it for "mirror.hydra.gnu.org" and add "berlin.guixsd.org" too.

guix/download.scm

index 7aebec4..a7f51b1 100644 (file)
   '(begin
      (use-modules (guix base32))
 
+     (define (guix-publish host)
+       (lambda (file algo hash)
+         ;; Files served by 'guix publish' are accessible under a single
+         ;; hash algorithm.
+         (string-append "https://" host "/file/"
+                        file "/" (symbol->string algo) "/"
+                        (bytevector->nix-base32-string hash))))
+
      ;; 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
-             ;; hash algorithm.
-             (string-append "https://mirror.hydra.gnu.org/file/"
-                            file "/" (symbol->string algo) "/"
-                            (bytevector->nix-base32-string hash)))
+     (list (guix-publish "mirror.hydra.gnu.org")
+           (guix-publish "berlin.guixsd.org")
            (lambda (file algo hash)
              ;; 'tarballs.nixos.org' supports several algorithms.
              (string-append "https://tarballs.nixos.org/"