xfce4-screensaver - FAQ
xfce4-screensaver with SmartCard login
Issue: When using sssd with smartcard login, xfce4-screensaver (or lightdm, mate, etc…) don't ask for the PIN Code, while some services (sudo, su, gdm..) do ask.
Resolution: the user will need to update sssd.conf accordingly:
# /etc/sssd/sssd.conf [pam] pam_p11_allowed_services = +xfce4-screensaver
For additional details see:
Why doesn't the screensaver/lock screen activate when I attempt to lock my computer?
You are likely running an unpatched xflock4, which does not know about xfce4-screensaver.
This has been resolved upstream, but will need to be manually added until the next Xfce Session release.
All you need to do is add xfce4-screensaver-command –lock
to the available lock commands.
$ cat /usr/bin/xflock4 PATH=/bin:/usr/bin:/usr/local/bin export PATH # Lock by xscreensaver or gnome-screensaver, if a respective daemon is running for lock_cmd in \ "xfce4-screensaver-command --lock" \ "xscreensaver-command -lock" \ "light-locker-command --lock" \ "gnome-screensaver-command --lock" do $lock_cmd >/dev/null 2>&1 && exit done
Why doesn't my monitor turn off automatically?
Display Power Management Signaling (DPMS) has been disabled by another application. This can be confirmed and resolved using the xset
command. To check if DPMS is disabled, run the below command.
$ xset -q DPMS (Energy Star): Standby: 1200 Suspend: 0 Off: 3600 DPMS is Disabled
If DPMS is disabled, it can be turned back on with xset +dpms
$ xset +dpms $ xset -q DPMS (Energy Star): Standby: 1200 Suspend: 0 Off: 3600 DPMS is Enabled Monitor is On
Why doesn't my screensaver activate automatically?
Possibility A
The screensaver daemon is not currently running. You can check this by looking at the running processes, or just run xfce4-screensaver
to start it up. Only one instance will run at a time, and you will be notified if it is already running.
$ xfce4-screensaver ** (xfce4-screensaver:9788): WARNING **: 01:15:42.354: screensaver already running in this session
Possibility B
Another application has disabled the X11 screensaver. This can be determined by running xdg-screensaver status
.
$ xdg-screensaver status disabled
If this command outputs “disabled”, try running the following commands to enable the screensaver.
$ xset s blank # Sets the X11 screensaver mode to "blank" $ xset s 300 # Sets the X11 screensaver timeout to 5 minutes $ xdg-screensaver status enabled
Where are all the screensavers?
Xfce Screensaver uses Xscreensaver-compatible screensavers. These can usually be installed separately from the main Xscreensaver package.
If you've already installed the screensavers and they still are not available, you may need to create desktop entries for them so they can be found by Xfce Screensaver. In the future, this process will be automated by Xfce Screensaver. Meanwhile, it is not hard to make your own.
Example
By looking at /usr/share/xscreensaver/config/abstractile.xml
, all of the importing information can be found.
<?xml version="1.0" encoding="ISO-8859-1"?> <screensaver name="abstractile" _label="Abstractile"> <command arg="-root"/> ...
The compatible desktop entry, installed to /usr/share/applications/screensavers/abstractile.desktop
, looks like this.
[Desktop Entry] Type=Application Name=Abstractile Exec=/usr/lib/xscreensaver/abstractile -root TryExec=/usr/lib/xscreensaver/abstractile Categories=Screensaver;
In this example, you can see that the Name
key is derived from the screensaver label, Exec
and TryExec
both use the screensaver binary path, and the Exec
key also includes the command arguments.