‘guix substitute’ poorly handles premature TLS termination
(address . bug-guix@gnu.org)
I got a report showing this:
Toggle quote (5 lines)
> $ guix shell …
> […]
> substitute: mise à jour des substituts depuis « https://ci.guix.gnu.org »... 0.0 %guix substitute: erreur : Erreur TLS dans la procédure « handshake » : La connexion TLS n’a pas été terminée correctement.
> guix shell: erreur : `/gnu/store/aca6i8lqgdfy0gwd4m8ql3kv5a0gp6c9-guix-command substitute' died unexpectedly
This corresponds to GnuTLS exception ‘error/premature-termination’ while
connecting to a substitute server, from ‘fetch-narinfos’.
Why ‘handshake’ fails, I don’t know, but at any rate ‘guix substitute’
shouldn’t error out when that happens; preferably, it should skip that
substitute server and keep going, like it does for other transient
networking errors in ‘call-with-connection-error-handling’.
Ludo’.