Subject: bug#57559: guix pull fails on http status code 503

From: Maxime Devos <[email-masked]>
Date: Mon, 5 Sep 2022 22:20:10 +0200

On 05-09-2022 10:21, zimoun wrote:
> On sam., 03 sept. 2022 at 19:27, Maxime Devos<[email-masked]>  wrote:
>
>>    * if some but not all channels are available, and there is at least
>>      one updated channel --> log the missing channels, and update the
>>      channels that_are_  available (but don't 'ignore' the missing
>>      channels by removing them!).
> What do you mean by «but don't 'ignore' the missing channels by removing
> them!»?  Do you mean keep the last revision locally known for this
> channel?

I'm not sure what you're asking, because of the negatives.

With "but don't ignore [...] by [...]", I meant that, yes.

If you meant "don't ignore [...] by [...]", then no, with 'ignoring by 
removing', I meant, literally removing them.  More concretely, a 
situation like this:

  * In the channels.scm, two channels are declared: guix and guix-foo.
  * User does "guix pull"; Guix downloads the source code of guix and
    guix-foo.
  * Downloading guix failed (503).  As such, Guix decided to ignore the
    guix channel, by removing it from the list of channels to build.
    (The in-memory list I mean, I don't mean modifying the channels.smc
    file)
  * Guix tries building the guix-foo channel and installing it, without
    the guix channel.
  * This cannot work (the guix-foo channel uses modules from guix for
    basic stuff like G-exps, packages, coreutils, ..., and it was the
    removed guix channel that had things build-aux/build-self.scm which
    is required for pulling).

(It's not unlike double negatives! I first thought of the latter 
interpretation but on second thought you might have meant the former.)

Greetings,
Maxime.