Subject: [bug#61324] [PATCH] download: Add bordeaux.guix.gnu.org as a content addressed mirror.

From: Christopher Baines <[email-masked]>
Date: Mon, 6 Feb 2023 16:55:05 +0100

bordeaux.guix.gnu.org now provides access to some files by hash. This is done
through the nar-herder finding a nar produced by a fixed output derivation for
the requested content, and then providing the content stored inside that nar.

I've put this new entry at the start of the list, as I think it's more likely
to have content than the others. Because bordeaux.guix.gnu.org stores nars
indefinitely, my suspicion is that it's going to be able to fulfil more
requests than ci.guix.gnu.org, which relies on the file requested being in the
store (so the now frequent garbage collection is going to limit the files
available).

* guix/download.scm (%content-addressed-mirrors): Add bordeaux.guix.gnu.org.
---
 guix/download.scm | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/guix/download.scm b/guix/download.scm
index fff54d7a17..561a893eee 100644
--- a/guix/download.scm
+++ b/guix/download.scm
@@ -387,7 +387,11 @@ (define (guix-publish host)
                         file "/" (symbol->string algo) "/"
                         (bytevector->nix-base32-string hash))))
 
-     (list (guix-publish "ci.guix.gnu.org")
+     (list (guix-publish
+            ;; bordeaux.guix.gnu.org uses the nar-herder rather than guix
+            ;; publish, but it supports the same style of requests
+            "bordeaux.guix.gnu.org")
+           (guix-publish "ci.guix.gnu.org")
            (lambda (file algo hash)
              ;; 'tarballs.nixos.org' supports several algorithms.
              (string-append "https://tarballs.nixos.org/"
-- 
2.38.1