~ruther/guix-local

ac19e038b457d0585812091200005befd9b29259 — Christopher Baines 1 year, 11 months ago d439dea
Switch order of the default substitute servers.

The aim here is to improve the user experience.  There's anecdotal evidence
that the network performance for bordeaux is better compared to ci at least
for some users, and I don't know of any issues with rate limiting or access
restriction for bordeaux compared to ci.  It also has IPv6 support.

Additionally, bordeaux generally had more substitutes than ci, particularly
for aarch64-linux and armhf-linux.  This change will offer a very slight
speedup for those substitutes that only bordeaux has.

Bordeaux has been a default substitute server for nearly 3 years now and I
think this change is overdue.  I'm also hopeful that we'll be able to build on
the testing regarding mirrors for bordeaux, and that'll allow potentially
improving the hosting setup (through providing more redundancy) and further
improving substitute fetching for users who currently have issues with
substitute access.

* config-daemon.ac: Switch substitute urls order.
* doc/guix.texi: Ditto.
* etc/guix-install.sh: Ditto.
* gnu/installer/newt/network.scm (wait-service-online): Ditto.
* guix/store.scm (%default-substitute-urls): Ditto.

Change-Id: I4f6d93ae1fc8b03d80b47b18b5749a51f1fde17b
Signed-off-by: Christopher Baines <mail@cbaines.net>
M config-daemon.ac => config-daemon.ac +1 -1
@@ 106,7 106,7 @@ if test "x$guix_build_daemon" = "xyes"; then

  dnl Determine the appropriate default list of substitute URLs (GnuTLS
  dnl is required so we can default to 'https'.)
  guix_substitute_urls="https://ci.guix.gnu.org https://bordeaux.guix.gnu.org"
  guix_substitute_urls="https://bordeaux.guix.gnu.org https://ci.guix.gnu.org"

  AC_MSG_CHECKING([for default substitute URLs])
  AC_MSG_RESULT([$guix_substitute_urls])

M doc/guix.texi => doc/guix.texi +2 -2
@@ 17,8 17,8 @@
@set BASE-URL https://ftp.gnu.org/gnu/guix

@c The official substitute server used by default.
@set SUBSTITUTE-SERVER-1 ci.guix.gnu.org
@set SUBSTITUTE-SERVER-2 bordeaux.guix.gnu.org
@set SUBSTITUTE-SERVER-1 bordeaux.guix.gnu.org
@set SUBSTITUTE-SERVER-2 ci.guix.gnu.org
@set SUBSTITUTE-URLS https://@value{SUBSTITUTE-SERVER-1} https://@value{SUBSTITUTE-SERVER-2}

@copying

M etc/guix-install.sh => etc/guix-install.sh +1 -1
@@ 503,8 503,8 @@ sys_enable_guix_daemon()
sys_authorize_build_farms()
{ # authorize the public key(s) of the build farm(s)
    local hosts=(
	ci.guix.gnu.org
	bordeaux.guix.gnu.org
	ci.guix.gnu.org
    )

    if prompt_yes_no "Permit downloading pre-built package binaries from the \

M gnu/installer/newt/network.scm => gnu/installer/newt/network.scm +2 -2
@@ 127,8 127,8 @@ FULL-VALUE tentatives, spaced by 1 second."
          (lambda _ #f))
        (alarm 3))
      (lambda ()
        (or (url-alive? "https://ci.guix.gnu.org")
            (url-alive? "https://bordeaux.guix.gnu.org")))
        (or (url-alive? "https://bordeaux.guix.gnu.org")
            (url-alive? "https://ci.guix.gnu.org")))
      (lambda ()
        (alarm 0))))


M guix/scripts/substitute.scm => guix/scripts/substitute.scm +2 -2
@@ 751,8 751,8 @@ found."
    (#f
     ;; This can only happen when this script is not invoked by the
     ;; daemon.
     '("http://ci.guix.gnu.org"
       "http://bordeaux.guix.gnu.org"))))
     '("http://bordeaux.guix.gnu.org"
       "http://ci.guix.gnu.org"))))

;; In order to prevent using large number of discovered local substitute
;; servers, limit the local substitute urls list size.

M guix/store.scm => guix/store.scm +2 -2
@@ 767,8 767,8 @@ encoding conversion errors."
  (map (if (false-if-exception (resolve-interface '(gnutls)))
           (cut string-append "https://" <>)
           (cut string-append "http://" <>))
       '("ci.guix.gnu.org"
         "bordeaux.guix.gnu.org")))
       '("bordeaux.guix.gnu.org"
         "ci.guix.gnu.org")))

(define (current-user-name)
  "Return the name of the calling user."