#!/bin/sh
#
# mythbackend	Server component of MythTV
#
# chkconfig: 2345 86 14
# description: Starts the mythbackend process as a daemon after the XWindows \
#              system is started, in runlevel 5. This allows scheduled \
#              recordings to occur without manual intervention.
# processname: mythbackend
# pidfile: /var/run/mythtv/mythbackend.pid
# config: /etc/sysconfig/mythbackend

# Source function library.
. /etc/rc.d/init.d/functions

if [ -f /etc/sysconfig/mythbackend ]; then
	. /etc/sysconfig/mythbackend
fi

## Defaults, override them in /etc/sysconfig/mythbackend
: ${MYTHTV_HOME=/var/lib/mythtv}

OPTIONS="$OPTIONS --daemon --logfile /var/log/mythtv/mythbackend.log --pidfile /var/run/mythtv/mythbackend.pid"

start() {
	# Start daemons.
	if [ ! -f /var/lock/subsys/mythbackend ]; then
		msg_starting "Mythbackend"
		daemon --user mythtv "cd $MYTHTV_HOME && /usr/sbin/mythbackend $OPTIONS"
		RETVAL=$?
		[ $RETVAL -eq 0 ] && touch /var/lock/subsys/mythbackend
	else
		msg_already_running "Mythbackend"
	fi
}

stop() {
	# Stop daemons.
	if [ -f /var/lock/subsys/mythbackend ]; then
		msg_stopping "Mythbackend"
		killproc --pidfile mythtv/mythbackend.pid mythbackend
		rm -f /var/lock/subsys/mythbackend /var/run/mythtv/mythbackend.pid >/dev/null 2>&1
	else
		msg_not_running "Mythbackend"
	fi
}

RETVAL=0
# See how we were called.
case "$1" in
start)
	start
	;;
stop)
	stop
	;;
restart)
	stop
	start
	;;
flush-logs)
	if [ -f /var/lock/subsys/mythbackend ]; then
		show "Rotating %s logs" "Mythbackend"
		killproc --pidfile mythtv/mythbackend.pid mythbackend -HUP
	fi
	;;
status)
	status mythbackend
;;
*)
	msg_usage "$0 {start|stop|restart|reload|force-reload|status}"
	exit 3
esac

exit $RETVAL
