You are not logged in.
I'm having an issue with XScreenSaver that's really perplexing me...
I have an older workstation on which I've been setting up Qtile running as an X session under LightDM and using picom as a compositor. The GPU is a GeForce GTX 670 running the nvidia-470xx-dkms driver from the AUR and configured by an xorg.conf autogenerated by nvidia-xconfig.
FTMP this setup is working very nicely. DPMS was enabled out of the box and sends my monitor into standby after 10 minutes of inactivity. Since this is a WM I'm using an autostart.sh hook as described in the Qtile Documentation to launch a few programs at login, including the compositor. I figured installing XScreenSaver would be a simple matter of adding it to my autostart.sh and then letting its power management override DPMS.
I installed XScreenSaver and cranked up an instance of xscreensaver-settings—No problem; I got notified that the daemon wasn't running and asked if I wanted to start it. I set "Blank After" to 30 minutes, checked "Enable Power Management" and set "Off After" to 120. After 30 minutes the screensaver came on, and 90 minutes later the monitor went into standby. Cool.
I added the following line to my autostart.sh file
xscreensaver --no-splash &and rebooted.
Here's where things got weird:
On login, Qtile's autostart.sh spawned an xscreensaver process running under the root of the (htop) process tree, as it does with the other programs—not under Xorg, which I believe is a function of how LightDM works. After 10 minutes the display went to sleep. Dammit. Okay, so what am I doing wrong?
If I run
xset -qI get
Screen Saver:
prefer blanking: no allow exposures: no
timeout: 0 cycle: 0
DPMS (Energy Star):
Standby: 600 Suspend: 600 Off: 600
DPMS is Enabled
Monitor is OnI have played with every setup variation I can think of:
I tried spawning the process from elsewhere, e.g. I placed the above line in my .profile (among other things). Nope.
I created /etc/X11/xorg.conf.d/10-monitor.conf as described in the Display Power Management Signaling article...
I tried disabling DPMS with an "Extensions" Section and rebooting. This just causes xset to report "DPMS is Disabled" and the whole system to behave like DPMS is not supported; the XScreenSaver power management options become grayed out and the display never goes to sleep.
I tried setting the "ServerFlags" Options to all 0's. This stopped DKMS from taking over long enough for the screensaver to blank, but again no display sleep.
It was at this point I noticed that if I run
xscreensaver-command --activateor start the xscreensaver-settings program and change the values, the DKMS timeout values reported by xset suddenly reflect those of the XScreenSaver. The same thing happens if I set the blank time to 5 minutes and let it run after a fresh login; the screensaver blanks before DKMS kicks in, but then unfortunately the monitor never goes to sleep.
I'm really running out of ideas here. XScreenSaver is supposed to be written to "just work" with DPMS, but right now it's not leaving me a lot of recourse.
Anyone have any ideas?
Offline