Unifying my KDE Themes for User Root

One of the activities I have undertaken on my laptop ‘Klystron’, was to install numerous Themes au complet. I knew from the beginning that some of those could cause conflicts.

The conflicts never affected my session as the regular user. But eventually I found, that when I opened the occasional GUI applications that need to be run as ‘root‘, which takes place via the ‘./kdesu‘ command in directory ‘/usr/lib/kde4/libexec‘, those applications which did not use the GTK library as their GUI-provider, did in fact use Qt, saw that QtCurve was installed, and displayed application windows which though usable, also looked rather weird, borrowing from QtCurve because QtCurve was installed.

AFAIK this is caused, because when we launch a GUI application as root, that application is not passed all the environment variables which regular-user applications can read, for Qt applications to know the details of how we have themed our desktops. And one way we can see this, is when we run ‘./kdesu systemsettings‘, the settings dialog opens, and shows us previews of many of the Theme-related settings, but then later, those previews did not predict what the window styles, decorations, etc.. do look like. Those jump back to defaults, and in my case to defaults which recognize that I have the evil QtCurve installed.

In general, I do not recommend that people fiddle with this, unless they already have a problem. What may eventually happen, is that our KDE windowed applications will not launch again, leaving us in the potential situation where we also cannot reset those preferences, because the ‘systemsettings‘ window itself may no longer open, as root

For me, everything was still in a working state, but started to look so odd, that it needed some cleaning. And what I found was, that by just plugging at the systemsettings window for root, did not solve much. I did recognize that maybe I should not choose QtCurve from there, just because I might later want to uninstall it, but I discovered little else.

Continue reading Unifying my KDE Themes for User Root