GNU bug report logs - #39936
How To Resolve "LC_ALL: cannot change locale (en_US.utf8)"

Previous Next

Package: guix;

Reported by: David Philipe Gil <davidpgil <at> protonmail.com>

Date: Thu, 5 Mar 2020 21:21:01 UTC

Severity: normal

To reply to this bug, email your comments to 39936 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Thu, 05 Mar 2020 21:21:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to David Philipe Gil <davidpgil <at> protonmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Thu, 05 Mar 2020 21:21:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: David Philipe Gil <davidpgil <at> protonmail.com>
To: "bug-guix <at> gnu.org" <bug-guix <at> gnu.org>
Subject: How To Resolve "LC_ALL: cannot change locale (en_US.utf8)"
Date: Thu, 05 Mar 2020 20:53:52 +0000
[Message part 1 (text/plain, inline)]
System: Ubuntu 18.04
Guix: 1.0.1

Whenever I "guix pull" I see the error "LC_ALL: cannot change locale (en_US.utf8)". I installed "glibc_utf8_locales" and it seems to have had no effect.

In my .profile I am pointing to "/home/username/.guix-profile/lib/locale". Am I missing something?

I have entered "hash guix" as well with no effect.
[Message part 2 (text/html, inline)]
[publickey - davidpgil@protonmail.com - 0x01EB3346.asc (application/pgp-keys, attachment)]
[signature.asc (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Wed, 11 Mar 2020 19:06:02 GMT) Full text and rfc822 format available.

Message #8 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: davidpgil <at> protonmail.com
Cc: 39936 <at> debbugs.gnu.org
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Wed, 11 Mar 2020 15:05:39 -0400
On Thu, Mar 05, 2020 at 08:53:52PM +0000, David Philipe Gil via Bug reports for GNU Guix wrote:
> System: Ubuntu 18.04
> Guix: 1.0.1
> 
> Whenever I "guix pull" I see the error "LC_ALL: cannot change locale (en_US.utf8)". I installed "glibc_utf8_locales" and it seems to have had no effect.
> 
> In my .profile I am pointing to "/home/username/.guix-profile/lib/locale". Am I missing something?
> 
> I have entered "hash guix" as well with no effect.

Is this on the Guix System, or another distro?

Did you check the instructions in the manual section 2.6.1 Locales?

It's likely this error is coming from the guix-daemon, so you'll need to
make sure that GUIX_LOCPATH is set in the environment where the
guix-daemon starts.

On most distros this happens in the systemd unit file with something
like this line in the Service section:

Environment=GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale




Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Wed, 11 Mar 2020 21:08:02 GMT) Full text and rfc822 format available.

Message #11 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: David Philipe Gil <davidpgil <at> protonmail.com>
To: Leo Famulari <leo <at> famulari.name>
Cc: "39936 <at> debbugs.gnu.org" <39936 <at> debbugs.gnu.org>
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Wed, 11 Mar 2020 19:55:21 +0000
[Message part 1 (text/plain, inline)]
> On Thu, Mar 05, 2020 at 08:53:52PM +0000, David Philipe Gil via Bug reports for GNU Guix wrote:
> 

> > System: Ubuntu 18.04
> > Guix: 1.0.1
> > Whenever I "guix pull" I see the error "LC_ALL: cannot change locale (en_US.utf8)". I installed "glibc_utf8_locales" and it seems to have had no effect.
> > In my .profile I am pointing to "/home/username/.guix-profile/lib/locale". Am I missing something?
> > I have entered "hash guix" as well with no effect.
> 

> Is this on the Guix System, or another distro?
> 

> Did you check the instructions in the manual section 2.6.1 Locales?
> 

> It's likely this error is coming from the guix-daemon, so you'll need to
> make sure that GUIX_LOCPATH is set in the environment where the
> guix-daemon starts.
> 

> On most distros this happens in the systemd unit file with something
> like this line in the Service section:
> 

> Environment=GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale


I did read section 2.6.1 but i could not understand the implications of the stated info.

I used the guix install script to install the guix package manager onto trisquel, which is an ubuntu based distro.

i have been putting my environment variables in .profile and am not familiar with using systemd. would you provide more specific info for what exactly to do in steps as far as adding this guix locale support properly into my systemd setup?

this might be a good feature to add to future versions of the guix package manager installer script.

