Locale settings defined outside /etc/locale.conf

When I execute locale in terminal I get:

locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_NUMERIC=C
LC_TIME=C
LC_COLLATE=de_BE.UTF-8
LC_MONETARY=de_BE.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=nl_NL.UTF-8
LC_NAME=nl_NL.UTF-8
LC_ADDRESS=nl_NL.UTF-8
LC_TELEPHONE=nl_NL.UTF-8
LC_MEASUREMENT=de_BE.UTF-8
LC_IDENTIFICATION=nl_NL.UTF-8
LC_ALL=

However this is the content of my /etc/locale.conf:

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

Moreover when I try to access locale settings through KDE System Settings, I get that it:

Cannot load library /usr/lib/qt/plugins/msm_locale.so (libicuuc.so.68: cannot open shared object file: No such file or directory)

libicuuc.so is dependent on icu (?), which is installed. Also the shown file path does exist. Note that I can still access the locale settings through Garuda Settings Manager, but none of the locales have the value de_BE.UTF-8, in fact they are just like the /etc/locale.conf.

I get a warning from perl that my locale settings are incorrect (falls back to en_US.UTF-8) every time I do any updates with pacman. I checked ~/.profile, and it has no overrides over the systemwide locale settings.

You are in a partial upgrade state. Fully update your system.

Given that icu is central to localisation that could well explain the other issue you're having.

5 Likes

i have the same issue . Any solution or waiting for later upadate?

In which case, then the first step is exactly the same:

thanks for yor replay. Fully update with fish and add-remove software - update nothing happend . remain the same.

To confirm, which issue are you having that is the same as the OP?

1 Like

Sorry to drop in but I'm having same issues, after a clean install and running pacman -Syu they start appearing. Tried a pacman -Syyu and the problem still persists, any other way for me to get more info from the system?

Can you provide output that says what the issues are? An incorrect library version is fixed by an update, so if you're having that issue then you haven't fully updated.

This is the entire error printout:

(14/20) Checking which packages need to be rebuilt
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "",
LC_ALL = (unset),
LC_ADDRESS = "nl_NL.UTF-8",
LC_NAME = "nl_NL.UTF-8",
LC_MONETARY = "de_BE.UTF-8",
LC_PAPER = "nl_NL.UTF-8",
LC_IDENTIFICATION = "nl_NL.UTF-8",
LC_TELEPHONE = "nl_NL.UTF-8",
LC_MESSAGES = "en_US.UTF-8",
LC_MEASUREMENT = "de_BE.UTF-8",
LC_CTYPE = "en_US.UTF-8",
LC_TIME = "C",
LC_COLLATE = "de_BE.UTF-8",
LC_NUMERIC = "C",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "",
LC_ALL = (unset),
LC_ADDRESS = "nl_NL.UTF-8",
LC_NAME = "nl_NL.UTF-8",
LC_MONETARY = "de_BE.UTF-8",
LC_PAPER = "nl_NL.UTF-8",
LC_IDENTIFICATION = "nl_NL.UTF-8",
LC_TELEPHONE = "nl_NL.UTF-8",
LC_MESSAGES = "en_US.UTF-8",
LC_MEASUREMENT = "de_BE.UTF-8",
LC_CTYPE = "en_US.UTF-8",
LC_TIME = "C",
LC_COLLATE = "de_BE.UTF-8",
LC_NUMERIC = "C",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "",
LC_ALL = (unset),
LC_ADDRESS = "nl_NL.UTF-8",
LC_NAME = "nl_NL.UTF-8",
LC_MONETARY = "de_BE.UTF-8",
LC_PAPER = "nl_NL.UTF-8",
LC_IDENTIFICATION = "nl_NL.UTF-8",
LC_TELEPHONE = "nl_NL.UTF-8",
LC_MESSAGES = "en_US.UTF-8",
LC_MEASUREMENT = "de_BE.UTF-8",
LC_CTYPE = "en_US.UTF-8",
LC_TIME = "C",
LC_COLLATE = "de_BE.UTF-8",
LC_NUMERIC = "C",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").

I update my system, fully, all the time. My icu version has been and is 69.1-1.

I have had this issue for a very long time, just haven't bothered until now, IRL stuff. It really isn't in the way of my daily ops, it would be nice to have a pristine running system.

OK so some initial steps:

  1. Edit /etc/locale.gen and make sure the locales you want are uncommented (e.g.

    de_BE.UTF-8 UTF-8
    ...
    en_US.UTF-8 UTF-8
    

    (keeping en_US enabled can help with certain software).

  2. Run sudo locale-gen and verify the same locales you uncommented are being generated.

  3. Check the contents of /etc/locale.conf and set it to the LANG you want. The only contents in mine is:

    LANG=en_GB.UTF-8
    

    Note that this is the first part of the line in locale.conf

  4. Reboot for good measure.

If the issue persists then check the settings within your DE and within Garuda Settings Manager.

1 Like

Please.

  • If you include terminal outputs in your post please use the proper output format in your post. Using "~" 3 times above and "~" 3 times below the text block will provide a readable, raw look.

Read

I performed fresh install of Garuda, then updated and did nothing else. Now this is what KDE's System Settings saying:

What's the output of pacman -Qo /usr/lib/qt/plugins/msm_locale.so ?

Sure, after a fresh install and update the locale panel in the settings app shows the following message:

Cannot load library /usr/lib/qt/plugins/msm_locale.so (libicuuc.so.68: cannot open shared object file: No such file or directory)

The output of pacman -Qo /usr/lib/qt/plugins/msm_locale.so is

/usr/lib/qt/plugins/msm_locale.so is owned by garuda-settings-manager-kcm-git r24.4646d26-1

The install/remove software application also reverted to a skinless state

This package needs to be rebuilt... it also sounds like that's something to be done via the ChaoticAUR. Stand by.

2 Likes

If you just want to browse, this is of course inconvenient.
Alternatively, you might want to install Discover.

1 Like

I'll have a look, thank you. I'm doing install through the command line anyway, I was just looking the rest of the apps to see if there was anything else that out of place.

It's ok I was more nervous that I screwed up somehow than the side effect of the update. :sweat_smile:

Read the leaflet:
"If there are any risks or side effects, send your doctor to the pharmacist."

3 Likes
/usr/lib/qt/plugins/msm_locale.so is owned by garuda-settings-manager-kcm-git r25.eb0ea49-1