You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
2.2 KiB
107 lines
2.2 KiB
#!/bin/sh
|
|
# /etc/acpi/default.sh
|
|
# Default acpi script that takes an entry for all actions
|
|
|
|
set $*
|
|
|
|
group=${1%%/*}
|
|
action=${1#*/}
|
|
device=$2
|
|
id=$3
|
|
value=$4
|
|
|
|
BACKLIGHT_DIR=/sys/devices/virtual/backlight/acpi_video0
|
|
|
|
# increase backlight
|
|
inc_backlight() {
|
|
local cur_backlight=$(cat $BACKLIGHT_DIR/actual_brightness)
|
|
local max_backlight=$(cat $BACKLIGHT_DIR/max_brightness)
|
|
[[ $cur_backlight -lt $max_backlight ]] &&
|
|
echo $(($cur_backlight + 1)) >$BACKLIGHT_DIR/brightness
|
|
}
|
|
|
|
# decrease backlight
|
|
dec_backlight() {
|
|
local cur_backlight=$(cat $BACKLIGHT_DIR/actual_brightness)
|
|
local max_backlight=$(cat $BACKLIGHT_DIR/max_brightness)
|
|
|
|
[[ $cur_backlight -gt 0 ]] &&
|
|
echo $(($cur_backlight - 1)) >$BACKLIGHT_DIR/brightness
|
|
}
|
|
|
|
log_unhandled() {
|
|
logger "ACPI event unhandled: $*"
|
|
}
|
|
|
|
case "$group" in
|
|
button)
|
|
case "$action" in
|
|
power)
|
|
/sbin/init 0
|
|
;;
|
|
|
|
# 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.
|
|
#lid)
|
|
# xset dpms force off
|
|
# ;;
|
|
|
|
*) log_unhandled $* ;;
|
|
esac
|
|
;;
|
|
|
|
ac_adapter)
|
|
case "$value" in
|
|
# Add code here to handle when the system is unplugged
|
|
# (maybe change cpu scaling to powersave mode). For
|
|
# multicore systems, make sure you set powersave mode
|
|
# for each core!
|
|
#*0)
|
|
# cpufreq-set -g powersave
|
|
# ;;
|
|
|
|
# Add code here to handle when the system is plugged in
|
|
# (maybe change cpu scaling to performance mode). For
|
|
# multicore systems, make sure you set performance mode
|
|
# for each core!
|
|
#*1)
|
|
# cpufreq-set -g performance
|
|
# ;;
|
|
|
|
*) log_unhandled $* ;;
|
|
esac
|
|
;;
|
|
sony)
|
|
case "$action" in
|
|
hotkey)
|
|
case "$device" in
|
|
SNC)
|
|
case "$id" in
|
|
*01)
|
|
case "$value" in
|
|
*010)
|
|
dec_backlight
|
|
;;
|
|
*011)
|
|
inc_backlight
|
|
;;
|
|
*040)
|
|
eject
|
|
;;
|
|
*) log_unhandled $* ;;
|
|
esac ;;
|
|
*) log_unhandled $* ;;
|
|
esac
|
|
;;
|
|
*) log_unhandled $* ;;
|
|
esac
|
|
;;
|
|
*) log_unhandled $* ;;
|
|
esac
|
|
;;
|
|
|
|
*) log_unhandled $* ;;
|
|
esac
|