Linux: Änderung der Spracheinstellung (Systemvariablen)

In einem meiner letzten Artikel hatte ich bereits darüber geschrieben wie man die deutsche Sprachunterstützung in Fedora freischaltet bzw. nachinstalliert. Ich weiss jetzt nicht ob es nur Fedora betrifft oder auch andere Linux Distributionen, aber bei mir war das nur der halbe
Gewinn, denn die Systemvariablen standen immer noch auf US. Und diese Variablen werden von Programmen ausgewertet um die UI Sprache zu setzen. Somit waren bei Thunderbird, Chromium und Co weiterhin auf Englisch.

Um zu prüfen wie diese Variable gesetzt sind öffnet man ein Terminal Fenster und erhält über die Eingabe von

locale

ein in etwa so aussehendes Ergebnis (je nach Werten der Systemvariablen):

LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8

Und genau das war bei mir natürlich nicht das gewünschte Ergebnis…

Wie setzt man nun also die Systemvariablen, damit alle Programme auf deutsch sind?

nGrundsätzlich ist das erstmal nicht schwierig. Einfach über die Konsole folgende zwei Zeilen absetzen:

export LANG=de_DE.UTF-8
export LC_ALL=de_DE.UTF-8

Eine weitere Abfrage über locale bringt dann auch das gewünschte Ergebnis:

LANG=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="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"
LC_ALL=de_DE.UTF-8

Allerdings stehen die Systemvariablen dann nur in der aktuellen Session auf deutsch. Wenn man sich wieder ab.- und anmeldet stehen sie wieder auf dem Defaultwert US.

Um die Änderungen auch dauerhaft behalten zu können, reicht es aus die zwei genannten Zeilen in eine Datei zu übernehmen. z.B. setLanguage.sh

Die Datei muss ausführbar sein,
also…

chmod +x setLanguage.sh

Am sinnigsten ist es die Datei dann in folgendes Verzeichnis zu legen (root Rechte erforderlich):

/etc/profile.d/

Somit werden die Spracheinstellungen dann beim Login bzw. Laden der benutzerbezogenen Daten ausgeführt und sämtliche Programme sprechen wieder deutsch. :-)

Flattr this!