https://bugs.kde.org/show_bug.cgi?id=441010

            Bug ID: 441010
           Summary: Plasma breaks system locale when a locale which is not
                    supported by the system is selected
           Product: plasmashell
           Version: 5.22.4
          Platform: Fedora RPMs
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: k...@davidedmundson.co.uk
          Reporter: r...@nanosector.nl
                CC: plasma-b...@kde.org
  Target Milestone: 1.0

Created attachment 140752
  --> https://bugs.kde.org/attachment.cgi?id=140752&action=edit
An example of a locale configured while the system does not support it

SUMMARY
I could not find a dedicated Bugzilla project for plasma-workspace, so I filed
it here; I'm sorry if this is incorrect.

Plasma lists *all* locales in its Formats KCM (System Settings -> Regional
Settings -> Formats), even ones which are not supported by the underlying
system, unlike the Language KCM.

Setting one of these unsupported locales breaks some software which relies on
proper locale configuration and causes warnings in others. For example,
Minecraft's launcher no longer launches and crashes, and DNF throws warnings.

STEPS TO REPRODUCE
1. Open the Formats KCM;
2. Set an unsupported locale by your system, for example nl_EN;
3. Restart your session and observe application behaviour.

OBSERVED RESULT
The Minecraft launcher breaks and DNF and other programs throw locale errors.

> Failed to set locale, defaulting to C.UTF-8

EXPECTED RESULT
Plasma should not break the locale settings the way it currently does and all
programs should continue working.

SOFTWARE/OS VERSIONS
Operating System: Fedora 34
KDE Plasma Version: 5.22.4
KDE Frameworks Version: 5.83.0
Qt Version: 5.15.2
Kernel Version: 5.13.9-200.fc34.x86_64 (64-bit)
Graphics Platform: X11
Processors: 4 × Intel® Core™ i5-5200U CPU @ 2.20GHz
Memory: 15,4 GiB of RAM
Graphics Processor: Mesa Intel® HD Graphics 5500

ADDITIONAL INFORMATION
>From what I could find in the repos, the Formats KCM relies on the output of
QLocale::matchingLocales:

https://invent.kde.org/plasma/plasma-workspace/-/blob/master/kcms/formats/kcmformats.cpp#L72

This method, https://doc.qt.io/qt-5/qlocale.html#matchingLocales , in turn
relies on a list of locale data built in to Qt:

https://github.com/qt/qtbase/blob/dev/src/corelib/text/qlocale_data_p.h#L79-L88

A possible solution therefore would be to filter the list given by Qt on
locales known by the system.

On top of this, Plasma itself seems to not have any issues with the locale and
seems to honour it quite well. So another thought would be to set the system
locale to C.UTF-8 or something similar if the selected locale is not supported,
and maybe show a warning to the user?

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to