summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-p2p/deluge/files/deluged.init')
-rw-r--r--net-p2p/deluge/files/deluged.init71
1 files changed, 71 insertions, 0 deletions
diff --git a/net-p2p/deluge/files/deluged.init b/net-p2p/deluge/files/deluged.init
new file mode 100644
index 0000000..f9b2a30
--- /dev/null
+++ b/net-p2p/deluge/files/deluged.init
@@ -0,0 +1,71 @@
+#!/sbin/runscript
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/files/deluged.init,v 1.5 2009/02/17 15:32:17 armin76 Exp $
+
+depend() {
+ need net
+}
+
+checkconfig() {
+ if [[ "${DELUGED_USER}" == "" ]] ; then
+ eerror "Please edit /etc/conf.d/deluged"
+ eerror "You have to specify a user to run deluged as, as we will not run it as root!"
+ eerror "Modify DELUGED_USER to your needs (you can also add a group, after a colon)"
+ return 1
+ fi
+ if ! `getent passwd | cut -d ':' -f 1 | grep $( echo "${DELUGED_USER}" | cut -d ':' -f 1 ) -sq` ; then
+ eerror "Please edit /etc/conf.d/deluged"
+ eerror "Your user has to exist!"
+ return 1
+ fi
+ if ! `echo "${DELUGED_USER}" | grep ':' -sq` ; then
+ return 0
+ else
+ if ! `cut -d ':' -f 1 /etc/group | grep $( echo "${DELUGED_USER}" | cut -d ':' -f 2 ) -sq` ; then
+ eerror "Please edit /etc/conf.d/deluged"
+ eerror "Your group has to exist too!"
+ return 1
+ fi
+ fi
+ return 0
+}
+
+start() {
+ checkconfig || return $?
+ if [[ "${DELUGED_HOME}" == "" ]] ; then
+ DELUGED_USER_HOME=`getent passwd | grep ^$( echo "${DELUGED_USER}" | cut -d ':' -f 1 ): | cut -d ':' -f 6`
+ else
+ DELUGED_USER_HOME="${DELUGED_HOME}"
+ fi
+ ebegin "Starting Deluged"
+ start-stop-daemon --start --user "${DELUGED_USER}" \
+ --name deluged --pidfile /var/run/deluged.pid --background --make-pidfile \
+ --exec /usr/bin/deluged -c "${DELUGED_USER}" -e HOME=${DELUGED_USER_HOME} -- --do-not-daemonize "${DELUGED_OPTS}"
+ eend $?
+
+
+ if [[ "${DELUGEUI_START}" == "true" ]] ; then
+ ebegin "Starting Deluge"
+ start-stop-daemon --start --background --pidfile \
+ /var/run/deluge.pid --make-pidfile \
+ --exec /usr/bin/deluge -c "${DELUGED_USER}" \
+ -e HOME="${DELUGED_USER_HOME}" -- ${DELUGEUI_OPTS}
+ eend $?
+ fi
+}
+
+stop() {
+ ebegin "Stopping Deluged"
+ start-stop-daemon --stop --user "${DELUGED_USER}" \
+ --name deluged --pidfile /var/run/deluged.pid
+ eend $?
+
+
+ if [[ "${DELUGEUI_START}" == "true" ]] ; then
+ ebegin "Stopping Deluge"
+ start-stop-daemon --stop --user "${DELUGED_USER}" \
+ --name deluge --pidfile /var/run/deluge.pid
+ eend $?
+ fi
+}