Skip to content

Instantly share code, notes, and snippets.

@typomedia
Last active April 6, 2016 14:48
Show Gist options
  • Save typomedia/d97cc9f97841e74f822947650b4580df to your computer and use it in GitHub Desktop.
Save typomedia/d97cc9f97841e74f822947650b4580df to your computer and use it in GitHub Desktop.
Debian SysVinit Script for Mailpile
#!/bin/sh
### BEGIN INIT INFO
# Provides: mailpile
# Required-Start: $local_fs $remote_fs $network
# Required-Stop: $local_fs $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Mailpile
# Description: e-mail that protects your privacy
# Author: Typomedia Foundation
# Version: 1.0
### END INIT INFO
PATH=/bin:/usr/bin:/sbin:/usr/sbin
EXEC=/usr/share/mailpile/mp
DESC="Mailpile"
DAEMON=/usr/bin/python2
PIDFILE=/var/run/mailpile.pid
OPTIONS="${EXEC} --www=0.0.0.0:33411 --wait"
TIMEOUT=60
USER=root
[ -x $DAEMON ] || exit 0
. /lib/lsb/init-functions
check_daemon () {
if [ $ENABLE_DAEMON != 1 ]; then
log_progress_msg "(disabled)"
log_end_msg 255 || true
else
start_daemon
fi
}
start_daemon () {
start-stop-daemon --start --quiet \
--make-pidfile --pidfile $PIDFILE \
--background --chuid $USER \
--exec $DAEMON -- $OPTIONS
}
stop_daemon () {
start-stop-daemon --stop --quiet \
--pidfile $PIDFILE \
--exec $DAEMON --retry $TIMEOUT \
--oknodo
}
reload_daemon () {
start-stop-daemon --stop --quiet \
--exec $DAEMON \
--oknodo --signal 1
}
case "$1" in
start)
log_daemon_msg "Starting $DESC"
start_daemon
log_end_msg 0
;;
stop)
log_daemon_msg "Stopping $DESC"
stop_daemon
log_end_msg 0
;;
reload)
log_daemon_msg "Reloading $DESC"
reload_daemon
log_end_msg 0
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC"
stop_daemon
sleep 1
start_daemon
log_end_msg 0
;;
status)
status_of_proc "$DAEMON" "$DESC" && exit 0 || exit $?
;;
*)
log_action_msg "Usage: service $NAME {start|stop|reload|force-reload|restart|status}" || true
exit 2
;;
esac
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment