# Maintainer: Valery Kartel # Contributor: Valery Kartel # Contributor: Nathan Angelacos # Contributor: TBK pkgname=rspamd pkgver=1.7.6 pkgrel=1 pkgdesc="Fast, free and open-source spam filtering system" url="https://rspamd.com" arch="x86_64 x86 armhf ppc64le" license="Apache-2.0" options="!check" pkgusers=$pkgname pkggroups=$pkgname makedepends="cmake ragel perl luajit-dev glib-dev pcre-dev icu-dev libevent-dev sqlite-dev libressl-dev file-dev curl-dev gd-dev fann-dev" install="$pkgname.pre-install" subpackages="$pkgname-doc $pkgname-client $pkgname-utils::noarch $pkgname-controller::noarch $pkgname-fuzzy::noarch $pkgname-proxy::noarch $pkgname-openrc " source="$pkgname-$pkgver.tar.gz::https://github.com/vstakhov/$pkgname/archive/$pkgver.tar.gz $pkgname.logrotated $pkgname.initd $pkgname.confd cmakelists.patch conf-split-workers.patch " prepare() { default_prepare cd "$builddir" sed -ri -e 's~DBDIR(/rspamd.sock)~RUNDIR\1~' \ -e 's~rspamd_dynamic~dynamic~' \ conf/options.inc } build() { cd "$builddir" cmake CMakeLists.txt \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCONFDIR=/etc/$pkgname \ -DRUNDIR=/run/$pkgname \ -DRSPAMD_USER=$pkgusers \ -DRSPAMD_GROUP=$pkggroups \ -DENABLE_DB=ON \ -DENABLE_SQLITE=ON \ -DENABLE_HIREDIS=ON \ -DENABLE_REDIRECTOR=ON \ -DENABLE_URL_INCLUDE=ON \ -DINSTALL_EXAMPLES=ON make } package() { cd "$builddir" make DESTDIR="$pkgdir" install mkdir -p "$pkgdir"/etc/$pkgname/local.d \ "$pkgdir"/etc/$pkgname/override.d install -Dm644 "$srcdir"/$pkgname.logrotated \ "$pkgdir"/etc/logrotate.d/$pkgname install -Dm755 "$srcdir"/$pkgname.initd \ "$pkgdir"/etc/init.d/$pkgname install -Dm644 "$srcdir"/$pkgname.confd \ "$pkgdir"/etc/conf.d/$pkgname install -dm750 -o $pkgname -g $pkgname \ "$pkgdir"/var/lib/$pkgname/dynamic install -dm750 -g $pkgname \ "$pkgdir"/var/log/$pkgname chown $pkgname:$pkgname "$pkgdir"/var/lib/$pkgname mkdir "$pkgdir"/usr/sbin find "$pkgdir"/usr/bin -type l -delete mv "$pkgdir"/usr/bin/rspamd-$pkgver \ "$pkgdir"/usr/sbin/rspamd mv "$pkgdir"/usr/bin/rspamadm-$pkgver \ "$pkgdir"/usr/bin/rspamadm mv "$pkgdir"/usr/share/examples \ "$pkgdir"/usr/share/doc mv "$pkgdir"/usr/share/$pkgname/www/README.md \ "$pkgdir"/usr/share/$pkgname/www/plugins.txt \ "$pkgdir"/usr/share/doc/$pkgname } client() { pkgdesc="$pkgdesc (console client)" mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/rspamc-$pkgver \ "$subpkgdir"/usr/bin/rspamc } utils() { depends="perl" pkgdesc="$pkgdesc (utilities)" mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/${pkgname}_stats \ "$subpkgdir"/usr/bin/${pkgname}-stats mv "$pkgdir"/usr/bin/${pkgname}-redirector "$subpkgdir"/usr/bin } fuzzy() { depends="$pkgname" pkgdesc="$pkgdesc (local fuzzy storage)" mkdir -p "$subpkgdir"/etc/$pkgname/modules.d mv "$pkgdir"/etc/$pkgname/worker-fuzzy.* \ "$subpkgdir"/etc/$pkgname mv "$pkgdir"/etc/$pkgname/modules.d/fuzzy_* \ "$subpkgdir"/etc/$pkgname/modules.d } controller() { license="MIT" depends="$pkgname" pkgdesc="$pkgdesc (controller web interface)" mkdir -p "$subpkgdir"/usr/share/$pkgname \ "$subpkgdir"/etc/$pkgname mv "$pkgdir"/usr/share/$pkgname/www \ "$subpkgdir"/usr/share/$pkgname mv "$pkgdir"/etc/$pkgname/worker-controller.* \ "$subpkgdir"/etc/$pkgname } proxy() { depends="$pkgname" pkgdesc="$pkgdesc (milter support)" mkdir -p "$subpkgdir"/etc/$pkgname mv "$pkgdir"/etc/$pkgname/worker-proxy.* \ "$subpkgdir"/etc/$pkgname } sha512sums="5177d034b6c8d73e4b2d71023ef81ee3b9517856e50839858b12c3bed71b0154abeac0ba713511cc6e87ad56fd4f1f6335aa578696906c8591a0994bc96f4e50 rspamd-1.7.6.tar.gz 2efe28575c40d1fba84b189bb872860e744400db80dce2f6330be6c6287fb3f46e6511284729b957488bf40bcb9b0952e26df9934f5f138334bd2766075c45cb rspamd.logrotated df37726d03e676b16d707854d95bafc9162da65c27bb150edbfc0cb00f1842188a1f2a8f1b82be5ae2a253b4f4db4d93dfe804a89feb988b5af858eb3f3458be rspamd.initd e417dd825d1b4d03d115db037b2fdf2f48a35420ee7a9010d97167b6c31e88d6c0a15dd33b21d7d76856db0fdc5097c922fcdf1d8164d1e92ae377f7c5303947 rspamd.confd fa0e14d507cd7421a20916506c03e6e6c95fb2f38736e69540ee3e066da883c2ee4cb779ee8787756e4a1831ff8f04150ce592d4d6df08d8a18d55f3c6de4646 cmakelists.patch a8aefee649bf6630339d1d3f2bb20c25ca70b21a8eaa92951e926d0fd4525f1d4ac4cc7ea66ac2b15323cf02c93c759ddf7181502f0d71b21384ced9d88c008e conf-split-workers.patch"