Subject: bug#55921: ‘guix substitute’ displays nothing when connecting

From: Ludovic Courtès <[email-masked]>
Date: Sun, 12 Jun 2022 11:33:43 +0200

Hi,

‘guix substitute’ displays nothing when it connects to substitute
servers.  Thus, if the connection attempt stalls, ‘guix’ commands just
print nothing.

Here’s what ‘guix build’ sees when ‘guix substitute’ is busy trying to
connect to a server:

--8<---------------cut here---------------start------------->8---
11:31:00 read(13, "gmlo\0\0\0\0", 8)    = 8 <0.260108>
11:31:00 read(13, "\r\0\0\0\0\0\0\0", 8) = 8 <0.000017>
11:31:00 read(13, "substitute: \r\0\0\0", 16) = 16 <0.000018>
11:31:00 read(13, 0x40cddd0, 8)         = ? ERESTARTSYS (To be restarted if SA_RESTART is set) <3.681580>
11:31:04 --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
--8<---------------cut here---------------end--------------->8---

We should arrange so that ‘guix substitute’ prints an initial message
instead of just clearing the line so that users have an idea of what’s
going on.

Ludo’.