Linux have got lots of desktop environments (GNOME, KDE, Xfce, Cinnamon...) and windowing systems (X11, Wayland, Mir...) and it seems that each one has got its own way to change the wallpaper. Are there some high-level libraries, especially in C++ (and Qt 5), which enables the developer to change programatically the wallpaper in Linux, regardless of the window management or the desktop management? I am looking for something like that:
#include <the_lib>
#include <cstdlib>
int main(int argc, char ** argv) {
std::string theNewWallpaper = "path/to/my/wallpaper.jpg";
// Or a file, an image, or something else representing the wallpaper.
TheLib::changeWallpaper(theNewWallpaper);
// or a more complicated piece of code which does the same.
return EXIT_SUCCESS;
}