Thank you for your assistance :)
[publickey - davidpgil@protonmail.com - 0x01EB3346.asc (application/pgp-keys, attachment)]
[signature.asc (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Wed, 11 Mar 2020 22:50:01 GMT) Full text and rfc822 format available.

Message #14 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: David Philipe Gil <davidpgil <at> protonmail.com>
Cc: "39936 <at> debbugs.gnu.org" <39936 <at> debbugs.gnu.org>
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Wed, 11 Mar 2020 18:48:55 -0400
On Wed, Mar 11, 2020 at 07:55:21PM +0000, David Philipe Gil wrote:
> i have been putting my environment variables in .profile and am not familiar with using systemd. would you provide more specific info for what exactly to do in steps as far as adding this guix locale support properly into my systemd setup?

Make sure the file /etc/systemd/system/guix-daemon.service includes a
line like this in the Service section:

Environment=GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale

If you make any changes to that file, you need to make them take effect
by running `systemctl daemon-reload && systemctl restart guix-daemon` as
root.

You should also run `env` from the shell where you use Guix and make
sure it includes GUIX_LOCPATH.

For both the systemd service file and your shell, you need to make sure
the value of GUIX_LOCPATH is a directory that contains locales, and that
they are the same version — there will be a directory with a version
number like '2.29' in, for example, '/home/leo/.guix-profile/lib/locale'.

This should all be handled by the installer script so it would be great
to figure out what's wrong.




Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Thu, 12 Mar 2020 14:34:01 GMT) Full text and rfc822 format available.

Message #17 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: David Philipe Gil <davidpgil <at> protonmail.com>
To: Leo Famulari <leo <at> famulari.name>
Cc: "39936 <at> debbugs.gnu.org" <39936 <at> debbugs.gnu.org>
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Thu, 12 Mar 2020 12:24:46 +0000
[Message part 1 (text/plain, inline)]
> On Wed, Mar 11, 2020 at 07:55:21PM +0000, David Philipe Gil wrote:
> 

> > i have been putting my environment variables in .profile and am not familiar with using systemd. would you provide more specific info for what exactly to do in steps as far as adding this guix locale support properly into my systemd setup?
> 

> Make sure the file /etc/systemd/system/guix-daemon.service includes a
> line like this in the Service section:
> 

> Environment=GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale
> 

> If you make any changes to that file, you need to make them take effect
> by running `systemctl daemon-reload && systemctl restart guix-daemon` as
> root.
> 

> You should also run `env` from the shell where you use Guix and make
> sure it includes GUIX_LOCPATH.
> 

> For both the systemd service file and your shell, you need to make sure
> the value of GUIX_LOCPATH is a directory that contains locales, and that
> they are the same version — there will be a directory with a version
> number like '2.29' in, for example, '/home/leo/.guix-profile/lib/locale'.
> 

> This should all be handled by the installer script so it would be great
> to figure out what's wrong.


my "/etc/systemd/system/guix-daemon.service" says:

```
# This is a "service unit file" for the systemd init system to launch
# 'guix-daemon'.  Drop it in /etc/systemd/system or similar to have
# 'guix-daemon' automatically started.

[Unit]
Description=Build daemon for GNU Guix

[Service]
ExecStart=/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon --build-users-group=guixbuild
Environment='GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8
RemainAfterExit=yes
StandardOutput=syslog
StandardError=syslog

# See <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00608.html>.
# Some package builds (for example, go <at> 1.8.1) may require even more than
# 1024 tasks.
TasksMax=8192

[Install]
WantedBy=multi-user.target
```

my GUIX_LOCPATH equals:

```
/home/david/.guix-profile/lib/locale
```

inside inside that directory is a foilder named "2.29" and it contains what looks like every locale.

My entire "env" is the following:

```
CLUTTER_IM_MODULE=ibus
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
GUIX_PROFILE=/home/david/.guix-profile
LESSCLOSE=/usr/bin/lesspipe %s %s
XDG_MENU_PREFIX=gnome-
LANG=en_US.UTF-8
GDM_LANG=en_US
DISPLAY=:0
COLORTERM=truecolor
GIT_SSL_CAINFO=/home/david/.guix-profile/etc/ssl/certs/ca-certificates.crt
DESKTOP_AUTOSTART_ID=1011d029ca029e4cc158392712626196800000018970007
XDG_VTNR=7
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
MANDATORY_PATH=/usr/share/gconf/gnome.mandatory.path
XDG_SESSION_ID=c2
XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/david
USER=david
DESKTOP_SESSION=gnome
EMACSLOADPATH=/home/david/.guix-profile/share/emacs/site-lisp:/home/david/.guix-profile/share/emacs/26.3/lisp
QT4_IM_MODULE=ibus
TEXTDOMAINDIR=/usr/share/locale/
GUIX_LOCPATH=/home/david/.guix-profile/lib/locale
GNOME_TERMINAL_SCREEN=/org/gnome/Terminal/screen/00441cab_c189_445c_9a5e_3f23985d3b02
DEFAULTS_PATH=/usr/share/gconf/gnome.default.path
PWD=/home/david
HOME=/home/david
TEXTDOMAIN=im-config
SSH_AGENT_PID=2035
QT_ACCESSIBILITY=1
LIBVIRT_DEFAULT_URI=qemu:///system
XDG_SESSION_TYPE=x11
XDG_DATA_DIRS=/home/david/.guix-profile/share:/usr/share/mate:/usr/share/mate:/home/david/.guix-profile/share:/usr/share/trisquel-session:/usr/share/gnome:/usr/local/share/:/usr/share/
SSL_CERT_FILE=/home/david/.guix-profile/ca-certificates.crt
XDG_SESSION_DESKTOP=gnome
GIO_EXTRA_MODULES=/home/david/.guix-profile/lib/gio/modules
GTK_MODULES=gail:atk-bridge
TERM=xterm-256color
VTE_VERSION=5202
SHELL=/bin/bash
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
QT_IM_MODULE=ibus
XMODIFIERS=@im=ibus
IM_CONFIG_PHASE=2
XDG_CURRENT_DESKTOP=GNOME
GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
GNOME_TERMINAL_SERVICE=:1.130
SHLVL=1
XDG_SEAT=seat0
LANGUAGE=en_US
GDMSESSION=gnome
SSL_CERT_DIR=/home/david/.guix-profile/etc/ssl/certs
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
LOGNAME=david
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
XDG_RUNTIME_DIR=/run/user/1000
XAUTHORITY=/home/david/.Xauthority
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
GUIX_GTK3_PATH=/home/david/.guix-profile/lib/gtk-3.0
XDG_CONFIG_DIRS=/etc/xdg/xdg-gnome:/etc/xdg
PATH=/home/david/.config/guix/current/bin:/home/david/.guix-profile/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/david/.local/bin
INFOPATH=/home/david/.guix-profile/share/info:/home/david/.guix-profile/share/info
SESSION_MANAGER=local/thinkpadw541:@/tmp/.ICE-unix/1897,unix/thinkpadw541:/tmp/.ICE-unix/1897
LESSOPEN=| /usr/bin/lesspipe %s
GTK_IM_MODULE=ibus
_=/usr/bin/env
```

