# Setting Screensavers

This chapter describes how to set preferences for the screensaver. This chapter also provides information on how to modify the displays that are available for the screensaver.

## Introduction

A screensaver is an application that replaces the image on a screen when the screen is not in use. The screensaver application for the GNOME desktop is XScreenSaver. The following sections describe how to set preferences for the XScreenSaver application, and how to modify the displays that are available for the screensaver.

The XScreenSaver application does not allow you to lock your screen if you are logged in as `root`. If you want to be able to lock your screen, log in as a normal user. To obtain system administrator privileges, open a terminal window, then use the `su` command to log in as `root`.

## Setting Screensaver Preferences

Default screensaver preferences are stored in a file that is called `XScreenSaver`. This file is stored in different locations, depending on the platform, as follows:

Platform | File Location
--- | ---
RedHat Linux | `/usr/X11R6/lib/X11/app-defaults/XScreenSaver`
Solaris Operating Environment | `/usr/openwin/lib/app-defaults/XScreenSaver`

To modify screensaver application preferences, users can right-click on the Lock button, then choose Properties. The user can then modify preferences in the XScreenSaver dialog. When a user modifies the screensaver preferences, the preferences are stored in the home directory of the user, in the `$HOME/.xscreensaver` file. For information on screensaver preferences, see GNOME 2.2 Desktop User Guide.

Users can also run the command `/usr/X11R6/bin/xscreensaver-demo` to open the XScreenSaver dialog.

To set default screensaver preferences for all users, modify the `XScreenSaver` file. You can also use the XScreenSaver dialog to create a `$HOME/.xscreensaver` file, then copy the file to the location of the `XScreenSaver` file.

To restore the default settings for a user, delete the `$HOME/.xscreensaver` file from the home directory of the user. If no `$HOME/.xscreensaver` file is present, the default preferences in the `XScreenSaver` file are used.

The default display behavior of XScreenSaver is to display a blank screen. The blank screen might confuse users. You might want to change this default display behavior.

To activate changes to the screensaver preferences, use the following command to reload screensaver preferences:

`#` `xscreensaver-command -restart`

The xset application does not work with XScreenSaver at the time of publication of this guide. To modify screensaver preferences, modify the `XScreenSaver` file or the `$HOME/.xscreensaver` file.

## Modifying Screensaver Displays

The screensaver application allows users to choose one or more screensaver displays. A screensaver display is an application that displays images on the screen of the user when the screen is not in use. The screensaver displays are listed in the `XScreenSaver` file and in the `$HOME/.xscreensaver` file.

To add a new screensaver display, copy the executable file for the display to the `/usr/X11R6/lib/xscreensaver/hacks` directory. Add the command for the screensaver display to the `XScreenSaver` file or the `$HOME/.xscreensaver` file. Include any arguments that are required to run the screensaver display on the whole desktop, rather than in a window. For example, you might want to include the `-root` option to display the screensaver display on the desktop.

To disable a screensaver display, add a minus sign (-) at the start of the command for the screensaver display in the preferences file. The following excerpt from a `$HOME/.xscreensaver` file shows a disabled `Qix (solid)` screensaver display:

    -		 "Qix (solid)" 	qix -root -solid -segments 100