Dropping KRDB

Kai Uwe Broulik kde at privat.broulik.de
Wed Feb 5 11:13:22 GMT 2020


Hi all,

in plasma-desktop we have this wonderful class called KRDB which syncs 
Plasma settings to various other toolkits, including "KDE4".

Since it is not a library but just compiled into half the KCMs, changing 
it always requires a tonne of CMake adjustments all over the place. More 
importantly, though, it seems to be mostly ancient stuff and potentially 
broken in recent config changes we did.

Since we just dropped Breeze Qt4 I suggest we get rid of KRDB for Plasma 
5.19, too. Let's go through what KRDB does (with no claim for completeness):

= GTK 1 =
Does anybody still use this, even? Can probably go?

= GTK 2 =
 From what I can tell it writes multiple colors. A GTK colors definition 
which I was told isn't really honored by most styles anyway (most are 
pixmap-based these days). Then it also writes a CSS for e.g. Breeze GTK 
to use.
I suggest we move whatever is salvageable to our new GTK settings sync 
KDED module in kde-gtk-config and nuke the rest. This way we also only 
have one place messing with GTK settings. (There is still 
gmenu-dbusmenu-proxy also messing with gtkrc and I'd like that part also 
moved to kde-gtk-config)

= Qt =
This is for applications not using the plasma-integration QPT, e.g. 
statically compiled proprietary stuff. I haven't tried it for myself but 
it appears Qt these days reads kdeglobals for settings and colors [1]. I 
recall the "proper" KDE theme being a rather recent addition, so maybe 
we can't remove it just yet?

= KDE4 =
We removed Breeze KDE4 builds recently and distro feedback suggests 
they've either discontinued Qt4 already or are in the process to. By the 
time Plasma 5.19 comes out there will be another round of distro LTS 
releases, so even ancient LibreOffice releases with KDE4 will be gone 
then, hopefully.

= Xft =
Given this font stuff is a giant mess as it is, I'd prefer if the fonts 
KCM and only the fonts KCM messes with it. Right now the Fonts KCM has 
its own wrappers for things, then writes stuff into one file, has 
someone else write that into another file, then has krdb read from that 
second file into a third location. And surprisingly somewhere along the 
way usually something goes wrong :)

= XResources =
So your xcalc looks nice? Possibly also read by toolkits other than Qt/GTK?

Cheers
Kai Uwe

[1] 
https://code.qt.io/cgit/qt/qtbase.git/tree/src/platformsupport/themes/genericunix/qgenericunixthemes.cpp#n303


More information about the Plasma-devel mailing list