Debianization
Add debian directory and configuration file to build a Debian package darcs-hash:20060731213546-86b55-bbbde5940d66f28aa64317cc993906e14b39b229.gz
This commit is contained in:
147
debian/init.d
vendored
Executable file
147
debian/init.d
vendored
Executable file
@@ -0,0 +1,147 @@
|
||||
#! /bin/bash -e
|
||||
|
||||
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
|
||||
# ----- load init-functions if they exist -----
|
||||
|
||||
if [ -f /lib/lsb/init-functions ]; then
|
||||
. /etc/lsb-release
|
||||
. /lib/lsb/init-functions
|
||||
fi
|
||||
|
||||
# ----- Functions for printing messages (Works for debian and looks good in ubuntu too)
|
||||
|
||||
log_start()
|
||||
{
|
||||
case $DISTRIB_ID.$DISTRIB_RELEASE in
|
||||
Ubuntu.[0-4].*|Ubuntu.5.[0-9]|Ubuntu.5.10)
|
||||
log_begin_msg $1
|
||||
;;
|
||||
Ubuntu.*.*)
|
||||
log_daemon_msg $1
|
||||
;;
|
||||
*)
|
||||
echo -n $1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
log_end()
|
||||
{
|
||||
case $DISTRIB_ID.$DISTRIB_RELEASE in
|
||||
Ubuntu.*.*)
|
||||
log_end_msg $1
|
||||
;;
|
||||
*)
|
||||
if [ "$1" = "0" ]; then
|
||||
echo "Started"
|
||||
else
|
||||
echo "Error starting daemon, check the logs."
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
log_failure()
|
||||
{
|
||||
case $DISTRIB_ID.$DISTRIB_RELEASE in
|
||||
Ubuntu.*.*)
|
||||
log_failure_msg $1
|
||||
;;
|
||||
*)
|
||||
echo $1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# ----- set required environment -----
|
||||
|
||||
TRANS_NAME=jmc
|
||||
TRANS_DESC="Jabber Mail Component"
|
||||
TRANS_HOME=/usr/share/$TRANS_NAME
|
||||
TRANS_CONFIG=/etc/jabber/$TRANS_NAME.conf
|
||||
TRANS_USER=jabber
|
||||
TRANS_GROUP=daemon
|
||||
TRANS_PID=`grep "<pidfile>.*</pidfile>" $TRANS_CONFIG | sed 's:.*<pidfile>\(.*\)</pidfile>.*:\1:'`
|
||||
TRANS_DAEMON=/usr/bin/jmc
|
||||
TRANS_START="--chuid $TRANS_USER:$TRANS_GROUP --chdir $TRANS_HOME --pidfile $TRANS_PID"
|
||||
TRANS_STOP="--pidfile $TRANS_PID"
|
||||
TRANS_OPTIONS="-c $TRANS_CONFIG"
|
||||
TRANSPORT_DEFAULTS_FILE=/etc/default/$TRANS_NAME
|
||||
|
||||
# ----- Check if transport is enabled -----
|
||||
|
||||
if [ -s $TRANSPORT_DEFAULTS_FILE ]; then
|
||||
. $TRANSPORT_DEFAULTS_FILE
|
||||
case "x$ENABLE" in
|
||||
xtrue) ;;
|
||||
xfalse)
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
log_failure "Value of ENABLE in $TRANSPORT_DEFAULTS_FILE must be either 'true' or 'false';"
|
||||
log_failure "not starting $TRANS_NAME daemon."
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
else
|
||||
log_failure "$TRANSPORT_DEFAULTS_FILE not found. Not starting $TRANS_NAME daemon."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# ----- do the action -----
|
||||
|
||||
case "$1" in
|
||||
config)
|
||||
echo "Configuration:"
|
||||
echo " TRANS_NAME=$TRANS_NAME"
|
||||
echo " TRANS_DESC=$TRANS_DESC"
|
||||
echo " TRANS_HOME=$TRANS_HOME"
|
||||
echo " TRANS_CONFIG=$TRANS_CONFIG"
|
||||
echo " TRANS_USER=$TRANS_USER"
|
||||
echo " TRANS_PID=$TRANS_PID"
|
||||
echo " TRANS_DAEMON=$TRANS_DAEMON"
|
||||
echo " TRANS_OPTIONS=$TRANS_OPTIONS"
|
||||
;;
|
||||
|
||||
console)
|
||||
$TRANS_DAEMON $TRANS_OPTIONS
|
||||
;;
|
||||
|
||||
start)
|
||||
log_start "Starting $TRANS_DESC: "
|
||||
if start-stop-daemon $TRANS_START --start --oknodo --exec $TRANS_DAEMON -- $TRANS_OPTIONS $DAEMON_OPTS >/dev/null 2>&1; then
|
||||
log_end 0
|
||||
else
|
||||
log_end 1
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
log_start "Stopping $TRANS_DESC: "
|
||||
if start-stop-daemon --stop $TRANS_STOP --retry 10 --oknodo 2>&1; then
|
||||
log_end 0
|
||||
else
|
||||
log_end 1
|
||||
fi
|
||||
;;
|
||||
reload|force-reload)
|
||||
log_start "Reloading $TRANS_DESC: "
|
||||
if start-stop-daemon --stop $TRANS_STOP --signal HUP >/dev/null 2>&1; then
|
||||
log_end 0
|
||||
else
|
||||
log_end 1
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 5
|
||||
$0 start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: /etc/init.d/$TRANS_NAME {config|console|start|stop|restart|reload|force-reload}" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
Reference in New Issue
Block a user