source: roaraudio/dist/debian-like/roaraudio @ 1147:d746d3147d3b

Last change on this file since 1147:d746d3147d3b was 1147:d746d3147d3b, checked in by phi, 15 years ago

corrected use of ROARD_DRIVER_OPTIONS config var

  • Property exe set to *
File size: 2.2 KB
Line 
1#!/bin/sh
2#
3set -e
4
5PATH=/sbin:/bin:/usr/sbin:/usr/bin
6DAEMON=/usr/bin/roard
7ROARCTL=/usr/bin/roarctl
8NAME=roaraudio
9DESC="RoarAudio"
10
11#PIDFILE=/var/run/$NAME.pid
12SCRIPTNAME=/etc/init.d/$NAME
13
14# Gracefully exit if the package has been removed.
15test -x $DAEMON || exit 0;
16
17# Read config file if it is present.
18if [ -r /etc/default/$NAME ]
19then
20    . /etc/default/$NAME
21fi
22
23if [ "$ROARAUDIO_DEFAULT_SOCKET" != '' ]
24then
25 ln -s "$ROARAUDIO_DEFAULT_SOCKET" /etc/roarserver
26fi
27
28[ "$ROARD" = 'YES' ] || exit 0;
29
30ROARD_OPTS="--daemon $ROARD_OPTS"
31
32[ "$ROARD_REALTIME" = 'YES'    ] && ROARD_OPTS="--realtime $ROARD_OPTS"
33[ "$ROARD_REALTIME" = 'DOUBLE' ] && ROARD_OPTS="--realtime --realtime $ROARD_OPTS"
34
35case "$ROARD_AF" in
36  UNIX|unix)
37   ROARD_OPTS="-u $ROARD_OPTS"
38  ;;
39  TCP|tcp)
40   ROARD_OPTS="-t $ROARD_OPTS"
41  ;;
42  DECnet|DECNET|decnet)
43   ROARD_OPTS="-n $ROARD_OPTS"
44  ;;
45esac
46
47[ "$ROARD_SOCKET" = '' ]  || ROARD_OPTS="--sock $ROARD_SOCKET $ROARD_OPTS"
48[ "$ROARD_PORT"   = '' ]  || ROARD_OPTS="--port $ROARD_PORT $ROARD_OPTS"
49
50if [ "$ROARD_OBJECT" = '' ]
51then
52 [ "$ROARD_HOST" = '' ]   || ROARD_OPTS="--bind $ROARD_HOST $ROARD_OPTS"
53else
54 ROARD_OPTS="--sock $ROARD_HOST::$ROARD_OBJECT $ROARD_OPTS"
55fi
56
57[ "$ROARD_RATE"    = '' ] || ROARD_OPTS="-R $ROARD_RATE $ROARD_OPTS"
58[ "$ROARD_CHANNEL" = '' ] || ROARD_OPTS="-C $ROARD_CHANNEL $ROARD_OPTS"
59[ "$ROARD_BITS"    = '' ] || ROARD_OPTS="-B $ROARD_BITS $ROARD_OPTS"
60
61[ "$ROARD_DRIVER" = '' ]  || ROARD_OPTS="-o $ROARD_DRIVER $ROARD_OPTS"
62[ "$ROARD_DEVICE" = '' ]  || ROARD_OPTS="-O $ROARD_DEVICE $ROARD_OPTS"
63[ "$ROARD_DRIVER_OPTIONS" = '' ] && ROARD_DRIVER_OPTIONS='sync'
64ROARD_OPTS="-oP -oO $ROARD_DRIVER_OPTIONS $ROARD_OPTS"
65
66if [ "$ROARD_USER" = '' ]
67then
68 ROARD_OPTS="--setuid -U roard $ROARD_OPTS"
69else
70 ROARD_OPTS="--setuid -U $ROARD_USER $ROARD_OPTS"
71fi
72
73ROARD_OPTS="--setgid $ROARD_OPTS"
74[ "$ROARD_GROUP"  = '' ]  || ROARD_OPTS="-G $ROARD_GROUP $ROARD_OPTS"
75
76case "$1" in
77  start)
78        echo -n "Starting $DESC: $NAME"
79        $DAEMON $ROARD_OPTS
80        echo "."
81        ;;
82  stop)
83        echo -n "Stopping $DESC: $NAME"
84        # FIXME: use --server here
85        $ROARCTL exit > /dev/null
86        echo "."
87        ;;
88  restart)
89        echo -n "Restarting $DESC: $NAME"
90        $DAEMON --restart $ROARD_OPTS
91        echo "."
92        ;;
93  *)
94        echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2
95        exit 1
96        ;;
97esac
98
99exit 0
Note: See TracBrowser for help on using the repository browser.