My main system language is English. Tonight I created a new, non-Admin user account and set that account’s language to German. And my computer is simply ignoring me in that regard. No matter how often I drag German to the top in the Language Support tool when I’m logged in as that user, and no matter how often I log out and reboot, the OS keeps the menus and everything in English when I’m logged in as that user.
Any idea what might be causing this, and what I can do about it?
Additional information: I have now noticed that, every time I open Caja when logged in as that user, I have to re-check the “show hidden files” box, because the computer won’t “remember” I did that. Could that be related to the language problem? That the system simply generally refuses to let that user, or non-Admin users in general, change settings? If so, why?
How full is your hard disk? Does it have less than 5% of its total capacity remaining? Use the du command to find out.
My experience in the past is that by default, when a filesystem is formatted as one of the Extended Linux filesystems (e.g. ext4), 5% of the filesystem’s capacity is set aside for the root user only. That way, a disgruntled or careless user can’t prevent the whole system from grinding to a total screeching halt just by filling up their own home directory. It has the effect that root can add files just fine, which is how you created the new user account – but ordinary users can’t create new files. Even modifications of existing files may not work since overwriting a file usually entails creating a new file, writing all of the new file data to the new file, then renaming the new file over the top of the old one. An indirect procedure, sure, but it ensures that another program can’t squeeze in while the file is being updated and get confused (that actually happens, as unlikely as it sounds – I’ve crashed some of my systems when I wasn’t careful about that!)
This therefore has the effect of requiring a little extra storage space temporarily, which the program can’t get since that space is reserved for root only.
Your desktop settings are generally stored in a file in ~/.config/dconf. If you have plenty of storage available, then check the permissions and ownership of your home directory itself, ~/.config, and ~/.config/dconf and enclosed files. If more than 94% of your disk is used, then free up some space and your settings should be stored once you try setting them once again.
gordon: Thank you, but the user has read and write access to their home directory as well as their .config/ and ./config/dconf/ directories, and both my root and my home partition are still mostly empty (root 36 percent used, home 44 percent used), and so is my drive as a whole. And, I managed it to copy a music collection as well as a lot of wallpapers into the user’s directory while logged in as that user (copied from a thumb drive).
ericmarceau: That would be
GDM_LANG=de_DE LANG=en_US.UTF-8 local LC_COLLATE=C LC_CTYPE=${LC_ALL:-${LC_CTYPE:-${LANG-}}} LC_ALL=; LANG | LC_*) LANGUAGE)
In Linux, you can set a language system-wide, but different users can also have their own language settings. This is typically done by configuring user-specific locale files or settings, allowing each user to choose their preferred language independently. Red Hat Arch Linux
Language Settings in Linux
Linux allows for both system-wide and user-specific language settings.
System-Wide Language Settings
The system-wide language is set in configuration files like /etc/locale.conf or /etc/default/locale.
This setting affects all users and system services unless overridden.
User-Specific Language Settings
Individual users can have their own language settings.
Users can create or edit a file named ~/.config/locale.conf to specify their preferred language.
This allows different users on the same system to operate in different languages.
Changing Language for Users
To change the language for a specific user, you can use commands like localectl set-locale LANG=your_locale.
After making changes, users may need to log out and log back in for the new settings to take effect.
Summary
In summary, Linux supports both system-wide and user-specific language configurations, allowing flexibility for different users on the same system.
After searching for similar problems on the Internet, I opened a terminal and used sudo dpkg-reconfigure locales to set the system language to “none”, and then used sudo update-locale to confirm. That, unfortunately, did not solve the problem. But it did change the result of ericmarceau’s query to
GDM_LANG=de_DE LANG=C.UTF-8 local LC_COLLATE=C LC_CTYPE=${LC_ALL:-${LC_CTYPE:-${LANG-}}} LC_ALL=; LANG | LC_*) LANGUAGE)
jymm: System-wide language settings don’t do much for me, because my problem is about a specific user account. Creating a ~/.config/locale.conf file for that user and filling it with the right locale didn’t solve the problem, even after rebooting. and the localectl command is apparently for Admins only, so I’m not sure if it’s really about specific users.
jymm: When I did the localectl command? No, because you told me it was only to change one user’s settings. However, a web search told me that it’s really a command to change the system language, which is not what I wanted to do.
Anyway, I ended up doing a complete reinstall, and even that didn’t work. Eventually, I changed the general system language to German, which worked, but wasn’t what I wanted to do.
I am wondering about that statement? You seem very knowledgeable for being new so I am wondering what you meant, but you are the administrator of your system. Sudo give you the rights to make admin changes.
It was a bit tricky because I dont’ know any German and set my whole system to German, but was able to get ‘Jim’ back to English and leave ‘Live’ German.
Yes obviously you can’t set the system wide twice.
Set your main user to your preferred language English, USA, GB, Canada etc. then drag to the top.
Set the regional format to the same language.
Now reboot.
It may ask you if you want to keep the old names or use the new ones depending on which way you are changing. Select appropriately for which user you are logged into.
Now login to you second account you want to be German say Deutschland
Open language support in Control Center.
Select (drag to the top) your language under the language tab (German Deutschland)
Select the same under Regional Format (German Deutschland)
Give it a moment to update.
Reboot.
Again it may ask you if you want to keep the new or old names. Select appropriately for which user you are logged into.
the key is dragging the language you want to the top of the language tab and setting the regional format the same under the regional format top for the second user.
I set both back to English US system wide and then set the secondary user to German Deutschland as I described, then rebooted and it worked.
Later: I have now set both my users back to English US and everything is working fine. It did mess with the icons on my desktop, some were missing, but when I logged out and back in they were all there, they just had to be realigned again.
thank you for going through all that trouble. Unfortunately, what you’re telling me to to is what I already tried right at the start of the whole thing, and which for some reason didn’t, and still doesn’t, work on my computer, no matter how often I reboot, and even after I did a full reinstall.
See this excerpt from a screenshot, where you can see my main user’s language clearly set to English, and the computer clearly acting as if it was set to German. That’s, again, after a number of reboots:
Go back and set both users individually to English and set both to system wide, then reboot. Again do this once for each user. When you reboot it should ask you if you want to keep the old names of the new names, Select the one that shows English.
Now go to your German user, let say the name is Felix.
Log into Felix.
Go to languages and select German, it won’t be higlighted. Grab it with the cursor and drag it to the top.
the tab should gray out, the cursor spin and then stop. When stopped Felix has been set to German but you will still need to reboot.
DO NOT apply system wide.
Reboot, log in to user Felix, again you should be asked to keep or discard the old names. The old names should be English the new names German, keep the German names.
Now your Raphael user will be English, and your Felix user German.
Again always make sure the Language tab and Regional format tabs are the same language.
Again, that exactly what I did at the start, what didn’t work on my computer, even after several reboots, and what prompted me to start this thread in the first place. I only started changing the system language after my initial attempts had failed.