#!/bin/sh
#
# This script is invoked by pmud to configure the system for a
# given power level. The desired level is indicated by the first
# argument and can take the following values:
#
# minimum    = minimum power
# medium     = medium power 
# maximum    = full power  
# lid-opened = cover has been opened
# lid closed = cover has been closed
# sleep      = prepare for sleep
# wakeup     = system woke up after a sleep
# warning    = low battery condition detected, issue a warning to users
#
# the second argument gives the current power source, and can take the
# following values:
#
# ac
# battery
#

PATH=/bin:/sbin:/usr/bin:/usr/sbin
[ -x logger ] && \
	logger -p daemon.info -t pmcs-pmud "called with $1 $2"

cd `dirname $0`

case "$1" in
  warning)
    wall "Low battery - system will go down now!"
    ;;
  minimum)
    run-parts --arg="powersave" --arg="$2" event.d
    ;;
  medium)
    run-parts --arg="custom" --arg="$2" event.d
    ;;
  maximum)
    run-parts --arg="performance" --arg="$2" event.d
    ;;
  lid-opened)
    run-parts --arg="cover-open" --arg="$2" --arg="open" event.d
    ;;
  lid-closed)
    run-parts --arg="cover-close" --arg="$2" --arg="close" event.d
    ;;
  sleep)
    [ -d suspend.d ] && run-parts --arg="suspend" --arg="$2" --arg="ram" suspend.d
    run-parts --arg="suspend" --arg="$2" --arg="ram" event.d
    ;;
  wakeup)
    [ -d resume.d ] && run-parts --arg="resume" --arg="$2" --arg="ram" resume.d
    run-parts --arg="resume" --arg="$2" --arg="ram" event.d
    ;;
esac

