Subject: ‘guix substitute’ doesn’thandle HTTP redirects

From: Ludovic Courtès <[email-masked]>
Date: Fri, 11 Dec 2020 10:50:36 +0100

Hi!

As reported by mange on #guix, it seems that ‘guix substitute’ does not
follow redirects:

--8<---------------cut here---------------start------------->8---
$ guix weather icecat emacs --substitute-urls=https://ci.guix.gnu.org
computing 2 package derivations for x86_64-linux...
looking for 2 store items on https://ci.guix.gnu.org...
updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
https://ci.guix.gnu.org
  100.0% substitutes available (2 out of 2)
  at least 201.3 MiB of nars (compressed)
  293.5 MiB on disk (uncompressed)
  0.084 seconds per request (0.2 seconds in total)
  11.9 requests per second

  at least 1,000 queued builds
      x86_64-linux: 368 (36.8%)
      i686-linux: 556 (55.6%)
      armhf-linux: 6 (.6%)
      aarch64-linux: 69 (6.9%)
      i586-gnu: 1 (.1%)
  build rate: 154.41 builds per hour
      i686-linux: 40.77 builds per hour
      x86_64-linux: 37.06 builds per hour
      armhf-linux: 40.30 builds per hour
      aarch64-linux: 35.83 builds per hour
      i586-gnu: 0.55 builds per hour
$ guix weather icecat emacs --substitute-urls=https://ci.guix.info
computing 2 package derivations for x86_64-linux...
looking for 2 store items on https://ci.guix.info...
updating substitutes from 'https://ci.guix.info'... 100.0%
https://ci.guix.info
  0.0% substitutes available (0 out of 2)
  unknown substitute sizes
  0.0 MiB on disk (uncompressed)
  0.069 seconds per request (0.1 seconds in total)
  14.4 requests per second
ni sekvas la redirektigon al 'https://ci.guix.gnu.org/api/queue'...
  'https://ci.guix.gnu.org/api/queue' returned 500 ("Internal Server Error")
--8<---------------cut here---------------end--------------->8---

This might explain things like <https://issues.guix.gnu.org/45051>.

(*.guix.info were turned into HTTP redirects a few days ago, see
<https://git.savannah.gnu.org/cgit/guix/maintenance.git/commit/?id=c85e128e11d3ba060ae3a6e01da20f531b42d6ef>.)

Ludo’.