#!/bin/sh set -e [ -n "$DEBUG" ] && set -x _check_running= ssd_args="--background --make-pidfile --start" while getopts rsKkl:h opt; do case "$opt" in K|k) ssd_args='--stop';; l) ssd_args="${ssd_args} --stdout ${OPTARG} --stderr ${OPTARG}";; s) _check_running=1 ;; r) _restart=1 ;; h) printf "usage: %s [-h]\n" "$(basename "$0")" printf "\n" printf " -K -k kill the service\n" printf " -l LOGFILE log to a file\n" printf "\n" exit 2 ;; esac done shift $((OPTIND - 1)) exec="${1:-}" [ -z "${exec}" ] && exit 1 shift if [ -n "$_check_running" ] then [ -f "${XDG_RUNTIME_DIR}/${exec}.pid" ] && exit 0 exit 1 fi if [ -n "$_restart" ] then set -x ${0} -k ${exec} ${@} ${0} ${exec} ${@} exit 0 fi start-stop-daemon \ --pidfile "${XDG_RUNTIME_DIR:-/tmp}/${exec}.pid" \ $ssd_args \ "${exec}" -- "${@}"