Language in XFCE4

Hello, mates ;D

Concerning to the issue in epigraph, I’d like to know how to set the British English as the default language in XFCE, nowadays it is portuguese, in sum, I wanna change the Interface Language.
How do I do that, please?

Best regards.

language is a system setting and not available inside xfce4-settings:

edit /etc/locale.gen as root (or with sudo) and make sure British English is not commented out (# in front)

then set it:

sudo localectl set-locale LANG=en_GB.UTF-8
1 Like

Super!

Sie sind wirklich ein sehr gute Doktor weil Sie haben immer die Lösung für unseres Problem.

Dankschön, Herr Doktor :wink:

Calamares, btw, is quite clever. It can auto set locale (aka interface language) and units (measurements, paper type for printers etc) as two different things automatically.

I prefer American English as my interface language (since I am married to an American and we speak English at home). I also want A4, Monday as the first day of the week, the Swedish , instead of . as decimal symbol etc…
And just by checking “American English” as language and Stockholm as time zone in the installer it picks the exact settings I want.

So for anyone reading this, try setting the locale in the installer exactly like you’d want. It usually actually works out.

Hey, I installed ESO using the online installer and ran into the same problem as OP, therefor I decided to revive this post.

What I did in Calamares was to set system language to en_US and leave all other locales de_DE as I prefer it this way. Everything was fine just after initial boot, the Xfce interface being in english, but after reboot the interface swiched to german and I did not manage to get it back to english.
sudo localectl set-locale LANG=en_US.UTF-8 didn’t change anything, in fact, LANG as returned by localectl was already en_US.UTF-8.

Here the outputs of locale and localectl:

output
$ locale
LANG=de_DE.utf8
LC_CTYPE="de_DE.utf8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_COLLATE="de_DE.utf8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="de_DE.utf8"
LC_PAPER=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_ALL=

$ localectl
System Locale: LANG=en_US.UTF-8
               LC_NUMERIC=de_DE.UTF-8
               LC_TIME=de_DE.UTF-8
               LC_MONETARY=de_DE.UTF-8
               LC_PAPER=de_DE.UTF-8
               LC_NAME=de_DE.UTF-8
               LC_ADDRESS=de_DE.UTF-8
               LC_TELEPHONE=de_DE.UTF-8
               LC_MEASUREMENT=de_DE.UTF-8
               LC_IDENTIFICATION=de_DE.UTF-8
    VC Keymap: de
   X11 Layout: de
    X11 Model: pc105

I would greatly appreciate any hint on how to change the interface language. Also, if anybody would explain why the 2 commands give different results for LANG, that would also be very nice :upside_down_face:

The settings are probably overriden. Check your ~/.config/locale.conf
cat ~/.config/locale.conf

Local settings usually have higher precedence over those defined system-wide (in /etc/locale.conf)

Hey, thanks for your answer.

Interestingly, I don’t have such a file… should I create it then and if yes, what should I write into it? Or is it possibly located somewhere else?

It is probably set somewhere else… What does env | grep -i LANG show?

I’d just create the locale.conf in ~/.config with

LANG=en_US.UTF-8
LANGUAGE=en_US

Then unset the LANG variable (on my other system XFCE just refused to switch the language without this step):
unset LANG
log out and make sure to choose the right language in the login manager.

1 Like

That did it, thanks a lot! :upside_down_face:

1 Like

Also, if locale shows now all the variables set to en_US you may try to add the LC variables explicitly to your locale.conf. Glad it worked :slight_smile: