summaryrefslogtreecommitdiff
path: root/app-misc/dnetc/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /app-misc/dnetc/files
reinit the tree, so we can have metadata
Diffstat (limited to 'app-misc/dnetc/files')
-rw-r--r--app-misc/dnetc/files/dnetc.confd18
-rw-r--r--app-misc/dnetc/files/dnetc.initd88
2 files changed, 106 insertions, 0 deletions
diff --git a/app-misc/dnetc/files/dnetc.confd b/app-misc/dnetc/files/dnetc.confd
new file mode 100644
index 000000000000..f6f0da6b7e2d
--- /dev/null
+++ b/app-misc/dnetc/files/dnetc.confd
@@ -0,0 +1,18 @@
+# configuration file for dnetc
+
+# Startup will look for configuration files in the following places, using the
+# first one that it finds:
+# 1. /etc/dnetc.conf
+# 2. /opt/distributed.net/dnetc.ini
+
+# Values specified here will override those found in any client configuration
+# file.
+
+# email adress
+EMAIL=
+
+# buffer base dir
+BUFFER_BASE_DIR=/var/spool/dnetc
+
+# keyserver address
+KEYSERVER_ADDRESS=
diff --git a/app-misc/dnetc/files/dnetc.initd b/app-misc/dnetc/files/dnetc.initd
new file mode 100644
index 000000000000..f3a512074912
--- /dev/null
+++ b/app-misc/dnetc/files/dnetc.initd
@@ -0,0 +1,88 @@
+#!/sbin/openrc-run
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+opts="${opts} reload fetch flush"
+
+depend() {
+ use net
+}
+
+processOpts() {
+ local retVal=1
+
+ DNETPATH="/opt/distributed.net"
+ DNETBIN="${DNETPATH}/dnetc"
+
+ STARTOPTS="--start --chuid dnetc:dnetc --quiet \
+ --exec ${DNETBIN}"
+
+ DNETOPTS="-quiet"
+
+ if [ -e /etc/dnetc.ini ] ; then
+ retVal=0
+ DNETOPTS="${DNETOPTS} -ini /etc/dnetc.ini"
+ elif [ -e ${DNETPATH}/dnetc.ini ]; then
+ retVal=0
+ DNETOPTS="${DNETOPTS} -ini ${DNETPATH}/dnetc.ini"
+ elif [ ! -z ${EMAIL} ]; then
+ retVal=0
+ fi
+
+ # override ini settings with values in /etc/conf.d/dnetc
+
+ DNETOPTS="${DNETOPTS} ${EMAIL:+-e ${EMAIL}}"
+ if [ ! -z ${BUFFER_BASE_DIR} ] ; then
+ local buff_in="${BUFFER_BASE_DIR:+${BUFFER_BASE_DIR}/}buff-in"
+ local buff_out="${BUFFER_BASE_DIR:+${BUFFER_BASE_DIR}/}buff-out"
+ DNETOPTS="${DNETOPTS} -inbase ${buff_in}"
+ DNETOPTS="${DNETOPTS} -outbase ${buff_out}"
+ fi
+ DNETOPTS="${DNETOPTS} ${KEYSERVER_ADDRESS:+-a ${KEYSERVER_ADDRESS}}"
+
+ # fair group cpu scheduler
+ uidpath="/sys/kernel/uids/`id -u dnetc`"
+ [ -d $uidpath ] && echo 2 >$uidpath/cpu_share
+ unset uidpath
+
+ if [ ${retVal} -ne 0 ] ; then
+ eerror "Need some sort of configuration. Check /etc/conf.d/dnetc."
+ fi
+
+ return ${retVal}
+}
+
+start() {
+ processOpts || return 1
+ ebegin "Starting distributed.net client"
+ start-stop-daemon ${STARTOPTS} -- ${DNETOPTS}
+ eend ${?}
+}
+
+stop() {
+ processOpts || return 1
+ ebegin "Stopping distributed.net client"
+ start-stop-daemon --stop --quiet --exec ${DNETBIN} --
+ eend ${?}
+}
+
+reload() {
+ processOpts || return 1
+ ebegin "Reloading distributed.net client"
+ start-stop-daemon --stop --quiet --signal HUP --exec ${DNETBIN}
+ eend ${?}
+}
+
+fetch() {
+ processOpts || return 1
+ ebegin "Fetching distributed.net client buffers"
+ ${DNETBIN} ${DNETOPTS} -fetch
+ eend ${?}
+}
+
+flush() {
+ processOpts || return 1
+ ebegin "Flushing distributed.net client buffers"
+ ${DNETBIN} ${DNETOPTS} -flush
+ eend ${?}
+}