Ludovic Courtès (2016-11-28 21:48 +0100) wrote: > Hi Myles, > > Myles English <mylesengl...@gmail.com> skribis: > >> I have always had trouble with my locale after installing guix on Arch >> Linux (with zsh and a basic window manager, bspwm). I have set >> GUIX_LOCPATH in ~/.zshenv and it appears correct in my shell. The >> system-wide locale looks right. When I install postgresql it gives the >> usual "warning: failed to install locale: Invalid argument". When I try >> to initialise a database cluster, passing the locale doesn't work. >> >> Does anyone using Arch Linux and a basic WM know which file to put >> GUIX_LOCPATH in so that the warning goes away? >> >> How can I find out what guix thinks its locale is or what are available? >> >> Is there a way to use initdb even though there is a locale warning? >> >> Shell experiments: >> >> $ 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= >> >> $ echo $GUIX_LOCPATH >> /home/myles/.guix-profile/lib/locale > > What does “ls $GUIX_LOCPATH/2.24” show? > > You must make sure you have the ‘glibc-locales’ or ‘glibc-utf8-locales’ > that correspond to the glibc version of the program you are using (if > you just installed postgresql, it’s using glibc 2.24.) > > Then you need to make sure GUIX_LOCPATH is set both in the environment > of the postgresql daemon, and in the environment of the commands you > invoke (initdb, etc.).
Including the guix-daemon, as this warning: >> $ guix package -i postgresql >> warning: failed to install locale: Invalid argument >> The following package will be upgraded: >> postgresql 9.5.3 -> 9.5.3 >> /gnu/store/sfgg20a7jnwfisajsvqdijjm2zj905az-postgresql-9.5.3 comes from the daemon, so make sure your "guix-daemon.service" has a line like this: Environment=GUIX_LOCPATH=/root/.guix-profile/lib/locale -- Alex