This is the script I am using. It is spawned by the default.sh from /etc/acpi:
-------------------------- SCRIPT START --------------------------
# default display on current host
export XAUTHORITY="/home/<your_user>/.Xauthority"
DISPLAY=:0.0
# find out if monitor is on
STATUS=`cat /proc/acpi/button/lid/LID0/state`
logger "monitor: $STATUS"
# find out if DPMS is enabled
DPMS=`xset -display $DISPLAY -q | grep -e 'DPMS is'`
logger "dpms: $DPMS"
# enable DPMS if disabled
if [ "$DPMS" == " DPMS is Disabled" ]
then
logger "Enabling DPMS ..."
xset -display $DISPLAY +dpms
fi
if [ `echo $STATUS | grep -i closed | wc -l` -eq 1 ]
then
logger "[`date`] Turning display OFF"
xset -display $DISPLAY dpms force off
else
logger "[`date`] Turning display ON" # shows up in log
xset -display $DISPLAY dpms force on # turn monitor on
xset -display $DISPLAY s activate # un-blank monitor
fi
#clean up
unset STATUS
unset DPMS
# comment this line out if you're manually running this script from a
shell (put a # in front of it)
unset DISPLAY
exit 0
-------------------------- SCRIPT STOP --------------------------
Change the <your_user> variable.
I had also to set xscreensaver to switch off my monitor instead of
blanking it, because I think (not sure) that xscreensaver was
switching on my monitor when it was supposed to start the screensaver
(as after a while, my monitor was switched back on, and as I didn't
see that happening since my xscreensaver modification, I can only
assume that was the problem).
HTH,
Greg
On Fri, Jan 23, 2009 at 8:14 AM, Joshua Murphy <[email protected]> wrote:
> On Thu, Jan 22, 2009 at 8:24 PM, BRM <[email protected]> wrote:
>> I'm running a Dell D600, and I've located a number of tools for it but I am
>> not seeing anything related to when I close the lid. Since I got Gentoo
>> running on it, the Monitor continues running when I close the lid.
>>
>> I've found several sources for doing something as an ACPI event, which seems
>> to be the right method. I can toggle the button with the lid open and cat
>> /etc/acpi/button/lid/LID/state and see it change between 'open' and
>> 'closed'; and I know I could write myself a little script do something like
>> calling radeontool to turn off the backlight, but I'd like to find a more
>> official method.
>>
>> I mostly run KDE 3.5 (I'll go to KDE4 when I can...once portage 2.2 comes
>> out and all), but I didn't see anything for a 'turn off monitor on lid
>> close' setting (preferrably root controlled so that it affects all users).
>> The only thing I can find is a the standby/suspend/shutdown/logoff, system
>> performance, and CPU throttling. I don't really want to do any of that -
>> just put the monitor into stand-by, not necessarily the whole system.
>>
>> Any how...I'd really like to get this working.
>>
>> TIA,
>>
>> Ben
>
> In...
> /etc/acpi/default.sh
>
> there's a comment (with commented code you can use following it)...
> # if your laptop doesnt turn on/off the display via hardware
> # switch and instead just generates an acpi event, you can force
> # X to turn off the display via dpms. note you will have to run
> # 'xhost +local:0' so root can access the X DISPLAY.
>
> if radeontool or something will allow you to disable the display even
> when you aren't in X, or without proper access to the display (like
> xset requires) you might be able to even escape needing that xhost
> setting. No way of testing it at all myself though.
>
> --
> Poison [BLX]
> Joshua M. Murphy
>
>