summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDirkjan Ochtman <djc@gentoo.org>2017-01-03 19:56:37 +0100
committerDirkjan Ochtman <djc@gentoo.org>2017-01-03 20:00:51 +0100
commit0dce7fbc4dc9fb16a13056da4902cd120ec9be4e (patch)
treeb4d41720ea72d68b9c6cedace5829448d7d45f1f /mail-filter
parentsys-apps/systemd: backport lz4 version check fix (diff)
downloadgentoo-0dce7fbc4dc9fb16a13056da4902cd120ec9be4e.tar.gz
gentoo-0dce7fbc4dc9fb16a13056da4902cd120ec9be4e.tar.bz2
gentoo-0dce7fbc4dc9fb16a13056da4902cd120ec9be4e.zip
mail-filter/rspamd: use checkpath in init script (fixes bug 603248)
Package-Manager: portage-2.3.0
Diffstat (limited to 'mail-filter')
-rw-r--r--mail-filter/rspamd/files/rspamd.init-r448
-rw-r--r--mail-filter/rspamd/rspamd-1.4.1-r1.ebuild71
2 files changed, 119 insertions, 0 deletions
diff --git a/mail-filter/rspamd/files/rspamd.init-r4 b/mail-filter/rspamd/files/rspamd.init-r4
new file mode 100644
index 000000000000..cb4520f37c43
--- /dev/null
+++ b/mail-filter/rspamd/files/rspamd.init-r4
@@ -0,0 +1,48 @@
+#!/sbin/openrc-run
+# Copyright 2015-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+extra_commands="checkconfig"
+extra_started_commands="reload"
+
+RUNDIR=/var/run/rspamd
+PIDFILE=$RUNDIR/rspamd.pid
+
+depend() {
+ need net
+}
+
+checkconfig() {
+ /usr/bin/rspamadm configtest -c /etc/rspamd/rspamd.sysvinit.conf > /dev/null \
+ || return 1
+}
+
+start() {
+ checkconfig || return 1
+ ebegin "Starting ${SVCNAME}"
+
+ checkpath -d $RUNDIR -m 2750 -o rspamd:rspamd
+ rm -f $RUNDIR/$SVCNAME.sock
+
+ start-stop-daemon --start --quiet --pidfile $PIDFILE -u rspamd -g rspamd \
+ --exec /usr/bin/rspamd
+ eend $?
+}
+
+stop() {
+ if [ "${RC_CMD}" = "restart" ] ; then
+ checkconfig || return 1
+ fi
+
+ ebegin "Stopping ${SVCNAME}"
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE \
+ --exec /usr/bin/rspamd
+ eend $?
+}
+
+reload() {
+ checkconfig || return 1
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --signal HUP --quiet --pidfile $PIDFILE
+ eend $?
+}
diff --git a/mail-filter/rspamd/rspamd-1.4.1-r1.ebuild b/mail-filter/rspamd/rspamd-1.4.1-r1.ebuild
new file mode 100644
index 000000000000..978a2bda96ff
--- /dev/null
+++ b/mail-filter/rspamd/rspamd-1.4.1-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit cmake-utils pax-utils user systemd
+
+DESCRIPTION="Rapid spam filtering system"
+SRC_URI="https://rspamd.com/downloads/${P}.tar.xz"
+HOMEPAGE="https://github.com/vstakhov/rspamd"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fann +jit libressl"
+
+RDEPEND="!libressl? ( dev-libs/openssl:0[-bindist] )
+ libressl? ( dev-libs/libressl:0 )
+ fann? ( sci-mathematics/fann )
+ jit? (
+ dev-libs/libpcre[jit]
+ dev-lang/luajit:2
+ )
+ !jit? (
+ dev-libs/libpcre[-jit]
+ >=dev-lang/lua-5.1:0
+ )
+ dev-libs/libevent
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/gmime
+ dev-util/ragel
+ sys-apps/file
+ virtual/libiconv"
+DEPEND="dev-util/ragel
+ ${RDEPEND}"
+
+pkg_setup() {
+ enewgroup rspamd
+ enewuser rspamd -1 -1 /var/lib/rspamd rspamd
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCONFDIR=/etc/rspamd
+ -DRUNDIR=/var/run/rspamd
+ -DDBDIR=/var/lib/rspamd
+ -DLOGDIR=/var/log/rspamd
+ -DENABLE_LUAJIT=$(usex jit ON OFF)
+ -DENABLE_FANN=$(usex fann ON OFF)
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}"/usr/bin/rspamadm-*
+ pax-mark m "${ED}"/usr/bin/rspamd-*
+ newinitd "${FILESDIR}/rspamd.init-r3" rspamd
+
+ dodir /var/lib/rspamd
+ dodir /var/log/rspamd
+
+ fowners rspamd:rspamd /var/lib/rspamd /var/log/rspamd
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/rspamd.logrotate" rspamd
+
+ systemd_newunit rspamd.service rspamd.service
+}