There are multiple options to set up a slide show screen saver that shows the pictures of your choosing when the screen saver kicks in. The following shows the various options and works with the gnome-screensaver.
Easy does it
The most direct way to get a slide show screen saver going is to place your pictures in the $HOME/Pictures directory, then start the GNOME screen saver settings dialog by using gnome-screensaver-preferences from the command line or by selecting the Screensaver icon in the Control Center (gnome-control-center). In the screen saver settings dialog select “Pictures folder” and click “Close”.
One step of customization (not the preferred option)
If you do not want to use the Pictures directory as the location for the pictures to be shown you can customize the location by making a few simple edits. As the root user edit the file /usr/share/applications/screensavers/personal-slideshow.desktop. At the end of the line that starts with “Exec” add “–location=PATH_TO_PICTURE_DIRECTORY”, without the quotes and with PATH_TO_PICTURE_DIRECTORY being a real path. For example if my pictures were in /opt/slideshow the modified line would look as follows:
Exec=/usr/lib/gnome-screensaver/gnome-screensaver/slideshow –location=/opt/slideshow
Save the file and select the “Pictures folder” in the screen saver preferences dialog to select the slide show as your screen saver.
While this is a straight forward modification this is not really a good solution. The reason being that this modifies a file that is part of a package and when the package gets updated you will loose your changes.
A second step of customization
The better solution to accomplish the task of customizing the picture location is to create a new .desktop file in /usr/share/applications/screensavers. You should use the personal-slideshow.desktop file as your starting point.
As root copy the personal-slideshow.desktop file to a file with a name of your choice, then edit the file. Change the value of “Name”, “Comment”, and add the “–location” option at the end of the “Exec” value as previously. Save the file and start the GNOME screen saver preferences dialog. In the list to the left search for the value you assigned to the “Name” variable when you edited the new .desktop file. Select it and your all set.
Getting fancy
If the animation of the pictures in the previous slide show setup is not sufficiently fancy for you, the GLSlideshow screen saver maybe the ticket for you. Unfortunately you cannot just simply configure the location of the images you would like to use in the GNOME screen saver preferences dialog or via command line arguments to the glslideshow screen saver. In order to configure the location of the images to be used it is necessary to run the xscreensaver settings dialog (don’t worry, in the end gnome-screensaver will be running again).
Just starting xscreensaver will fail as only one screen saver daemon per display is allowed. Therefore, it is necessary to first kill the gnome-screensaver; use the following commands:
-> ps -A | grep gnome-screens
At the beginning of the line this produces you will find a number, this is the process ID (PID). Use this number in the next command
-> kill -9 PID
Now fire up xscreensaver and select “Settings”. In the settings dialog select “GLSlideshow” and then switch to the “Advanced” tab. In the “Image Manipulation” frame select “Choose Random Image” and then enter the path of the directory containing your image files in the text box below the check button text. If you click the “Settings” button on the “Display Modes” tab you can set various parameters for the slide show.
With the slide show configured you can switch back to the GNOME screen saver if you so desire. In the settings dialog select File->Kill Daemon, then File->Quit. Now in a terminal window restart the GNOME screen saver by using the “gnome-screensaver” command. The process is a daemon and it will background itself. That’s it, now if you select the GLSlideshow in the GNOME screen saver preferences dialog you will see your images being selected.
With this you can have a slide show as your screen saver in no time.
Happy Hacking.