diff options
author | Valery Kartel <valery.kartel@gmail.com> | 2016-12-23 19:37:34 +0200 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2017-02-07 14:04:33 +0200 |
commit | f471c42b59a4aed5eab049515028dc8d21f7b1c2 (patch) | |
tree | 75bc0f3b5d66f9c9daa3e03ae8fa6762fcac836e /community | |
parent | 5938bc9c571af2e1dee1c919b99db90dbccfa1d0 (diff) | |
download | aports-f471c42b59a4aed5eab049515028dc8d21f7b1c2.tar.bz2 aports-f471c42b59a4aed5eab049515028dc8d21f7b1c2.tar.xz |
community/opendkim: fixes in build
fix user creation and db directory permissions
fix init.d script - explictly set process-owner and pid-file.
add post-install to generate initial keypair
move non-server binaries and perl-depended script to -utils subpackage
Diffstat (limited to 'community')
-rw-r--r-- | community/opendkim/APKBUILD | 52 | ||||
-rw-r--r-- | community/opendkim/opendkim.conf | 1 | ||||
-rw-r--r-- | community/opendkim/opendkim.confd | 2 | ||||
-rw-r--r-- | community/opendkim/opendkim.initd | 12 | ||||
-rw-r--r-- | community/opendkim/opendkim.pre-install | 4 |
5 files changed, 43 insertions, 28 deletions
diff --git a/community/opendkim/APKBUILD b/community/opendkim/APKBUILD index 01d8f6e059..bf16e144f6 100644 --- a/community/opendkim/APKBUILD +++ b/community/opendkim/APKBUILD @@ -3,19 +3,20 @@ # Maintainer: Valery Kartel <valery.kartel@gmail.com> pkgname=opendkim pkgver=2.10.3 -pkgrel=4 +pkgrel=5 pkgdesc="DKIM signing and verifying filter for MTAs" url="http://www.opendkim.org" arch="all" license="custom" +depends="" makedepends="libressl-dev libmilter-dev" pkgusers="opendkim" pkggroups="opendkim" -subpackages="$pkgname-dev $pkgname-doc $pkgname-libs $pkgname-dbg" +subpackages="$pkgname-dev $pkgname-doc $pkgname-libs $pkgname-dbg $pkgname-utils" install="$pkgname.pre-install" source="http://downloads.sourceforge.net/project/$pkgname/$pkgname-$pkgver.tar.gz - opendkim.conf - opendkim.initd" + $pkgname.confd + $pkgname.initd" builddir="$srcdir/$pkgname-$pkgver" build() { @@ -24,34 +25,41 @@ build() { --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ + --sysconfdir=/etc/$pkgname \ || return 1 make || return 1 } package() { cd "$builddir" - make DESTDIR="$pkgdir" install || return 1 + install -d "$pkgdir"/etc/$pkgname + install -dm750 -g mail "$pkgdir"/var/db/dkim + cat "$pkgdir"/usr/share/doc/$pkgname/$pkgname.conf.simple | sed \ + -e '/^Socket.*$/a#Socket\t\t\tlocal:opendkim.sock' \ + -e '1s~.*~BaseDirectory\t\t/run/opendkim~' \ + > "$pkgdir"/etc/$pkgname/$pkgname.conf + install -d "$pkgdir"/usr/share/licenses/$pkgname; + mv "$pkgdir"/usr/share/doc/$pkgname/LICENSE* \ + "$pkgdir"/usr/share/licenses/$pkgname + install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname + install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname +} - install -Dm644 "$pkgdir"/usr/share/doc/opendkim/opendkim.conf.sample \ - "$pkgdir"/etc/opendkim/opendkim.conf.sample || return 1 - install -Dm644 LICENSE \ - "$pkgdir"/usr/share/licenses/$pkgname/LICENSE || return 1 - install -Dm644 LICENSE.Sendmail \ - "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.Sendmail || return 1 - - install -m755 -D "$srcdir"/$pkgname.initd \ - "$pkgdir"/etc/init.d/$pkgname || return 1 - install -m644 -D "$srcdir"/$pkgname.conf \ - "$pkgdir"/etc/conf.d/$pkgname +utils() { + pkgdesc="$pkgdesc (key and zone utilities)" + depends="$pkgname libressl perl" + install -d "$subpkgdir"/usr/bin + mv "$pkgdir"/usr/sbin/$pkgname-* "$subpkgdir"/usr/bin + rm -fr "$pkgdir"/usr/lib } md5sums="916e691cdd16cfabd1cd6efe745323f9 opendkim-2.10.3.tar.gz -a4fadd2a9de27bfbc83173db4db9a7f5 opendkim.conf -72e7beb15c2dcc0fef5f06edb0f285f1 opendkim.initd" +57210e7c36bd81680c09e3857f3cae19 opendkim.confd +fc898b12a28671ea617538bcb09209f2 opendkim.initd" sha256sums="43a0ba57bf942095fe159d0748d8933c6b1dd1117caf0273fa9a0003215e681b opendkim-2.10.3.tar.gz -b030ab34d324d75b353a1d3ee1483da497ad2be76dec0ddba6c25547d833dca0 opendkim.conf -bfed96e5a9e8e68ee2c66feed9a37270967eaf62a554367658c517f3bec87b5c opendkim.initd" +e3f737b54130e2ba91a7d232902b1f34778a73e1cb289fd30ad0066249c7909e opendkim.confd +b53087eebb7121fd67510b521ee126bafcc01ff5b50a393af22c730804a6c30a opendkim.initd" sha512sums="97923e533d072c07ae4d16a46cbed95ee799aa50f19468d8bc6d1dc534025a8616c3b4b68b5842bc899b509349a2c9a67312d574a726b048c0ea46dd4fcc45d8 opendkim-2.10.3.tar.gz -8a9ae1d6879ee20493f1fdd69ca750ca6cca8cdecea37a4b87dd67cd843491ea9e1dc2f3a2636acd1d22e961f9f61763beb898e4c58b534e3a1c9c8b1d6a3b69 opendkim.conf -421888b3c41e97512139d30fdb55dcfa03c3c1596c67107c7e5d5a31edafff869b774d37d40f644ed967f507f15179202fc6351df4692904f25f5ad8a955652f opendkim.initd" +1dd6ed6e4efd93463f8eeb4603e72cf3a77f0a70117164a34b45bf0d2f45d4520b62c86696f7d180cff61a73201253c1ff875efdcd5317d631118776db665ea1 opendkim.confd +a3c3b4d4af875903aec1ae9f565113dc6b10fb0c5c45df96f043735de9be772e6d2fca812ce2bd51f9759f4a7c18ac5ced62a7b5530924edd0981250cb88f91f opendkim.initd" diff --git a/community/opendkim/opendkim.conf b/community/opendkim/opendkim.conf deleted file mode 100644 index 9e1631c4e0..0000000000 --- a/community/opendkim/opendkim.conf +++ /dev/null @@ -1 +0,0 @@ -EXTRA_OPTS="-x /etc/opendkim/opendkim.conf" diff --git a/community/opendkim/opendkim.confd b/community/opendkim/opendkim.confd new file mode 100644 index 0000000000..75e931b637 --- /dev/null +++ b/community/opendkim/opendkim.confd @@ -0,0 +1,2 @@ +# Extra arguments to pass to command line +#command_args="" diff --git a/community/opendkim/opendkim.initd b/community/opendkim/opendkim.initd index 843798f5ad..2a6a4101bf 100644 --- a/community/opendkim/opendkim.initd +++ b/community/opendkim/opendkim.initd @@ -1,10 +1,12 @@ #!/sbin/openrc-run +owner=opendkim pidfile=/run/opendkim/opendkim.pid - +cfgfile=/etc/opendkim/opendkim.conf command=/usr/sbin/opendkim -command_args="-f ${EXTRA_OPTS}" +command_args="$command_args -u $owner -f" command_background=yes +required_files="$cfgfile" depend() { need net @@ -12,5 +14,9 @@ depend() { } start_pre() { - checkpath -d -o opendkim:opendkim -m755 /run/opendkim + local socket=$(grep ^Socket.*local: $cfgfile | cut -d: -f2) + local basedir=$(grep ^BaseDirectory $cfgfile | awk '{print $2}') + [ "${socket:0:1}" = "/" ] && checkpath -d -o $owner ${socket%/*} + [ "$basedir" ] && checkpath -d -o $owner $basedir + checkpath -d -o $owner ${pidfile%/*} } diff --git a/community/opendkim/opendkim.pre-install b/community/opendkim/opendkim.pre-install index 25d3fd7538..e40280b288 100644 --- a/community/opendkim/opendkim.pre-install +++ b/community/opendkim/opendkim.pre-install @@ -1,7 +1,7 @@ #!/bin/sh addgroup -S opendkim 2>/dev/null -adduser -S -D -H -s /bin/false -G opendkim -g opendkim opendkim 2>/dev/null +adduser -SDH -h /run/opendkim -s /sbin/nologin -G opendkim -g opendkim opendkim 2>/dev/null +adduser opendkim mail exit 0 - |