There's something very wrong with the way mouse cursors are handled on Linux. If you have a low DPI display, the Adwaita cursor is ugly and pixelated. The same cursor image in the KDE theme preview is smooth and nice.
This is a common problem in GNOME, KDE, and wlroots. Probably because they all use the same library to load the cursor and... nobody noticed?
Oh, and of course I have to take photos of the screen, because screenshots do not include the actual cursor image that is displayed.
I now have my own X cursor loader, and I have verified that the loaded data is correct. The cursor on the screen is still wrong.
I hacked wlroots to disable support for hardware cursors, and with this version of the library the cursor is displayed correctly.
This problem only seems to occur on AMD GPUs. If you look at other cursor themes, it's obvious that something is wrong with the gamma. I kind of suspected this when I noticed that the slight gradient on the black cursor was missing.
The issue is clearly visible on Steam Deck too, which also has an AMD GPU. That black cursor you have in the desktop mode? It should be gray.
You can't unsee it now.
Nvidia seems to get this almost right. However, if you take a closer look, you will see that the dark pixels are a little bit too dark. Or am I seeing things?
Photos from two different monitors and a close-up.
On Intel GPUs, the mouse pointer looks like a perfect copy of the pointer drawn in software.
@wolfpld The mouse cursor is a hardware overlay which goes through a totally different display path, sometimes with its own palette/gamma/etc. So if the driver team fiddle with main palette/ramp and forget to fiddle with the other to match, that'll do it!