summaryrefslogtreecommitdiffstats
path: root/abs/core/hal/hald
blob: 3d016edbdbfe81aaebee3d837b7ccedc355ab8c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash

# general config
. /etc/rc.conf
. /etc/rc.d/functions

case "$1" in
    start)
       #Check for running dbus, start when not running
       ck_daemon dbus && /etc/rc.d/dbus start
       if [ -x /etc/rc.d/acpid ]; then
          ck_daemon acpid && /etc/rc.d/acpid start
       fi
       stat_busy "Starting Hardware Abstraction Layer"
       if [ ! -x /var/cache/hald ] ; then
          install -m755 -g 82 -o 82 -d /var/cache/hald
       fi
       if [ ! -x /var/run/hald ]; then
          install -m755 -g 82 -o 82 -d /var/run/hald
       fi
       if [ ! -x /var/run/hald/hald-local ]; then
          install -m755 -g 0 -o 0 -d /var/run/hald/hald-local
       fi
       if [ ! -x /var/run/hald/hald-runner ]; then
          install -m755 -g 0 -o 0 -d /var/run/hald/hald-runner
       fi
       /usr/sbin/hald
       if [ $? -gt 0 ]; then
          stat_fail
       else
          add_daemon hald
          stat_done
       fi
       ;;
    stop)
       stat_busy "Stopping Hardware Abstraction Layer"
       [ -f /var/run/hald.pid ] && kill `cat /var/run/hald.pid` &> /dev/null
       if [ $? -gt 0 ]; then
          stat_fail
       else
          rm_daemon hald
          stat_done
       fi
       ;;
    restart)
       $0 stop
       sleep 1
       $0 start
       ;;
    *)
       echo "usage: $0 {start|stop|restart}"
       ;;
esac
exit 0