Subject: bug#56016: [BUG] Various confusing error messages.

From: "(" <[email-masked]>
Date: Thu, 16 Jun 2022 07:50:54 +0100

This issue aims to document error messages in Guix that need to be
improved. If you get an error message and you have no idea what it's
trying to tell you, please send it here!

~ Unbound variable while building package cache

This might be a Guile or Guix thing, not sure which. Using the recent
libpng/guix-gaming problem as an example:

---
Generating package cache for
'/gnu/store/1mzdd7rf9r34xiibcs1gpjsf7jkh6a0r-profile'...
(exception unbound-variable (value #f) (value "Unbound variable: ~S")
(value (libpng-1.2)) (value #f))
---

This error message doesn't tell you *where* the unbound variable is,
which means people may (and have! <https://issues.guix.gnu.org/56012>)
report this as a Guix issue, not a guix-gaming issue.

This error should perhaps look something like

---
Error: Unbound variable `libpng-1.2' in gaming/packages/whatever.scm
---

~ Network disconnection while downloading things

When the network disconnects during a download, Guix usually either
hangs or says something like "corrupt archive while restoring input from
socket" (I haven't been able to reproduce this, so I don't remember the
exact message).

Guix should probably poll the network and check whether it's down, then
report an error and try to reconnect for perhaps 30 seconds before
giving up.