For some reason, I can't see a way to reply to Hubert Samm, but I found his link helpful. Just in case it goes down or you don't want to read the whole thing to get this particular answer, I've added how I managed to accomplish a live-updating background in Gnome 3.
By going to ~/.cache/gnome-control/center/backgrounds you will find a file with a long name (something like "a4f327082b43572cfa36ad23b5e1fda7be77b6fb6bfe362e4d682fd9c6699f27" ) which is the cached version of the file you have set your background to. If you delete this file and create a symlink with the same name to replace it:
$ rm a4f327082b43572cfa36ad23b5e1fda7be77b6fb6bfe362e4d682fd9c6699f27
$ ln -s /path/to/original/file a4f327082b43572cfa36ad23b5e1fda7be77b6fb6bfe362e4d682fd9c6699f27
then, as the original file is updated, the desktop background will change to reflect that. I am using this technique to make sure my XPlanetFX background stays up to date. For example, simply have an image called "background.jpg" and change this file whenever you wanted to update the background.
Probably the more correct way to go about this would be to use gsettings to change the picture-uri address to point directly to the file of your choosing, but I chose the symlink option because I didn't know how persistent the setting change would be when using the UI to change the wallpaper. Either way should work in theory, however.
Note: I don't know this for sure as I didn't test it, but there's a good chance that if you change your background through the normal UI, that long unique filename will change, and your symlink will not be useful any longer.
Thanks! I made it work a bit different: the .desktop file is not needed just call
gnome-session-propertiesand add the first .sh scrip to your startup applications, also I needed to setgsettings set org.gnome.desktop.background show-desktop-icons trueto make the change show on the desktopgsettings set org.gnome.desktop.background picture-options 'zoom'for the pictures to look nice. – select – 2014-11-16T21:18:44.177@SergioAraujo This is a unix trick I rarely see.
set -- *is pretty neat.set -- ...just sets the $1, $2, etc. vars to the list you pass it, as well as$#to the count of those things. Soset -- *is a quick way to count files.*lists the files, andset --sets that list to the dollar vars, and the length var$#– Michael Campbell – 2018-10-13T18:33:58.377I can't find anything about changing wallpaper or Hubert Samm on your link. Could you be more specific? – KovBal – 2011-06-16T19:59:26.047
Or you can just write it down here :) (I didn't checked your name, sorry :)) – KovBal – 2011-06-16T20:00:52.613
1It's worth noting that you might also want to set the
pictures-options:gsettings set org.gnome.desktop.background picture-options '<zoom|centered|none|scaled|spanned|stretched|wallpaper|zoom>'– Daniel Quinn – 2012-07-02T14:26:25.247this doesn't work for gnome 2 right? – Vicfred – 2013-03-26T01:33:23.183
What "set -- *" does exactly? – SergioAraujo – 2013-12-30T17:56:26.163