#!/bin/sh

# chkconfig: 2345 20 80
# description: Manage assignation of hostnames for clients
# pidfile: /var/run/doraemon.pid
# config: /etc/doraemon.ini

### BEGIN INIT INFO
# Provides:          doraemon
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Helps client to join the domain and maintain itself
# Description:       Helps client to join the domain and maintain itself
### END INIT INFO

# Change the next 3 lines to suit where you install your script and what you want to call it
DAEMON=/usr/bin/doraemon.py
DAEMON_NAME=doraemon

# Add any command line options for your daemon here
DAEMON_OPTS=""

# This next line determines what user the script runs as.
# Root generally not recommended but necessary if you are using the Raspberry Pi GPIO from Python.
#DAEMON_USER=mac2hostname
#DAEMON_GROUP=mac2hostname

# The process ID of the script when it runs is stored here:
LOGFILE=/var/log/$DAEMON_NAME.log
PIDFILE=/var/run/$DAEMON_NAME.pid
lockfile=/var/lock/subsys/$DAEMON_NAME

. /etc/rc.d/init.d/functions
. /etc/sysconfig/network

[ "$NETWORKING" = "no" ] && exit 0

do_start () {
  echo -n $"Starting $DAEMON_NAME: "
  daemon --pidfile=$PIDFILE "python $DAEMON >>$LOGFILE 2>/dev/null &"
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && touch $lockfile
  return $RETVAL
}

do_stop () {
  echo -n $"Stopping $DAEMON_NAME: "
  killproc -p $PIDFILE python
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && rm -f $lockfile
  return $RETVAL
}

case "$1" in

    start|stop)
        do_${1}
        ;;

    restart|reload|force-reload)
        do_stop
        do_start
        ;;

    status)
        status -p $PIDFILE python
        ;;

    *)
        echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|restart|status}"
        exit 1
        ;;

esac
exit 0