GDM and powersave

Reid Rivenburgh reidr at pobox.com
Mon Dec 15 20:17:25 UTC 2008


On Mon, Dec 15, 2008 at 1:00 PM, Mike Cloaked <mike.cloaked at gmail.com> wrote:
>
> Mike Cloaked wrote:
>>
>> On a system I have installed clean F10 the powersave kicks in on the
>> monitor just fine if set in the screensaver area in gnome for a logged in
>> user.  However if the user logs out, then the screen blanks out after some
>> period as expected, but the monitor does not go into powersave any any
>> point.
>>
>>
>
> OK I gave up - and changed to kdm - this has a nicer greeter than gdm and
> does go into powersave correctly after some period which is reasonable.

Well, that's one solution!  I've invested a lot of time in a related
problem myself.  My setup is such that I rarely logout, I just switch
back to the gdm greeter after being idle for awhile or explicitly
clicking a custom "switch" button.  Both run this script:

--------
#!/bin/bash

# Switch back to gdm greeter.
gdmflexiserver

sleep 10

# Next line doesn't work.
#sudo xset dpms force off

# Try all combinations of gdm xauth files and DISPLAYs.  Overkill, but
# works....
for file in $( ls /var/run/gdm );
do
   for (( i=0; i<10; i++ ));
   do
      sudo XAUTHORITY=/var/run/gdm/$file xset -display :$i dpms force off
   done
done
--------

That's pretty grisly, but it seems to work (if you have sudo set up),
turning the monitor off in about 10 seconds.  You could probably put
something similar in the correct gdm script (that is, if you weren't
already using kdm).  I always forget which does what when, but one of
the directories under /etc/gdm/.

It sounds like the default X dpms settings never kick in for you; does
it eventually turn off if you move the mouse or press a key at the
greeter screen?  Maybe the idle timer needs to be reset by sending an
event, assuming it's not starting a fresh gdm X server.

This all feels like black magic, since I don't fully understand how
gdm/X/xauth/etc. interact.  Maybe the script above will be useful to
someone.  Or maybe there's a proper way to do it!

reid




More information about the users mailing list