Please let me know if I can provide more information to help solve this issue.
[publickey - davidpgil@protonmail.com - 0x01EB3346.asc (application/pgp-keys, attachment)]
[signature.asc (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Thu, 12 Mar 2020 17:38:01 GMT) Full text and rfc822 format available.

Message #20 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: David Philipe Gil <davidpgil <at> protonmail.com>
Cc: "39936 <at> debbugs.gnu.org" <39936 <at> debbugs.gnu.org>
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Thu, 12 Mar 2020 13:37:34 -0400
On Thu, Mar 12, 2020 at 12:24:46PM +0000, David Philipe Gil wrote:
> my "/etc/systemd/system/guix-daemon.service" says:

[...]

> Environment='GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8

And do you have the locales installed in root's profile? Check if that
directory is exists and contains locales.

Finally I would try removing the LC_ALL variable at the end. I don't
have that (custom service file) and things are working fine for me.




Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Thu, 12 Mar 2020 21:18:01 GMT) Full text and rfc822 format available.

Message #23 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: David Philipe Gil <davidpgil <at> protonmail.com>
To: Leo Famulari <leo <at> famulari.name>
Cc: "39936 <at> debbugs.gnu.org" <39936 <at> debbugs.gnu.org>
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Thu, 12 Mar 2020 20:58:19 +0000
[Message part 1 (text/plain, inline)]
On Thursday, March 12, 2020 5:37 PM, Leo Famulari <leo <at> famulari.name> wrote:

> On Thu, Mar 12, 2020 at 12:24:46PM +0000, David Philipe Gil wrote:
> 

> > my "/etc/systemd/system/guix-daemon.service" says:
> 

> [...]
> 

> > Environment='GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8
> 

> And do you have the locales installed in root's profile? Check if that
> directory is exists and contains locales.
> 

> Finally I would try removing the LC_ALL variable at the end. I don't
> have that (custom service file) and things are working fine for me.


I actually don't have a root profile in my home directory if that is what you mean. However, removing the "LC_ALL=en_US.utf8" from the "Environment=" line in "/etc/systemd/system/guix-daemon.service" seems to have solved the issue!

Was that added by the install script? Will this be fixed/addressed?

[publickey - davidpgil@protonmail.com - 0x01EB3346.asc (application/pgp-keys, attachment)]
[signature.asc (application/pgp-signature, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#39936; Package guix. (Sat, 14 Mar 2020 17:28:01 GMT) Full text and rfc822 format available.

Message #26 received at 39936 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: David Philipe Gil <davidpgil <at> protonmail.com>
Cc: "39936 <at> debbugs.gnu.org" <39936 <at> debbugs.gnu.org>,
 Ludovic Courtès <ludo <at> gnu.org>
Subject: Re: bug#39936: How To Resolve "LC_ALL: cannot change locale
 (en_US.utf8)"
Date: Sat, 14 Mar 2020 13:27:50 -0400
On Thu, Mar 12, 2020 at 08:58:19PM +0000, David Philipe Gil wrote:
> I actually don't have a root profile in my home directory if that is
> what you mean. However, removing the "LC_ALL=en_US.utf8" from the
> "Environment=" line in "/etc/systemd/system/guix-daemon.service" seems
> to have solved the issue!
> 
> Was that added by the install script? Will this be fixed/addressed?

That LC_ALL bit was added to fix an earlier bug,
<https://bugs.gnu.org/35671>.

I'm not that familiar with how locales work so I'm not sure the best way
forward here... so I'm CC-ing Ludovic, who worked on it previously.




This bug report was last modified 4 years and 43 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.