summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-im/prosody/files/prosody.initd-r3')
-rw-r--r--net-im/prosody/files/prosody.initd-r346
1 files changed, 46 insertions, 0 deletions
diff --git a/net-im/prosody/files/prosody.initd-r3 b/net-im/prosody/files/prosody.initd-r3
new file mode 100644
index 000000000000..3126cc8e1e20
--- /dev/null
+++ b/net-im/prosody/files/prosody.initd-r3
@@ -0,0 +1,46 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prosody is a server for Jabber/XMPP written in Lua."
+description_reload="Reload configuration and reopen log files."
+extra_started_commands="reload"
+pidfile="/var/run/jabber/prosody.pid"
+
+depend() {
+ need net
+ provide jabber-server
+ use dns postgresql
+}
+
+checkconfig() {
+ if [ ! -e /etc/jabber/prosody.cfg.lua ] ; then
+ eerror "You need a /etc/jabber/prosody.cfg.lua file to run prosody"
+ return 1
+ fi
+ luac -p /etc/jabber/prosody.cfg.lua
+ return $?
+}
+
+start() {
+ checkconfig || return 1
+ checkpath -q -d -m 0770 -o jabber:jabber "$(dirname ${pidfile})"
+ checkpath -q -f -m 0770 -o jabber:jabber "${pidfile}"
+ checkpath -q -d -m 0750 -o jabber:jabber /var/log/jabber
+ ebegin "Starting Prosody XMPP Server"
+ prosodyctl start
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Prosody XMPP Server"
+ prosodyctl stop
+ eend $?
+}
+
+reload() {
+ checkconfig || return 1
+ ebegin "Reloading configuration of Prosody XMPP Server"
+ prosodyctl reload
+ eend $?
+}