Mail archive
alpine-aports

[alpine-aports] [PATCH] main/mdocml: use a cron instead of a trigger to invoke makewhatis(8)

From: Sören Tempel <soeren+git_at_soeren-tempel.net>
Date: Mon, 10 Aug 2015 22:19:34 +0200

The database created by makewhatis(8) doesn't need to be up to date all
the time, it is not critical at all when the database doesn't contain a
newly added manpage for a few hours. So instead of slowing down package
installation by using a trigger the makewhatis(8) database is now
created and updated using a daily cron. The daily cron is run once after
the first install of mdocml as well.

Many distribution (e.g. Gentoo) also use a cron instead of a trigger to
invoke makewhatis(8), in my opinion it is simply saner to it this way.
---
 main/mdocml/APKBUILD            | 18 +++++++++++-------
 main/mdocml/mdocml.cron         |  4 ++++
 main/mdocml/mdocml.post-install |  1 +
 main/mdocml/mdocml.trigger      |  4 ----
 4 files changed, 16 insertions(+), 11 deletions(-)
 create mode 100644 main/mdocml/mdocml.cron
 create mode 120000 main/mdocml/mdocml.post-install
 delete mode 100644 main/mdocml/mdocml.trigger
diff --git a/main/mdocml/APKBUILD b/main/mdocml/APKBUILD
index 278c71f..e912f10 100644
--- a/main/mdocml/APKBUILD
+++ b/main/mdocml/APKBUILD
_at_@ -1,21 +1,20 @@
 # Maintainer:  Natanael Copa <ncopa_at_alpinelinux.org>
 pkgname=mdocml
 pkgver=1.13.3
-pkgrel=4
+pkgrel=5
 pkgdesc="mdoc/man compiler"
 url="http://mdocml.bsd.lv/"
 arch="all"
 license="BSD"
 depends=
 makedepends="sqlite-dev"
-install="$pkgname.post-deinstall"
-triggers="$pkgname.trigger=/usr/share/man/*"
+install="$pkgname.post-install $pkgname.post-deinstall"
 subpackages="$pkgname-doc $pkgname-dev man"
 source="http://mdocml.bsd.lv/snapshots/mdocml-$pkgver.tar.gz
 	shared-libmandoc.patch
 	mdocml.post-deinstall
 	default-pager.patch
-	mdocml.trigger
+	mdocml.cron
 	man.conf
 	"
 
