summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2022-01-27 15:11:01 +0100
committerMarek Szuba <marecki@gentoo.org>2022-01-27 15:15:28 +0100
commita121cdb69c3887a83315cb88dbb285712176a779 (patch)
tree45eb405ccf50780b9e2675f63a1f7fdbf269deec
parentsys-libs/glibc: 2.33 patchset bump (diff)
downloadgentoo-a121cdb69c3887a83315cb88dbb285712176a779.tar.gz
gentoo-a121cdb69c3887a83315cb88dbb285712176a779.tar.bz2
gentoo-a121cdb69c3887a83315cb88dbb285712176a779.zip
net-p2p/syncthing: make syncthing OpenRC service ready for multiple instances
Thanks-to: Till Schäfer <till2.schaefer@uni-dortmund.de> Closes: https://bugs.gentoo.org/831735 Signed-off-by: Marek Szuba <marecki@gentoo.org>
-rw-r--r--net-p2p/syncthing/files/syncthing.confd4
-rw-r--r--net-p2p/syncthing/files/syncthing.initd-r233
-rw-r--r--net-p2p/syncthing/syncthing-1.18.6-r1.ebuild (renamed from net-p2p/syncthing/syncthing-1.18.6.ebuild)2
3 files changed, 38 insertions, 1 deletions
diff --git a/net-p2p/syncthing/files/syncthing.confd b/net-p2p/syncthing/files/syncthing.confd
index 33773dc7fdf9..eb70f1adef95 100644
--- a/net-p2p/syncthing/files/syncthing.confd
+++ b/net-p2p/syncthing/files/syncthing.confd
@@ -20,5 +20,9 @@
# Nice level of syncthing
#SYNCTHING_NICE="0"
+# Where the syncthing GUI should listen. Can be a http(s) URI or a Unix domain socket
+#SYNCTHING_GUI_ADDRESS="http://127.0.0.1:8384"
+#SYNCTHING_GUI_ADDRESS="unix:/run/syncthing.sock"
+
# Extra options for syncthing
#SYNCTHING_OPTS=""
diff --git a/net-p2p/syncthing/files/syncthing.initd-r2 b/net-p2p/syncthing/files/syncthing.initd-r2
new file mode 100644
index 000000000000..d8e46180df12
--- /dev/null
+++ b/net-p2p/syncthing/files/syncthing.initd-r2
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+SYNCTHING_USER=${SYNCTHING_USER:-syncthing}
+SYNCTHING_GROUP=${SYNCTHING_GROUP:-syncthing}
+SYNCTHING_HOMEDIR=${SYNCTHING_HOMEDIR:-/var/lib/syncthing/.config/syncthing}
+SYNCTHING_LOGFILE=${SYNCTHING_LOGFILE:-/var/log/syncthing/syncthing.log}
+SYNCTHING_UMASK=${SYNCTHING_UMASK:-007}
+SYNCTHING_IONICE=${SYNCTHING_IONICE:-0}
+SYNCTHING_NICE=${SYNCTHING_NICE:-0}
+SYNCTHING_GUI_ADDRESS=${SYNCTHING_GUI_ADDRESS:-http://127.0.0.1:8384}
+
+description="Syncthing is an open, trustworthy and decentralized cloud storage system"
+command="/usr/bin/syncthing"
+command_args="-no-browser -home=${SYNCTHING_HOMEDIR} -gui-address=${SYNCTHING_GUI_ADDRESS} ${SYNCTHING_OPTS}"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_background="yes"
+command_user="${SYNCTHING_USER}:${SYNCTHING_GROUP}"
+umask="${SYNCTHING_UMASK}"
+start_stop_daemon_args="--ionice ${SYNCTHING_IONICE} \
+ --nicelevel ${SYNCTHING_NICE}"
+output_log="\"${SYNCTHING_LOGFILE}\""
+error_log="\"${SYNCTHING_LOGFILE}\""
+
+depend() {
+ need localmount net
+}
+
+start_pre() {
+ checkpath -q -d -o ${SYNCTHING_USER}:${SYNCTHING_GROUP} ${SYNCTHING_HOMEDIR}
+ checkpath -q -f -o ${SYNCTHING_USER}:${SYNCTHING_GROUP} ${SYNCTHING_LOGFILE}
+}
diff --git a/net-p2p/syncthing/syncthing-1.18.6.ebuild b/net-p2p/syncthing/syncthing-1.18.6-r1.ebuild
index e7512849c254..dfa6d9a4188d 100644
--- a/net-p2p/syncthing/syncthing-1.18.6.ebuild
+++ b/net-p2p/syncthing/syncthing-1.18.6-r1.ebuild
@@ -855,7 +855,7 @@ src_install() {
systemd_dounit etc/linux-systemd/system/${PN}{@,-resume}.service
systemd_douserunit etc/linux-systemd/user/${PN}.service
newconfd "${FILESDIR}"/${PN}.confd ${PN}
- newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd-r2 ${PN}
keepdir /var/log/${PN}
insinto /etc/logrotate.d