diff options
Diffstat (limited to 'net-irc/irker/files/irkerd.initd')
-rw-r--r-- | net-irc/irker/files/irkerd.initd | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/net-irc/irker/files/irkerd.initd b/net-irc/irker/files/irkerd.initd new file mode 100644 index 000000000000..6417d45ebf8e --- /dev/null +++ b/net-irc/irker/files/irkerd.initd @@ -0,0 +1,40 @@ +#!/sbin/openrc-run +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +: ${pidfile:=/run/${RC_SVCNAME}.pid} + +: ${IRKERD_NICK:=} +: ${IRKERD_PASSWORD:=} +: ${IRKERD_USER:=nobody} + +depend() { + use net +} + +start () { + if [[ ${IRKERD_LOGFILE} ]] ; then + checkpath -f \ + -o "${IRKERD_USER}" \ + "${IRKERD_LOGFILE}" \ + || return 1 + fi + + if [[ -z "${IRKERD_USER}" ]] ; then + die "IRKERD_USER is mandatory" + fi + + [[ -n "${IRKERD_LOGLEVEL}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -d ${IRKERD_LOGLEVEL}" + [[ -n "${IRKERD_LOGFILE}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -l ${IRKERD_LOGFILE}" + [[ -n "${IRKERD_NICK}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -n ${IRKERD_NICK}" + [[ -n "${IRKERD_PASSWORD}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -p ${IRKERD_PASSWORD}" + + ebegin "Starting ${RC_SVCNAME}" + start-stop-daemon --start \ + --quiet --background \ + --user "${IRKERD_USER}" \ + --make-pidfile --pidfile "${pidfile}" \ + --exec /usr/bin/irkerd \ + -- ${IRKERD_OPTS} < /dev/null + eend $? +} |