slackbuilds/xap/calibre-bin/rc.calibre-server
2022-01-22 15:59:13 +01:00

65 lines
1.6 KiB
Bash
Executable file

#!/bin/bash
PIDFILE=/tmp/calibre-server.pid
RUNAS=gwh
PORT=8081
# uncomment and adapt to enable authtentication
AUTH="" # " --username=\"$RUNAS\" --password=\"password\""
OPTIONS=" --enable-local-write"
LOGFILE=/home/$RUNAS/.calibre-server.log
CALIBRE_LIBRARY_PATH="/home/$RUNAS/Documents/eBooks/Livres/"
start() {
echo "Starting Calibre server..."
if [ ! -d $CALIBRE_LIBRARY_PATH ]; then
echo "Library $CALIBRE_LIBRARY_PATH isn't accessible"
exit
fi
su $RUNAS -c "calibre-server --port=$PORT --pidfile=$PIDFILE --log=$LOGFILE --daemonize $AUTH $OPTIONS \"$CALIBRE_LIBRARY_PATH\"" &
[ $? -ne 0 ] && echo "Could not start calibre-server."
}
stop() {
echo "Stopping Calibre server..."
if [ ! -e $PIDFILE ]; then
echo "Could not find pidfile: $PIDFILE"
exit
fi
read PID < $PIDFILE
ps aux | grep "$PID" | grep 'calibre-server' > /dev/null
RUNNING=$?
if [ $RUNNING -eq 0 ]; then
kill $PID
[ $? -eq 0 ] && rm $PIDFILE
else
echo "Could not find a calibre-server process with PID $PID."
fi
}
case $1 in
start )
start
;;
stop )
stop
;;
restart )
stop
start
;;
status )
if [ -e $PIDFILE ]; then
read PID < $PIDFILE
echo "calibre-server is running with PID $PID."
else
echo "calibre-server is not running."
fi
;;
* )
echo "Unrecognized command: $1"
echo "Try one of the following: (start|stop|restart|status)"
;;
esac