On 01/26/2013 12:39 pm, Tormod Volden wrote:
On Thu, Jan 24, 2013 at 6:45 PM, Steven Rosenberg wrote:
I am seeing this same bug in Debian Wheezy with Xfce. I get similar output
from

$ xset q

Despite what I have set in xscreensaver, DPMS is blanking the screen at 600
seconds (aka 10 minutes).

After login, if you go into xscreensaver and adjust any settings, the screensaver will then work at the expected intervals. Another check of xset
q will show the values you entered in xscreensaver.

I'm not sure what is happening here, but it looks like xscreensaver is still
active but not changing the values via xset at login.

I've written a script to get around this -- to manually reset the DPMS values via xset, but it's an ugly hack, and it would be better to figure out
what's going on with xscreensaver at login.

Maybe stupid question, but does this still happen if you disable the
autostart of xscreensaver or even remove the package?

So could the problem be that if xscreensaver settings are set to
"disable screen saver" it doesn't touch anything, and some default
DPMS value (from X11) will be active? And users expect that
xscreensaver will set DPMS to never blank if "screen saver" is
disabled?

I'm not sure if this bug should be filed against xscreensaver, or some other package. I wouldn't know which package to look at.

What I can tell you is that this is a Debian Wheezy bug.

On my system while running Xfce, I checked to make sure xscreensaver was running in the background after login. It was.

But a look at the DPMS settings via xset shows the default values:

$ xset q | tail -n 4

DPMS (Energy Star):
  Standby: 600    Suspend: 0    Off: 900
  DPMS is Enabled
  Monitor is On

At this point xscreensaver is running, but something else (maybe in X11?) is telling the screen to blank at 600 seconds and turn off at 900 seconds. If your xscreensaver settings are longer than this (10 minutes), xscreensaver will NEVER activate -- your screen will always blank at 10 minutes.

But if you go into xscreensaver settings at all and make a change or not, the DPMS values as output by xset do change. In my case, they reflect the values I have in xscreensaver:

$ xset q | tail -n 4

DPMS (Energy Star):
  Standby: 7200    Suspend: 7200    Off: 14400
  DPMS is Enabled
  Monitor is On

Now remember, xscreensaver is being started at login. I'm not sure how or where. But something is setting DPMS values AFTER the xscreensaver daemon is started, and that process takes over the DPMS settings unless, I believe, you have an xscreensaver value of less than 10 minutes in your settings.

I believe that xscreensaver will blank the screen earlier than 10 minutes if you have it set that way, but if you have it set longer than 10 minutes, the DPMS settings at login will prevail.

To get around this, I wrote a script that restarts xscreensaver at login but with a slight delay. I run this in Xfce's Session and Startup, and with a 20-second delay in the Bash script, I get the proper DPMS values (the second example above).

Here is the script:

#! /bin/bash
#
# The purpose of this script is to restart
# xscreensaver in Debian Wheezy and override whatever
# is resetting the DPMS values in xset.
# This script was written on 1/27/13
#
sleep 20
xscreensaver-command -restart
exit 0

That takes care of the problem in Xfce.

I'm not sure whether or not the running of this script affects screensaver settings in GNOME 3. GNOME 3 doesn't suffer from this problem: Screen-blanking in GNOME 3 follows what the user asks for in the settings.

So something in the various scripts during an Xfce login is overwriting DPMS values that xscreensaver tries to set for the session. The questions are what and where -- and how to make it so xscreensaver's settings prevail.


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to