_at_@ -23,11 +22,14 @@ _builddir="$srcdir"/$pkgname-$pkgver
 
 prepare() {
 	cd "$_builddir"
+
+	local i=
 	for i in $source; do
 		case $i in
 		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
 		esac
 	done
+
 	cat >configure.local<<EOF
 PREFIX=/usr
 MANDIR=/usr/share/man
_at_@ -46,6 +48,8 @@ package() {
 	cd "$_builddir"
 	make -j1 DESTDIR="$pkgdir" base-install db-install || return 1
 	install -Dm644 "$srcdir"/man.conf "$pkgdir"/etc/man.conf || return 1
+	install -Dm755 "$srcdir"/${pkgname}.cron \
+		"$pkgdir"/etc/periodic/daily/makewhatis || return 1
 }
 
 man() {
_at_@ -59,17 +63,17 @@ md5sums="7be80e1116a11abe2aabd6b2f04434ef  mdocml-1.13.3.tar.gz
 8d130a332fbd3268550819ade96c9afd  shared-libmandoc.patch
 f369b00f82b5cb03477cbea363dc3c65  mdocml.post-deinstall
 aa3421f2d2da345a7514be51707d6829  default-pager.patch
-f8cf8d023cded16f33eedc2cee7261fe  mdocml.trigger
+f8cf8d023cded16f33eedc2cee7261fe  mdocml.cron
 6e893bef0cf680eec807b230e6619d27  man.conf"
 sha256sums="23ccab4800d50bf4c327979af5d4aa1a6a2dc490789cb67c4c3ac1bd40b8cad8  mdocml-1.13.3.tar.gz
 676dd35caedc759cc83ae1dbf7fde5709d6fe4ed14c652af4cbebc5ccdbdc71b  shared-libmandoc.patch
 c57b5009009fdb4e8585166b2df404ed41e4caf3cbcbc0bf1d8bf2669637f68c  mdocml.post-deinstall
 f0a393ff3a630cd0e9e412241890b2356153ffb4ef0d419a7979edc4ed5e57e3  default-pager.patch
-30895170f89dfcf3ffa10ba5ec3140639ce0a64f06bf4c89050f8f80fea60bd8  mdocml.trigger
+30895170f89dfcf3ffa10ba5ec3140639ce0a64f06bf4c89050f8f80fea60bd8  mdocml.cron
 3381c6ceb99e7db1404fdb44419040c3b441a251d594292e53545b5e4e378e2b  man.conf"
 sha512sums="a3b7304e313b905b3575d79eb7ac861723e0ef3f700199c136abe4d4c698929e99ee0789bfc6e591224fb0006c709afe0e4c1bb578605a767c371ec7dee26024  mdocml-1.13.3.tar.gz
 bdbe471bcc5d5009ee8a9c4fb2f7903a5114afd8da1d6807c462fefdbe4b508711386b0fe7febb92977f97751c1d4fd486f1e1ecae0b7c1ba4dc28c0a7dda0b6  shared-libmandoc.patch
 c677c1b3d3705dfa130d69056a2a4c694802f51d881d0b48d8b280d87a882e0a5b906273840510af439b0c7f08da5d8d99b3f2cba396cf1781633dcb044bf4d9  mdocml.post-deinstall
 c8a4a11a5aa166670d8f8d4e0dba803068d3f1b6aee483daaf889da661a9281387fcd2f00d2dad7ef5c66e3419df205e2c75bb58fb9b055db284b4ac2f23eb7e  default-pager.patch
-e553cf83dde0a7926326acf306f7b363d0218009e328af82abb5256292c8693d341b85d3490c1ac33fbf3ac37f58f059926b1a9e790e24e7e0a85ca44f1fa126  mdocml.trigger
+e553cf83dde0a7926326acf306f7b363d0218009e328af82abb5256292c8693d341b85d3490c1ac33fbf3ac37f58f059926b1a9e790e24e7e0a85ca44f1fa126  mdocml.cron
 0723c32ab70e5b1c77768ca78d7437b26bed19b90b27876b10cc463359c41332befc0105fc1e23ceae48de5a892f1aa7ac60ef7eb0b6b8f1616726c4300632fe  man.conf"
diff --git a/main/mdocml/mdocml.cron b/main/mdocml/mdocml.cron
new file mode 100644
index 0000000..b1060c4
--- /dev/null
+++ b/main/mdocml/mdocml.cron
_at_@ -0,0 +1,4 @@
+#!/bin/sh
+
+exec /usr/sbin/makewhatis \
+	-a -T utf8 /usr/share/man
diff --git a/main/mdocml/mdocml.post-install b/main/mdocml/mdocml.post-install
new file mode 120000
index 0000000..76d799b
--- /dev/null
+++ b/main/mdocml/mdocml.post-install
_at_@ -0,0 +1 @@
+mdocml.cron
\ No newline at end of file
diff --git a/main/mdocml/mdocml.trigger b/main/mdocml/mdocml.trigger
deleted file mode 100644
index b1060c4..0000000
--- a/main/mdocml/mdocml.trigger
+++ /dev/null
_at_@ -1,4 +0,0 @@
-#!/bin/sh
-
-exec /usr/sbin/makewhatis \
-	-a -T utf8 /usr/share/man
-- 
2.5.0
---
Unsubscribe:  alpine-aports+unsubscribe_at_lists.alpinelinux.org
Help:         alpine-aports+help_at_lists.alpinelinux.org
---
Received on Mon Aug 10 2015 - 22:19:34 GMT