How do I set the KDE desktop wallpaper (jpg file) from command line (e.g., by a script, started by the user)?
API - Wallpaper Would post as a comment but I cannot :(
Basically question is in title, but let's elaborate a bit:
I have kde 4.3 from Arch Linux. And a script which periodically downloads new wallpaper. So I'd like to set it as current wallpaper from command line (actually from cron job script, but it's not relevant).
In kde 3, it was trival with dcop. Now, dcop is gone, and I can't find a way to do it with dbus.
Anybody's got idea how to do it?
A trivial solution is to change your wallpaper type in Appearance Settings to slide show, point the directory to the one where your downloaded images can be found, and set an interval thereafter you want a new wallpaper.
*dcop kdesktop KBackgroundIface setWallpaper /home/crouse/Wallpapers/skull.jpg 5
Just don't use my file;)
...use Gnome instead :-)
or... xsetroot -solid cyan4
Is this a more accurate question:
DCOP disappeared between kde3 and kde4; what replaces all of its functionality?
In general, dcop was replaced by dbus. Dbus, like dcop, is an inter-application communication system, but dbus is not specific to KDE. Each dbus-using program exports an interface of methods that can be called, and signals that can be watched (kind of like the interface of an object in OOP). Anyway, the particular program you want is most likely Plasma, the KDE4 desktop shell. To browse the dbus interface of a program, I suggest D-Feet, a graphical dbus explorer and debugger. Once you find the dbus method in Plasma's interface for changing the wallpaper (If there isn't one, file a bug. There should be.), you can use D-Feet to figure out how to call it, and even test calling it. Then you want to use the dbus-send program to call this dbus method from the command-line.
just in case, have you ever tried wally? it is in the aur repo.
Use the scripted image wallpaper plugin. Im afraid there is no way to set a wallpaper by a simple command without scripted image.