Subject: bug#25136: locale confusion

From: Chris Marusich <[email-masked]>
Date: Thu, 08 Dec 2016 22:46:21 -0800

Dave Love <[email-masked]> writes:

> I followed the instructions for getting locales working in
> "(guix)Application Setup" to no effect initially.  I'm running over
> RHEL6, if that's relevant, and I have:
>
>   $ locale
>   LANG=en_GB.UTF-8
>   LC_CTYPE="en_GB.UTF-8"
>   LC_NUMERIC="en_GB.UTF-8"
>   LC_TIME="en_GB.UTF-8"
>   LC_COLLATE="en_GB.UTF-8"
>   LC_MONETARY="en_GB.UTF-8"
>   LC_MESSAGES="en_GB.UTF-8"
>   LC_PAPER="en_GB.UTF-8"
>   LC_NAME="en_GB.UTF-8"
>   LC_ADDRESS="en_GB.UTF-8"
>   LC_TELEPHONE="en_GB.UTF-8"
>   LC_MEASUREMENT="en_GB.UTF-8"
>   LC_IDENTIFICATION="en_GB.UTF-8"
>   LC_ALL=
>   $ export -p | grep GUIX
>   declare -x GUIX_LOCPATH="/home/dlove/.guix-profile/lib/locale"
>   $ find $GUIX_LOCPATH -name en_GB.UTF-8
>   /home/dlove/.guix-profile/lib/locale/2.24/en_GB.UTF-8
>
> but saw this (note the warning):
>
>   $ guix --version 
>   warning: failed to install locale: Invalid argument
>   guix (GNU Guix) 20161208.12
>   Copyright (C) 2016 the Guix authors
>   License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>   This is free software: you are free to change and redistribute it.
>   There is NO WARRANTY, to the extent permitted by law.
>
> strace showed it looking in "locale/2.23", not "locale/2.24", despite
> the environment.

Did /home/dlove/.guix-profile/lib/locale contain a "2.23" directory?  If
not, then perhaps that's why the warning was emitted.

> "guix" there was from the /usr/local/bin link suggested by the
> installation instructions.  After a "guix package -i guix" (to the same
> version of guix, but now in .guix-profile), I don't get the warning but
> I wonder why that should have made a difference and why the environment
> seems to be ignored.

After "guix package -i guix", does the warning still show up when you
invoke "/usr/local/bin/guix"?  If so, then perhaps the reason is that
the "guix" program installed in root's profile was compiled against a
different version of glibc (2.23, I guess) than the one in your profile.

I wonder if perhaps this is the kind of problem described in "(guix)
Locales", specifically the following:

https://www.gnu.org/software/guix/manual/html_node/Locales.html#Locale-Data-Compatibility-Considerations

-- 
Chris