bug#37688: "guix system reconfigure" doesn't work with LC_ALL=C - and locale problems

2019-10-09 Thread Danny Milosavljevic
After retrying "reconfigure" a few more times, it did work.  Now I rebooted and
now I can also log into the Linux console again.  Locale problems seem to be
gone away--for now.

Note that I report this stuff because it's a general problem all our users see
(and probably never report--they just delete Guix instead).


pgpUDEbhhrgiX.pgp
Description: OpenPGP digital signature


bug#37688: "guix system reconfigure" doesn't work with LC_ALL=C - and locale problems

2019-10-09 Thread Danny Milosavljevic
Because of the locale problems every time there is a merge, I've tried to 
upgrade
as follows:

sudo -i
LC_ALL=C guix system reconfigure /etc/config.scm

downloading from 
https://ci.guix.gnu.org/nar/lzip/532l4zja85y9c69i0l0bwnsxx98gpzdw-nss-certs-3.45...
 nss-certs-3.45  135KiB 
104.5MiB/s 00:00 [  ]  47.4%Backtrace:
   3 (apply-smob/1 #)
In ice-9/boot-9.scm:
705:2  2 (call-with-prompt _ _ #)
In ice-9/eval.scm:
619:8  1 (_ #(#(#)))
In guix/ui.scm:
  1692:12  0 (run-guix-command _ . _)

guix/ui.scm:1692:12: In procedure run-guix-command:
Throw to key `encoding-error' with args `("scm_to_stringn" "cannot convert wide 
string to output locale" 84 #f #f)'.

Can we please do something about these encoding problems once and for all?

Most have standardized on UTF-8 in like 2000, so why does this keep happening?

Also, what is it that changes the locale database format so fundamentally each
and every time that it can't be used any more?  Human culture doesn't change 
that
quickly :P

The reason I set LC_ALL=C is because with my usual language setting I cannot see
where the log file is when a build failure occurs:

>Das Erstellungsprotokoll kann unter â eingesehen werden.

 ^ You got this E-Mail right.  That's what 
it said.

That is very bad usability.

If there's an official way to make these upgrades not break (automatically 
update
in a cron job, say), is it documented in the manual how to do that?

On the other hand:

$ LC_ALL=de_AT.utf8 guix package -u . # With broken locales.
[...]
>Das Erstellungsprotokoll kann unter â eingesehen werden.

 ^ You got this E-Mail right.  That's what 
it said.

$ LC_ALL=C guix package -u . # With broken locales.
[...]
View build log at 
'/var/log/guix/drvs/3y/jqbvjchd344qwg62x0gbj95dx0vfk9-simple-scan-3.24.1.drv.bz2'.

There it works.

Furthermore, I cannot log in on the Linux console.  It doesn't ask for the
password and doesn't let me log in either.  (I wanted to see whether the
text console does the same--well, I guess we won't know)


pgpWo97x0VIqn.pgp
Description: OpenPGP digital signature