From 6fe402d96bd248e9ca678cd8314cf4cbc4dddd01 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 30 Aug 2019 18:36:03 +0000 Subject: [PATCH] added community/rspamd --- community/rspamd/PKGBUILD | 174 ++++++++++++++++++++++++++++++ community/rspamd/rspamd.install | 6 ++ community/rspamd/rspamd.logrotate | 7 ++ community/rspamd/rspamd.sysusers | 1 + community/rspamd/rspamd.tmpfiles | 5 + 5 files changed, 193 insertions(+) create mode 100644 community/rspamd/PKGBUILD create mode 100644 community/rspamd/rspamd.install create mode 100644 community/rspamd/rspamd.logrotate create mode 100644 community/rspamd/rspamd.sysusers create mode 100644 community/rspamd/rspamd.tmpfiles diff --git a/community/rspamd/PKGBUILD b/community/rspamd/PKGBUILD new file mode 100644 index 000000000..72e488922 --- /dev/null +++ b/community/rspamd/PKGBUILD @@ -0,0 +1,174 @@ +# Maintainer: Maxime Gauduin +# Contributor: Oleksandr Natalenko +# Contributor: Andrew Lewis +# Contributor: mezcal + +# ALARM: Kevin Mihelich +# - remove dependency on hyperscan (x86 only) +# - remove -DENABLE_HYPERSCAN=ON, -DENABLE_OPTIMIZATION=ON (LTO) + +pkgname=rspamd +pkgver=1.9.4 +pkgrel=3 +epoch= +pkgdesc='Fast, free and open-source spam filtering system' +arch=(x86_64) +url=https://rspamd.com +license=(BSD) +depends=( + file + glib2 + icu + jemalloc + libevent + luajit + openblas + openssl + pcre + sqlite + zlib +) +makedepends=( + cmake + git + ninja + ragel +) +backup=( + etc/logrotate.d/rspamd + etc/rspamd/2tld.inc + etc/rspamd/actions.conf + etc/rspamd/cgp.inc + etc/rspamd/common.conf + etc/rspamd/composites.conf + etc/rspamd/dmarc_whitelist.inc + etc/rspamd/groups.conf + etc/rspamd/logging.inc + etc/rspamd/maillist.inc + etc/rspamd/metrics.conf + etc/rspamd/mid.inc + etc/rspamd/mime_types.inc + etc/rspamd/modules.conf + etc/rspamd/modules.d/antivirus.conf + etc/rspamd/modules.d/arc.conf + etc/rspamd/modules.d/asn.conf + etc/rspamd/modules.d/chartable.conf + etc/rspamd/modules.d/clickhouse.conf + etc/rspamd/modules.d/dcc.conf + etc/rspamd/modules.d/dkim.conf + etc/rspamd/modules.d/dkim_signing.conf + etc/rspamd/modules.d/dmarc.conf + etc/rspamd/modules.d/elastic.conf + etc/rspamd/modules.d/emails.conf + etc/rspamd/modules.d/external_services.conf + etc/rspamd/modules.d/force_actions.conf + etc/rspamd/modules.d/forged_recipients.conf + etc/rspamd/modules.d/fuzzy_check.conf + etc/rspamd/modules.d/greylist.conf + etc/rspamd/modules.d/hfilter.conf + etc/rspamd/modules.d/history_redis.conf + etc/rspamd/modules.d/ip_score.conf + etc/rspamd/modules.d/maillist.conf + etc/rspamd/modules.d/metadata_exporter.conf + etc/rspamd/modules.d/metric_exporter.conf + etc/rspamd/modules.d/mid.conf + etc/rspamd/modules.d/milter_headers.conf + etc/rspamd/modules.d/mime_types.conf + etc/rspamd/modules.d/multimap.conf + etc/rspamd/modules.d/mx_check.conf + etc/rspamd/modules.d/neural.conf + etc/rspamd/modules.d/once_received.conf + etc/rspamd/modules.d/phishing.conf + etc/rspamd/modules.d/ratelimit.conf + etc/rspamd/modules.d/rbl.conf + etc/rspamd/modules.d/redis.conf + etc/rspamd/modules.d/regexp.conf + etc/rspamd/modules.d/replies.conf + etc/rspamd/modules.d/reputation.conf + etc/rspamd/modules.d/rspamd_update.conf + etc/rspamd/modules.d/spamassassin.conf + etc/rspamd/modules.d/spamtrap.conf + etc/rspamd/modules.d/spf.conf + etc/rspamd/modules.d/surbl.conf + etc/rspamd/modules.d/trie.conf + etc/rspamd/modules.d/url_redirector.conf + etc/rspamd/modules.d/url_reputation.conf + etc/rspamd/modules.d/url_tags.conf + etc/rspamd/modules.d/whitelist.conf + etc/rspamd/options.inc + etc/rspamd/redirectors.inc + etc/rspamd/rspamd.conf + etc/rspamd/scores.d/fuzzy_group.conf + etc/rspamd/scores.d/headers_group.conf + etc/rspamd/scores.d/hfilter_group.conf + etc/rspamd/scores.d/mime_types_group.conf + etc/rspamd/scores.d/mua_group.conf + etc/rspamd/scores.d/phishing_group.conf + etc/rspamd/scores.d/policies_group.conf + etc/rspamd/scores.d/rbl_group.conf + etc/rspamd/scores.d/statistics_group.conf + etc/rspamd/scores.d/subject_group.conf + etc/rspamd/scores.d/surbl_group.conf + etc/rspamd/scores.d/whitelist_group.conf + etc/rspamd/settings.conf + etc/rspamd/spf_dkim_whitelist.inc + etc/rspamd/statistic.conf + etc/rspamd/surbl-whitelist.inc + etc/rspamd/worker-controller.inc + etc/rspamd/worker-fuzzy.inc + etc/rspamd/worker-normal.inc + etc/rspamd/worker-proxy.inc +) +install=rspamd.install +source=( + git+https://github.com/rspamd/rspamd.git#tag=${pkgver} + rspamd.tmpfiles + rspamd.sysusers + rspamd.logrotate +) +sha256sums=('SKIP' + '4ee186f046d9ca22168a7e31dcf02cc7cd09ea60fb82ae60144b78fdd846a9a5' + 'cd76079124ad65419d9339165ac517af6834fb507e67b45720c66246159c402b' + '91edb06d8413f5c1237a6072c576a2701e64a4d4ac30f7a2c043f639d37a532b') + +prepare() { + if [[ -d build ]]; then + rm -rf build + fi + mkdir build + + cd rspamd + + git cherry-pick -n f24be0299381702d7fa5ad4695f1c5debfad78a9 + sed 's/_rspamd/rspamd/g' -i rspamd.service +} + +build() { + cd build + + cmake ../rspamd \ + -G Ninja \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCONFDIR=/etc/rspamd \ + -DDBDIR=/var/lib/rspamd \ + -DLOGDIR=/var/log/rspamd \ + -DRUNDIR=/run/rspamd \ + -DRSPAMD_USER=rspamd \ + -DNO_SHARED=ON \ + -DWANT_SYSTEMD_UNITS=ON \ + -DENABLE_JEMALLOC=ON + cmake --build . +} + +package() { + cd build + + DESTDIR="${pkgdir}" cmake --build . --target install + + install -Dm 644 ../rspamd/LICENSE.md -t "${pkgdir}"/usr/share/licenses/rspamd + install -Dm 644 ../rspamd.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/rspamd.conf + install -Dm 644 ../rspamd.sysusers "${pkgdir}"/usr/lib/sysusers.d/rspamd.conf + install -Dm 644 ../rspamd.logrotate "${pkgdir}"/etc/logrotate.d/rspamd +} + +# vim: set ts=2 sw=2 et: diff --git a/community/rspamd/rspamd.install b/community/rspamd/rspamd.install new file mode 100644 index 000000000..0bb638b6b --- /dev/null +++ b/community/rspamd/rspamd.install @@ -0,0 +1,6 @@ +post_install() { + echo "The rspamd user has been renamed from _rspamd to rspamd." + echo "Please make sure to remove the former manually." +} + +# vim: ts=2 sw=2 et: diff --git a/community/rspamd/rspamd.logrotate b/community/rspamd/rspamd.logrotate new file mode 100644 index 000000000..d6e551225 --- /dev/null +++ b/community/rspamd/rspamd.logrotate @@ -0,0 +1,7 @@ +/var/log/rspamd/*.log { + missingok + sharedscripts + postrotate + /usr/bin/systemctl --signal USR1 kill rspamd.service || true + endscript +} diff --git a/community/rspamd/rspamd.sysusers b/community/rspamd/rspamd.sysusers new file mode 100644 index 000000000..774a19afb --- /dev/null +++ b/community/rspamd/rspamd.sysusers @@ -0,0 +1 @@ +u rspamd - "rspam daemon" /var/lib/rspamd diff --git a/community/rspamd/rspamd.tmpfiles b/community/rspamd/rspamd.tmpfiles new file mode 100644 index 000000000..42a3e7212 --- /dev/null +++ b/community/rspamd/rspamd.tmpfiles @@ -0,0 +1,5 @@ +d /run/rspamd 0755 rspamd rspamd - +d /var/lib/rspamd 0755 rspamd rspamd - +Z /var/lib/rspamd - rspamd rspamd - +d /var/log/rspamd 0755 rspamd rspamd - +Z /var/log/rspamd - rspamd rspamd -