The blast radius of this PR is very large—I think there may have been an issue basing the changes off of our current master.
There should probably be a compile-time option to disable linking with dbus and this feature, or it should at least be enabled only on linux
An effect of that is that we might want to try to move this new KDE-specific code somewhere more isolated—the codebase is littered with ifdef like unexploded ordinance
Are environment variables sufficient to determine if we are running KDE? Has it been investigated if checking for running processes is a more durable/practical solution (genuinely not sure)?
Added an option to set the current image as wallpaper for KDE Plasma.