Want to run an application in language that different to system language? Here’s how to do the trick in Ubuntu, Debian, Fedora and other Linux.
All applications (almost) in Linux run by default in system language. Some of them provide options to choose another language, but most others do not.
If you want to run a certain app in certain language that is different to system language, then this tutorial is for you!
Step 1: Install More Languages in Debian / Ubuntu
Fedora workstation seems to have most languages support out-of-the-box. But for Debian and Ubuntu, user may need to first install your desired language pack first.
To tell current supported languages in your system, open terminal and run command:
locale -a
If your language is NOT in the output list, then you have to install it first!
Install more languages support in Ubuntu
It’s easy to install more languages in Ubuntu, thanks to a graphical application.
First, search for and launch “Language Support” utility from either start/application menu or ‘Activities’ overview depends on your Desktop Environments.
When the app opens, click on ‘Install / Remove Languages’ button. Then, choose your desired languages in pop-up dialog and finally click ‘Apply’.
When done, re-run locale -a command to verify.
Install more languages support in Debian
Debian 12 stable so far does not have a graphical interface for installing new languages support. Though it’s not hard to do the job from command line.
Firstly, search for and open terminal from start menu. When terminal opens, run command:
sudo dpkg-reconfigure locales
In next screen, either choose the first one for all languages support, or select your desired languages one by one.
Use up/down arrows to navigate, and hit Space on keyboard to select or un-select, and finally hit Enter to apply (or hit Tab to navigate to OK).
When done, also run locale -a
to verify.
Step 2: Start an app with different language from command line
For temporary use, you may choose to start the application from terminal. So, it runs in that language only once.
1. Firstly, search for and launch terminal. When it opens, run command:
export LANG=fr_CA.utf8
Replace fr_CA.utf8
to your language. After that, every app launched from this terminal window will use fr_CA.utf8
language profile.
2. Then, start an app from this terminal window, for example darktable
. It should start with that language if support.
Step 3: Make permanent
To always launch an application (darktable for example) in specified language, edit its .desktop
shortcut file by doing following steps one by one.
1. Firstly, open file explorer and navigate to ‘Other Locations -> Computer/filesystem -> usr -> share -> applications‘.
There, you’ll find the app shortcut files for all the applications (except for Flatpak) on your system. In the case, I need the file-name for Darktable. It’s “org.darktable.darktable.desktop“.
2. Search for and open a terminal window from start menu/’Activities’ overview depends on your Desktop environment.
3. When terminal opens, copy that file to the .local/share/applications
folder.
sudo cp /usr/share/applications/org.darktable.darktable.desktop ~/.local/share/applications
The .desktop
file in the .local
directory has higher priority than the one in ‘/usr
‘ directory. However, it’s for current user only.
4. Now, change the ownership and edit the config file by running commands:
sudo chown $USER:$USER ~/.local/share/applications/*
gedit ~/.local/share/applications/org.darktable.darktable.desktop
Replace gedit with gnome-text-editor for Ubuntu 23.04+, Fedora Workstation, or use nano that works in most Linux.
5. When the file opens in text editor, find out the line starts with Exec. And add env LANG=fr_CA.utf8 (change fr_CA.utf8
to your language) at the beginning of its value.
So that line will change from Exec=/path/to/executable
to Exec=env LANG=fr_CA.utf8 /path/to/executable
Finally save the file and done! For, nano
command line text editor, press Ctrl+X, type y and hit Enter to save change.