Bug 505299

Summary: Downloaded mouse cursor themes should be stored in ~/.local/share/icons/ to be accessible by Flatpak apps
Product: [Applications] systemsettings Reporter: Thomas Bertels <tbertels>
Component: kcm_cursorthemeAssignee: Plasma Bugs List <plasma-bugs-null>
Status: CONFIRMED ---    
Severity: normal CC: nate, nicolas.fella
Priority: NOR    
Version First Reported In: 6.3.5   
Target Milestone: ---   
Platform: Manjaro   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=418936
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Thomas Bertels 2025-06-07 07:45:36 UTC
SUMMARY
Downloaded cursor themes should are stored in ~/.icons/ instead of ~/.local/share/icons/
This means that they' aren't accessible by Flatpak apps.

STEPS TO REPRODUCE
1. Download a cursor theme
2. ls ~/.icons/
3. ls ~/.local/share/icons/

OBSERVED RESULT
In 2. the new theme is shown, but not in 3.
Flatpak apps don't use the downloaded cursor theme

EXPECTED RESULT
The new theme should be shown in 3.
Flatpak apps use the downloaded cursor theme

SOFTWARE/OS VERSIONS
KDE Plasma Version: 6.3.5
KDE Frameworks Version: 6.14.0
Qt Version: 6.9.0

ADDITIONAL INFORMATION
The path is set in
https://github.com/KDE/plasma-workspace/blob/v6.3.5/kcms/cursortheme/kcmcursortheme.cpp#L435
And also checked in
https://github.com/KDE/plasma-workspace/blob/v6.3.5/kcms/cursortheme/kcmcursortheme.cpp#L71
and
https://github.com/KDE/plasma-workspace/blob/v6.3.5/kcms/cursortheme/kcmcursortheme.cpp#L186

Cursor themes are already being looked for in ~/.local/share/icons/ by the kcm, so no migration routine should be needed.
Comment 1 Nicolas Fella 2025-06-07 10:37:25 UTC
See https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1233 for a previous attempt at this
Comment 2 Thomas Bertels 2025-06-08 09:03:06 UTC
That merge request mentions libxcb-cursor not supporting ~/.local/share/icons
This was added to it in https://cgit.freedesktop.org/xcb/util-cursor/commit/?id=d28a3227eb9e4bdeeb4dd93017c298808bbe62ee (see also https://gitlab.freedesktop.org/xorg/lib/libxcb-cursor/-/issues/12).
Which means that future libxcb-cursor (aka xcb-util-cursor) 0.1.6 will make it possible to restore the commit from that merge request to fix this.