You are not logged in.

#1 2015-10-09 22:00:27

Hexcles
Member
Registered: 2015-09-18
Posts: 8

Wrong locale (not using the user locale) in GNOME nautilus

Recently I noticed that the locale in nautilus is incorrect (it's been at least from GNOME 3.16) -- it's not using my user locale (set in GNOME Settings Daemon and stored in AccountsService), but using the system default (the one in /etc/locale.conf) instead.

More details:
In GNOME Control Centre, I set my user locale to Chinese and it can be verified in /var/lib/AccountsService/users/[USERNAME] (containing the line "Language=zh_CN.UTF-8"). Every  application other than nautilus is using zh_CN as expected, and in GNOME terminal (launched directly from GNOME shell) all language-related environment variables are as below:

LANG=zh_CN.UTF-8
LC_MEASUREMENT=zh_CN.utf8
LC_MONETARY=zh_CN.utf8
LC_NUMERIC=zh_CN.utf8
LC_PAPER=zh_CN.utf8
LC_TIME=zh_CN.utf8

These values are all set by GNOME. Despite the weird difference between "UTF-8" and "utf8" postfixes, which I don't know why, everything seems correct.

However, nautilus is using English locale! If I open a terminal from within nautilus (throw the right-click menu), I can see the following environment variables:

LANG=en_CA.UTF-8
LC_*=zh_CN.utf8   # same as the code block above, omitted

"en_CA.UTF-8" is my system-wide locale setting. Obviously, nautilus is not inheriting my user-level locale set by the DE. I also tried the following experiments:
1. killall nautilus. Ran "nautilus" from a GNOME terminal. It used zh_CN locale correctly.
2. killall nautilus. Started nautilus from GNOME shell (by clicking the app icon). It used en_CA locale.
3. killall nautilus. Ran "nautilus --new-window", which is the Exec in org.gnome.Nautilus.desktop. It used en_CA locale.

It seems to me this is a bug related to the "--new-window" argument. Any idea?


P.S. To make it clearer, I don't have any user-level LC-related configuration in my dot files (profile, xprofile, bashrc, etc.). The only two places where I set language preferences are: 1. systemd /etc/locale.conf (only containing one line: "LANG=en_CA.UTF-8"); 2. user-level GNOME Control Centre GUI (set to Chinese Simplified).

Offline

#2 2016-10-20 16:16:44

Saren
Member
Registered: 2014-04-02
Posts: 13

Re: Wrong locale (not using the user locale) in GNOME nautilus

This issue happens on me often when it's 3.20, and now it happens even more often (like 5 minutes after boot) when it's 3.22.

Offline

#3 2016-10-21 11:55:05

WorMzy
Administrator
From: Scotland
Registered: 2010-06-16
Posts: 13,694
Website

Re: Wrong locale (not using the user locale) in GNOME nautilus

I have warned you in the past about necrobumping, Saren. Consider this your final warning.

Closing.


Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD

Making lemonade from lemons since 2015.

Offline

Board footer

Powered by FluxBB