slackbuilds_ponce/network/bitlbee/rc.bitlbee

97 lines
3 KiB
Text
Raw Normal View History

#!/bin/sh
# Slackware build script for "bitlbee".
# Copyright 2007-2016 Michiel van Wessem, Leicester, United Kingdom
# Copyright 2016 Marcel Saegebarth <marc@mos6581.de>
# Copyright 2016 Avinash H. Duduskar <avinash.duduskar@gmail.com>
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# /etc/rc.d/rc.bitlbee - Start/stop/restart the bitlbee daemon.
# To make bitlbee start automatically at boot, make this
# file executable: chmod 0755 /etc/rc.d/rc.bitlbee and add it
# to slackware's startup scripts (ie: rc.local)
#
BITLBEE_CONFIG="/etc/bitlbee/bitlbee.conf"
BITLBEE_PORT="6667"
BITLBEE_OPTS="-F"
PIDFILE="/var/run/bitlbee.pid"
SOCKFILE="/var/run/bitlbee.sock"
bitlbee_start() {
echo "Starting bitlbee on port $BITLBEE_PORT..."
CHECK=$(pgrep -u bitlbee -G 250 -l -f "/usr/sbin/bitlbee -u bitlbee -p $BITLBEE_PORT $BITLBEE_OPTS")
STATUS=$?
# make sure bitlbee isn't running yet
if [ "$STATUS" == "1" ]; then
touch $PIDFILE
chown bitlbee:bitlbee $PIDFILE
# Start bitlbee in forked mode.
# /usr/sbin/bitlbee -c $BITLBEE_CONFIG # if you have configured bitlbee properly.
/usr/sbin/bitlbee -u bitlbee -p $BITLBEE_PORT $BITLBEE_OPTS
else
echo "bitlbee is already active and running under PID: $(cat $PIDFILE)"
echo "if you think this is wrong, remove the offending PID file"
echo "and restart bitlbee"
exit 1
fi
}
bitlbee_stop() {
echo -n "Stopping bitlbee..."
# Are we running a normal daemon or are we forked
if [ "$BITLBEE_OPTS" == "-D" ]; then
if [ -r $PIDFILE ]; then
kill $(cat $PIDFILE)
rm $PIDFILE
echo "done"
fi
else
killall bitlbee
rm $PIDFILE
echo "done"
fi
}
# Let's see how we are being called.
case "$1" in
start)
bitlbee_start
;;
stop)
bitlbee_stop
;;
restart)
bitlbee_stop
sleep 3
bitlbee_start
;;
*)
echo "Usage: $(basename $0) {start|stop|restart}"
exit 1
;;
esac