sys-apps/man-db: move /var cache dir creation to runtime #520464
authorMike Frysinger <vapier@gentoo.org>
Thu, 15 Dec 2016 15:22:01 +0000 (10:22 -0500)
committerMike Frysinger <vapier@gentoo.org>
Thu, 15 Dec 2016 15:53:24 +0000 (10:53 -0500)
The rework in pkg_preinst is just about moving the path into a var.
Otherwise, we just add some -d/mkdir testing logic to the end.

sys-apps/man-db/man-db-2.7.6.1-r1.ebuild

index 0f4cb33a17f848487e22f8b8c8d1e0d04368cc40..035cc343b310eca149b8640a78c0c4ff39970886 100644 (file)
@@ -69,21 +69,21 @@ src_install() {
 
        exeinto /etc/cron.daily
        newexe "${FILESDIR}"/man-db.cron man-db #289884
-
-       keepdir /var/cache/man
-       fowners man:man /var/cache/man
-       fperms 0755 /var/cache/man
 }
 
 pkg_preinst() {
-       if [[ -f ${EROOT}var/cache/man/whatis ]] ; then
-               einfo "Cleaning ${EROOT}var/cache/man from sys-apps/man"
-               find "${EROOT}"var/cache/man -type f '!' '(' -name index.bt -o -name index.db ')' -delete
+       local cachedir="${EROOT}var/cache/man"
+       if [[ -f ${cachedir}/whatis ]] ; then
+               einfo "Cleaning ${cachedir} from sys-apps/man"
+               find "${cachedir}" -type f '!' '(' -name index.bt -o -name index.db ')' -delete
        fi
-       if [[ -g ${EROOT}var/cache/man ]] ; then
-               einfo "Resetting permissions on ${EROOT}var/cache/man"
-               chown -R man:man "${EROOT}"var/cache/man
-               find "${EROOT}"var/cache/man -type d -exec chmod g-s {} +
+       if [[ -g ${cachedir} ]] ; then
+               einfo "Resetting permissions on ${cachedir}"
+               chown -R man:man "${cachedir}" || die
+               find "${cachedir}" -type d -exec chmod g-s {} + || die
+       elif [[ ! -d ${cachedir} ]] ; then
+               mkdir -p "${cachedir}" || die
+               chown man:man "${cachedir}" || die
        fi
 }