#!/bin/sh
#
### BEGIN INIT INFO
# Provides: weston
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
### END INIT INFO

if test -e /etc/default/weston ; then
        . /etc/default/weston
fi

killproc() {
        pid=`/bin/pidof $1`
        [ "$pid" != "" ] && kill $pid
}

read CMDLINE < /proc/cmdline
for x in $CMDLINE; do
        case $x in
        weston=false)
		echo "Weston disabled"
		exit 0;
                ;;
        esac
done

case "$1" in
  start)
        . /etc/profile
	export HOME=ROOTHOME

        WESTON_USER=weston weston-start $OPTARGS &
  ;;

  stop)
        echo "Stopping Weston"
        killproc weston
  ;;

  restart)
	$0 stop
        sleep 1
        $0 start
  ;;

  *)
        echo "usage: $0 { start | stop | restart }"
  ;;
esac

exit 0
