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 en_GB.utf8
. 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 locale-gen
and 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.