Inconsistent Cursor Icons


Peek 2022-04-06 09-25

Should look like the gem-like cursor but it changes when on the

  • title bar/frame of windows
  • certain elements on the desktop
  • certain position on the desktop
  • different desktop screens
  • different panels

I used KDE’s settings and lxappearance to try to get what I want, but still the same behavior.

I’ve tried restarting as well.

Edit: The cursor I’m using is one obtained via OCS, or the “Get New XYZ…” in Appearance settings.

Version Information
  • KDE Plasma: 5.24.3
  • KDE Frameworks: 5.91.0
  • Qt: 5.15.3
  • Xorg:

lxapperance is setting a global cursor theme.

don’t mix KDE cursor with GTK cursor as you get confusing results but you already know that.

My guess was some weird Xorg shenanigans which is why I messed with lxapperance. I’ve removed it and removed the ~/.icons it made.

Also it seems like cursors obtained via OCS, or the “Get New XYZ…” button in the Appearance settings is when the fallback cursor is used. I’ll update the OP.

you may need to check the gtk settings files besides the ones created by KDE as the cursor is set multiple places.

  • ~/.gtkrc-2.0
  • ~/.config/gtk-2.0
  • ~/.config/gtk-3.0
  • ~/.config/gtk-4.0

Created by KDE

  • ~/.config/gtkrc
  • ~/.config/gtkrc-2.0

Did notice ~/.gtkrc-2.0 was touched by lxapperance and instead of fixing it by hand I just moved it along with anything else mentioned into a backup folder before touching all the appearance settings to repopulate the files. The files I found were the following and their current contents:

  • ~/.gtkrc-2.0
gtk-font-name="Noto Sans,  10"
  • ~/.config/gtkrc
# created by KDE Plasma, Wed Apr 6 10:17:38 2022
  • ~/.config/gtkrc-2.0
# created by KDE Plasma, Wed Apr 6 10:17:38 2022

gtk-alternative-button-order = 1

However the cursor is still acting up after reboot. I’m considering copying the cursor files from ~/.local/share/icons to /usr/share/icons since it looks like system installed cursors like Adwatia or Breeze work fine, but I’d like to avoid modifying the system files for what are per-user modifications if I can.

Can affirm copying the files from ~/.local/share/icons to /usr/share/icons solves the problem, but that doesn’t feel like the correct solution since it feels like it defeats the purpose of OCS. I figure it might be an issue to raise.

The correct method would be reverse copy - /usr/share/icons → ~/.local/share/icons as what you did will - at some point - cause package manager file conflicts on sync.

On Arch based systems never modify /usr tree by hand leave that to the package manager.

The only exception from the above rule is /usr/local - as this location is reserved for local content and is never touched by the package manager.

The problem is that the intended way doesn’t work correctly and results in the aforementioned issues mentioned. The better solution is putting together a PKGBUILD for the cursor theme so it’s pacman managed, but for the time being I’ll use this until I write one up to replace my bodge.

Something is wrong with kwin_x11 not loading the cursor from ~/.local/share/icons, which I’m assuming that’s to blame given if I do-redo my bodge, I can see the result of it by killall kwin_x11 && kstart5 kwin_x11.