]> git.pld-linux.org Git - packages/acpid.git/blame - acpid.init
- updated to 2.0.34, include x32
[packages/acpid.git] / acpid.init
CommitLineData
94f6e9a1
PG
1#!/bin/sh
2#
3# acpid Starts the acpi daemon
4#
5# chkconfig: 345 44 56
6# description: Listen and dispatch ACPI events from the kernel
7# processname: acpid
8#
9# pidfile: /var/run/acpid.pid
10
11# Source function library.
12. /etc/rc.d/init.d/functions
13
d8325167
PG
14# Initial values (just in case):
15LAPTOP_MODULES=""
16VARIOUS_MODULES=""
17ASUS_LAPTOP=""
18TOSHIBA_LAPTOP=""
180a2240 19MODULES=""
d8325167 20
94f6e9a1
PG
21# Configuration file.
22. /etc/sysconfig/acpid
23
180a2240
ER
24# As the name says. If the kernel supports modules,
25# it'll try to load the ones listed in "MODULES".
26load_modules() {
27 [ -f /proc/modules ] || return 0
28
29 if [ "$MODULES" = "all" ]; then
ed21a22b 30 MODULES=$(sed -rn 's#^kernel/(drivers/acpi|drivers/misc/.*_acpi)/([^/]+/)*(.*)\.ko\.gz:.*#\3#p' /lib/modules/$(uname -r)/modules.dep)
180a2240
ER
31 else
32 # assemble from old lists
33 MODULES="$MODULES $LAPTOP_MODULES"
34 MODULES="$MODULES $VARIOUS_MODULES"
35 if is_yes "$ASUS_LAPTOP"; then
36 MODULES="$MODULES asus_acpi"
37 fi
38 if is_yes "$TOSHIBA_LAPTOP"; then
39 MODULES="$MODULES toshiba_acpi"
40 fi
41 if is_yes "$IBM_LAPTOP"; then
42 MODULES="$MODULES ibm_acpi"
43 fi
44 # strip spaces
45 MODULES=$(echo ${MODULES})
46 fi
47
48 if [ -z "$MODULES" ]; then
49 return
50 fi
51
bf90ac04
ER
52 # see if the modules are already loaded
53 if [ "$(lsmod | grep -E '^('$(echo $MODULES | tr ' ' '|')')\b' | wc -l)" = "$(echo $MODULES | wc -w)" ]; then
54 return
55 fi
56
180a2240
ER
57 show "Loading ACPI modules..."; busy
58 modprobe --all $MODULES && ok || fail
59}
60
37b4ae3e
ER
61# Start daemons.
62start() {
a312611c 63 if [ -f /var/lock/subsys/acpid ]; then
121466a7
ER
64 msg_already_running "ACPI Event Daemon"
65 return
66 fi
09f3d1d4 67
180a2240 68 load_modules
121466a7 69
eb588624
ER
70 if is_yes "$NETLINK"; then
71 PROGRAM_ARGS="$PROGRAM_ARGS -n"
72 fi
73 if [ "$CLIENTMAX" ]; then
74 PROGRAM_ARGS="$PROGRAM_ARGS -C $CLIENTMAX"
75 fi
76
121466a7
ER
77 # starting:
78 msg_starting "ACPI Event Daemon"
79 daemon /usr/sbin/acpid $PROGRAM_ARGS
80 RETVAL=$?
81 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/acpid
37b4ae3e
ER
82}
83
84# Stop daemons.
85stop() {
121466a7
ER
86 if [ ! -f /var/lock/subsys/acpid ]; then
87 msg_not_running "ACPI Event Daemon"
88 return
89 fi
90
91 msg_stopping "ACPI Event Daemon"
92 killproc acpid
93 rm -f /var/lock/subsys/acpid >/dev/null 2>&1
94}
95
96condrestart() {
97 if [ ! -f /var/lock/subsys/acpid ]; then
98 msg_not_running "ACPI Event Daemon"
99 RETVAL=$1
100 return
c0743e1f 101 fi
121466a7
ER
102
103 stop
104 start
37b4ae3e
ER
105}
106
5812ab6f
ER
107reload() {
108 if [ -f /var/lock/subsys/acpid ]; then
109 msg_not_running "ACPI Event Daemon"
110 RETVAL=7
111 return
112 fi
113
114 msg_reloading "ACPI Event Daemon"
115 killproc acpid -HUP
116 RETVAL=$?
117}
118
37b4ae3e
ER
119RETVAL=0
120# See how we were called.
121case "$1" in
122 start)
123 start
124 ;;
125 stop)
126 stop
127 ;;
128 restart)
129 stop
130 start
c0743e1f 131 ;;
121466a7
ER
132 try-restart)
133 condrestart 0
134 ;;
1b772a07 135 reload|force-reload)
5812ab6f
ER
136 reload
137 ;;
138 load-modules)
139 load_modules
c0743e1f 140 ;;
c0743e1f 141 status)
142 status acpid
143 ;;
144 *)
5812ab6f 145 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|load-modules|status}"
1b772a07 146 exit 3
94f6e9a1 147esac
c0743e1f 148
149exit $RETVAL
This page took 0.103653 seconds and 4 git commands to generate.