Introduction to XScreenSaver

The XScreenSaver package is a modular screen saver and locker for the X Window System. It is highly customizable and allows the use of any program that can draw on the root window as a display mode. The purpose of XScreenSaver is to display pretty pictures on your screen when it is not in use, in keeping with the philosophy that unattended monitors should always be doing something interesting, just like they do in the movies. However, XScreenSaver can also be used as a screen locker, to prevent others from using your terminal while you are away.



Development versions of BLFS may not build or run some packages properly if dependencies have been updated since the most recent stable versions of the book.

Package Information

XScreenSaver Dependencies


GTK+-3.24.36, libglade-2.6.4, and Xorg Applications



GDM-43.0, Linux-PAM-1.5.2, MIT Kerberos V5-1.20.1, and GLE

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/xscreensaver

Installation of XScreenSaver

Change a hardcoded library name, which prevents using the settings found by configure:

sed -i 's/-lsystemd/-lelogind/' driver/Makefile.in

Install XScreenSaver by running the following commands:

./configure --prefix=/usr &&

This package does not come with a test suite.

Now, as the root user:

make install

Command Explanations

--with-setuid-hacks: This switch allows some demos to be installed setuid root which is needed in order to ping other hosts.

Configuring XScreenSaver

Config Files

/etc/X11/app-defaults/XScreenSaver and ~/.xscreensaver

Linux PAM Configuration

If XScreenSaver has been built with Linux PAM support, you need to create a PAM configuration file, to get it working correctly with BLFS.

Issue the following commands as the root user to create the configuration file for Linux PAM:

cat > /etc/pam.d/xscreensaver << "EOF"
# Begin /etc/pam.d/xscreensaver

auth    include system-auth
account include system-account

# End /etc/pam.d/xscreensaver


Installed Programs: xscreensaver, xscreensaver-command, xscreensaver-demo, and xscreensaver-settings
Installed Libraries: None
Installed Directories: /usr/libexec/xscreensaver and /usr/share/xscreensaver

Short Descriptions


is a screen saver and locker daemon


controls a running xscreensaver process by sending it client messages


is a symlink to xscreensaver-settings


is a graphical front-end for setting the parameters used by the background xscreensaver daemon