Comment 2 for bug 1204182

Revision history for this message
In , Graeme Hewson (ghewson) wrote :

Country/Region & Language setting is very keen to write ~/.kde/env/setlocale.sh with the contents:

export LANG=en_US.UTF-8
export LANGUAGE=en_US:en

even when the Country is not United States of America.

To reproduce:

1. In Country/Region & Language setting, Country is United Kingdom (in my case). Also note that ~/.kde/env/setlocale.sh doesn't exist. I'm using Kubuntu.

2. Make some change (I changed Short date format from DD/MM/YY to YYYY-MM-DD) and click Apply.

3. Note that setlocale.sh has been written as above, with en_US values.

This means that when KDE is restarted, all LC_* variables are en_US.UTF-8 instead of the previous values of en_GB.UTF-8.

One workaround is to delete ~/.kde/env/setlocale.sh after making the required changes in System Settings.

Another workaround is to set the Preferred Language as well as making the other required change (Preferred Languages was previously empty on my system). Setting this to British English causes ~/.kde/env/setlocale.sh to be written with the contents:

export LANG=en_GB.UTF-8
export LANGUAGE=en_GB:en

Now there's an extreme demonstration of the problem. With Country set to United Kingdom, clicking Defaults subtly changes the Country to System Country (United Kingdom). Clicking Apply then changes the contents of setlocale.sh from the en_GB values to en_US values, even though other settings (Money, etc.) are appropriate for the UK.

Expected behaviour:

~/.kde/env/setlocale.sh should not be written if it doesn't exist and it's not
necessary to write it (LC_* variables are set elsewhere).