#! /bin/sh
#
# skeleton	example file to build /etc/init.d/ scripts.
#		This file should be used to construct scripts for /etc/init.d.
#
#		Written by Miquel van Smoorenburg <miquels@cistron.nl>.
#		Modified for Debian 
#		by Ian Murdock <imurdock@gnu.ai.mit.edu>.
#
# Version:	@(#)skeleton  1.9  26-Feb-2001  miquels@cistron.nl
#

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/headphoned
NAME=headphoned
USER=user
DESC="Headphone daemon"

# XXX: The following is needed for the D-Bus connection to work
export DBUS_SESSION_BUS_ADDRESS='unix:path=/tmp/session_bus_socket'
# XXX end

# Add the headphoned FIFO to MPlayer's global configuration
CONFIG_LINE="input:file=/etc/headphoned/mplayer-input"
MPLAYER_CONF="/etc/mplayer/mplayer.conf"
if [ -f "$MPLAYER_CONF" ]; then
	if ! grep "$CONFIG_LINE" "$MPLAYER_CONF" >/dev/null; then
		echo -n "Updating $MPLAYER_CONF... "
		echo $CONFIG_LINE >>$MPLAYER_CONF
		echo "done."
	fi
fi
# End Add the headphoned FIFO to MPlayer's global configuration

test -x $DAEMON || exit 0

set -e

case "$1" in
  start)
	echo -n "Starting $DESC: "
	start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \
		-b --user $USER --chuid $USER --exec $DAEMON -- $DAEMON_OPTS
	echo "$NAME."
	;;
  stop)
	echo -n "Stopping $DESC: "
	_PIDS=`pidof $DAEMON || echo ""`
	if [ "$_PIDS" != "" ]; then
		kill $_PIDS
	fi
	#start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
	#	--user $USER --chuid $USER --exec $DAEMON
	echo "$NAME."
	;;
  reload)
	#
	#	If the daemon can reload its config files on the fly
	#	for example by sending it SIGHUP, do it here.
	#
	#	If the daemon responds to changes in its config file
	#	directly anyway, make this a do-nothing entry.
	#
	# echo "Reloading $DESC configuration files."
	# start-stop-daemon --stop --signal 1 --quiet --pidfile \
	#	/var/run/$NAME.pid --exec $DAEMON
	;;
  force-reload)
	#
	#	If the "reload" option is implemented, move the "force-reload"
	#	option to the "reload" entry above. If not, "force-reload" is
	#	just the same as "restart" except that it does nothing if the
	#   daemon isn't already running.
	# check wether $DAEMON is running. If so, restart
	#start-stop-daemon --stop --test --quiet --pidfile \
	#	--user $USER --chuid $USER /var/run/$NAME.pid --exec $DAEMON \
	#&& $0 restart \
	#|| exit 0
	;;
  restart)
    echo -n "Restarting $DESC: "
	_PIDS=`pidof $DAEMON || echo ""`
	if [ "$_PIDS" != "" ]; then
		kill $_PIDS
	fi
	#start-stop-daemon --stop --quiet --pidfile \
	#	--user $USER --chuid $USER /var/run/$NAME.pid --exec $DAEMON
	sleep 1
	start-stop-daemon --start --quiet --pidfile -b --user $USER \
		--chuid $USER /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS
	echo "$NAME."
	;;
  *)
	N=/etc/init.d/$NAME
	# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
	echo "Usage: $N {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0
