I've just installed Ubuntu 13.10 on my Chromebook via Chrubuntu, which doesn't appear to have set up locales correctly. My attempts to do so myself are failing. The system should be en_GB in UTF-8 mode. The output of
locale -a includes
locale outputs the following:
locale: Cannot set LC_ALL to default locale: No such file or directory LANG=en_GB.UTF-8 LANGUAGE=en_GB:en LC_CTYPE=en_GB.utf8 LC_NUMERIC=en LC_TIME=en LC_COLLATE=en_GB.utf8 LC_MONETARY=en LC_MESSAGES=en_GB.utf8 LC_PAPER=en LC_NAME=en LC_ADDRESS=en LC_TELEPHONE=en LC_MEASUREMENT=en LC_IDENTIFICATION=en LC_ALL=
Various programs throw locale-related errors, mostly non-fatal, for example:
(process:2711): Gtk-WARNING **: Locale not supported by C library. Using the fallback 'C' locale.
However, I'm also getting crashes at bootup from Keyboard Input Methods and when attempting to use the Language Support section of System Settings. At present, my
/etc/default/locale file reads as follows, which was copied from the
locale output on a working system (though I might have made one or two changes since then):
LANG=en_GB.utf8 LANGUAGE= LC_CTYPE="en_GB.utf8" LC_NUMERIC="en_GB.utf8" LC_TIME="en_GB.utf8" LC_COLLATE="en_GB.utf8" LC_MONETARY="en_GB.utf8" LC_MESSAGES="en_GB.utf8" LC_PAPER="en_GB.utf8" LC_NAME="en_GB.utf8" LC_ADDRESS="en_GB.utf8" LC_TELEPHONE="en_GB.utf8" LC_MEASUREMENT="en_GB.utf8" LC_IDENTIFICATION="en_GB.utf8" LC_ALL=
At various points trying to fix this, I've managed to cause apt to throw 400 errors when trying to run
apt-get update, and render the system entirely unbootable by causing
mountall to crash.
I've tried various solutions I've found by Googling the problem, including running
dkpg-reconfigure locales, with no luck.
What's going on and how can I fix it?
Edit: So setting
LC_ALL=en_GB.utf8 fixes the local issues, but it causes a pile of error messages when I try and SSH into other machines that don't have en_GB.utf8 available. This doesn't happen on my other Ubuntu boxes, so there must be a way of getting the local settings sorted without setting
LC_ALL and causing these issues.