Subject: [alpine-aports] [PATCH] main/mdocmal: don't rebuild the mandoc.db from scratch every time

From: Sören Tempel <[email-masked]>
Date: Wed, 5 Aug 2015 22:37:25 +0200

mdocmls makewhatis(8) implementation should be able to build the
mandoc.db incrementally. Removing it forces mdocml to regenerate it
completely which can take a lot of time if you have a bunch of man pages
installed on your system and thus slows down package installation.

Furthermore, I also switch the string encoding from ascii to utf-8. In
addition to that I noticed that some files weren't listed in the source
APKBUILD variable.

Seem to work for me but further tests would be appreciated.
---
 main/mdocml/APKBUILD       | 10 +++++++++-
 main/mdocml/mdocml.trigger |  4 ++--
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/main/mdocml/APKBUILD b/main/mdocml/APKBUILD
index 739b5ae..7cdbd72 100644
--- a/main/mdocml/APKBUILD
+++ b/main/mdocml/APKBUILD
@@ -1,7 +1,7 @@
 # Maintainer:  Natanael Copa <[email-masked]>
 pkgname=mdocml
 pkgver=1.13.3
-pkgrel=2
+pkgrel=3
 pkgdesc="mdoc/man compiler"
 url="http://mdocml.bsd.lv/"
 arch="all"
@@ -13,7 +13,9 @@ triggers="$pkgname.trigger=/usr/share/man/*"
 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
 	man.conf
 	"
 
@@ -55,13 +57,19 @@ man() {
 
 md5sums="7be80e1116a11abe2aabd6b2f04434ef  mdocml-1.13.3.tar.gz
 8d130a332fbd3268550819ade96c9afd  shared-libmandoc.patch
+f369b00f82b5cb03477cbea363dc3c65  mdocml.post-deinstall
 aa3421f2d2da345a7514be51707d6829  default-pager.patch
+ecf8c7861089b1491975ce2adbb0648c  mdocml.trigger
 6e893bef0cf680eec807b230e6619d27  man.conf"
 sha256sums="23ccab4800d50bf4c327979af5d4aa1a6a2dc490789cb67c4c3ac1bd40b8cad8  mdocml-1.13.3.tar.gz
 676dd35caedc759cc83ae1dbf7fde5709d6fe4ed14c652af4cbebc5ccdbdc71b  shared-libmandoc.patch
+c57b5009009fdb4e8585166b2df404ed41e4caf3cbcbc0bf1d8bf2669637f68c  mdocml.post-deinstall
 f0a393ff3a630cd0e9e412241890b2356153ffb4ef0d419a7979edc4ed5e57e3  default-pager.patch
+aed1627d5da8f9eccf900a672c4af49756767a3abcc6abc664ac31152b5c7f43  mdocml.trigger
 3381c6ceb99e7db1404fdb44419040c3b441a251d594292e53545b5e4e378e2b  man.conf"
 sha512sums="a3b7304e313b905b3575d79eb7ac861723e0ef3f700199c136abe4d4c698929e99ee0789bfc6e591224fb0006c709afe0e4c1bb578605a767c371ec7dee26024  mdocml-1.13.3.tar.gz
 bdbe471bcc5d5009ee8a9c4fb2f7903a5114afd8da1d6807c462fefdbe4b508711386b0fe7febb92977f97751c1d4fd486f1e1ecae0b7c1ba4dc28c0a7dda0b6  shared-libmandoc.patch
+c677c1b3d3705dfa130d69056a2a4c694802f51d881d0b48d8b280d87a882e0a5b906273840510af439b0c7f08da5d8d99b3f2cba396cf1781633dcb044bf4d9  mdocml.post-deinstall
 c8a4a11a5aa166670d8f8d4e0dba803068d3f1b6aee483daaf889da661a9281387fcd2f00d2dad7ef5c66e3419df205e2c75bb58fb9b055db284b4ac2f23eb7e  default-pager.patch
+2635ad618935058a447f7e7674ef90f65f87157b61a75b8cfbba6d6d356948075f32f625bb91abc663bbcfcd012ce524e694b75c79d11149fa6ae259a4fd7cf7  mdocml.trigger
 0723c32ab70e5b1c77768ca78d7437b26bed19b90b27876b10cc463359c41332befc0105fc1e23ceae48de5a892f1aa7ac60ef7eb0b6b8f1616726c4300632fe  man.conf"
diff --git a/main/mdocml/mdocml.trigger b/main/mdocml/mdocml.trigger
index 0f64443..fc299d1 100644
--- a/main/mdocml/mdocml.trigger
+++ b/main/mdocml/mdocml.trigger
@@ -1,4 +1,4 @@
 #!/bin/sh
 
-rm -f /usr/share/man/mandoc.db
-exec /usr/sbin/makewhatis -a /usr/share/man
+exec /usr/sbin/makewhatis \
+	-a /usr/share/man -T utf8
-- 
2.5.0

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---

---

From: Natanael Copa <[email-masked]>
Date: Thu, 6 Aug 2015 08:57:49 +0200

On Wed,  5 Aug 2015 22:37:25 +0200

> installed on your system and thus slows down package installation.

Problem is that if you apk del a package it will not remove entries in
the database.

We should probably talk with upstream and ask for a clean-up feature
that will remove entries in the db that does not exist.

> addition to that I noticed that some files weren't listed in the source

This is good.

---

---

From: Natanael Copa <[email-masked]>
Date: Thu, 6 Aug 2015 09:00:05 +0200

On Wed,  5 Aug 2015 22:37:25 +0200
Sören Tempel <[email-masked]> wrote:

> Seem to work for me but further tests would be appreciate.

My apk now report error:
$ sudo apk fix
(1/1) Reinstalling mdocml (1.13.3-r3)
Executing busybox-1.23.2-r4.trigger
Executing mdocml-1.13.3-r3.trigger
-T: realpath: No such file or directory
utf8: realpath: No such file or directory
ERROR: mdocml-1.13.3-r3.trigger: script exited with error 5
OK: 4524 MiB in 1662 packages

---