If my memory serves me well (and to be honest, it lets me down on quite a few occasions these days!), you could add slideshow wallpapers to earlier versions of Ubuntu, but currently System Settings -> Background allows you to add images but not slideshows.

There are a few tutorials/threads around that explain how to add slideshows to the system so that all users can access them, but I couldn't find any that adds slideshows to the users' home directory. I'm using Gnome-Shell on my machine, but I'm certain the principles are the same for Unity too.

First of all, you need to create the directory hierarchy that will hold your XML files:
mkdir -p ~/.local/share/gnome-background-properties
Next, create the file that will inform the system that you have a new wallpaper:
gedit ~/.local/share/gnome-background-properties/MyFirstSlideshowCollection.xml
You can actually call the file anything as long as it ends in '.xml' as all files in the directory will be read.
This file contains a <filename> tag that points to another XML file that describes your slideshow. Mine is as follows:-
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
    <name>My 1st Slideshow</name>
The XML file that describes my new slideshow is therefore:
but it could be located anywhere and named anything as longs as the <filename> tag above points to it. Note the following though:

  • The <name> tag is the 'pretty' name displayed in System Settings
  • The <options>, <pcolor>, <scolor> and <shade_type> tags are optional. If they are not supplied, System Settings->Background will give you the option to select them.

Before you save this file, ensure the 'gedit' option to save backups has been disabled. If you don't, you will find backup files (ending in ~) in the directory and System Settings will display your wallpaper twice! Not the end of the world, but annoying all the same.

Next, edit this slideshow XML file to configure the actual images used:
mkdir -p ~/.local/share/backgrounds/wallpaper1
gedit ~/.local/share/backgrounds/wallpaper1/My1stSlideshow.xml
This file will contain the filename, paths and timings for the slideshow. Mine looks like this:
Save the file. Most of this is quite self-explanatory, but just in-case:
  • The file paths and filenames will need to be adjusted to suit your wallpaper images. Mine happen to be stored in the same place as the XML file, but it doesn't have to be.
  • The start time will need to be in the past for you to see the slideshow working.
  • Duration is in seconds.
  • The above displays a static image for 5 min (300 sec) and then takes 5 seconds to transition to the next image.
  • You can have as many files as you want - I made this two so that it isn't too long.

To make life easier, there are tools and scripts available that will create this XML file for you. Google is your friend here!

If all goes well, you should be able to see the new slideshow in System Settings -> Background.

Some people have reported that their systems crash if these files are incorrectly configured or point to non-existent files. I didn't find this to be the case, but that doesn't mean you shouldn't be careful! Save all important work beforehand.

I hope this helps someone.