commit:     d97ae5090a07627f4dc52d52b585e5c391fcc64e
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 30 03:15:28 2015 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Sun Aug 30 03:15:42 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d97ae509

sys-apps/man-db: add USE=manpager to enable color output #184604

 sys-apps/man-db/man-db-2.7.2-r1.ebuild | 95 ++++++++++++++++++++++++++++++++++
 sys-apps/man-db/metadata.xml           |  3 ++
 2 files changed, 98 insertions(+)

diff --git a/sys-apps/man-db/man-db-2.7.2-r1.ebuild 
b/sys-apps/man-db/man-db-2.7.2-r1.ebuild
new file mode 100644
index 0000000..bf66d38
--- /dev/null
+++ b/sys-apps/man-db/man-db-2.7.2-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils user versionator
+
+DESCRIPTION="a man replacement that utilizes berkdb instead of flat files"
+HOMEPAGE="http://www.nongnu.org/man-db/";
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 
~sh ~sparc ~x86 ~arm-linux ~x86-linux"
+IUSE="berkdb +gdbm +manpager nls selinux static-libs zlib"
+
+CDEPEND=">=dev-libs/libpipeline-1.4.0
+       berkdb? ( sys-libs/db )
+       gdbm? ( sys-libs/gdbm )
+       !berkdb? ( !gdbm? ( sys-libs/gdbm ) )
+       sys-apps/groff
+       zlib? ( sys-libs/zlib )
+       !sys-apps/man"
+DEPEND="${CDEPEND}
+       app-arch/xz-utils
+       virtual/pkgconfig
+       nls? (
+               >=app-text/po4a-0.45
+               sys-devel/gettext
+       )"
+RDEPEND="${CDEPEND}
+       selinux? ( sec-policy/selinux-mandb )
+"
+PDEPEND="manpager? ( app-text/manpager )"
+
+pkg_setup() {
+       # Create user now as Makefile in src_install does setuid/chown
+       enewgroup man 15
+       enewuser man 13 -1 /usr/share/man man
+
+       if (use gdbm && use berkdb) || (use !gdbm && use !berkdb) ; then #496150
+               ewarn "Defaulting to USE=gdbm due to ambiguous berkdb/gdbm USE 
flag settings"
+       fi
+}
+
+src_configure() {
+       export ac_cv_lib_z_gzopen=$(usex zlib)
+       econf \
+               --docdir='$(datarootdir)'/doc/${PF} \
+               --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d \
+               --enable-setuid \
+               --with-sections="1 1p 8 2 3 3p 4 5 6 7 9 0p tcl n l p o 1x 2x 
3x 4x 5x 6x 7x 8x" \
+               $(use_enable nls) \
+               $(use_enable static-libs static) \
+               --with-db=$(usex gdbm gdbm $(usex berkdb db gdbm))
+
+       # Disable color output from groff so that the manpager can add it. 
#184604
+       sed -i \
+               -e '/^#DEFINE.*\<[nt]roff\>/{s:^#::;s:$: -c:}' \
+               src/man_db.conf || die
+}
+
+src_install() {
+       default
+       dodoc docs/{HACKING,TODO}
+       prune_libtool_files
+
+       exeinto /etc/cron.daily
+       newexe "${FILESDIR}"/man-db.cron man-db #289884
+
+       keepdir /var/cache/man
+       fowners man:0 /var/cache/man
+       fperms 2755 /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
+       fi
+       if [[ ! -g ${EROOT}var/cache/man ]] ; then
+               einfo "Resetting permissions on ${EROOT}var/cache/man" #447944
+               mkdir -p "${EROOT}var/cache/man"
+               chown -R man:0 "${EROOT}"var/cache/man
+               find "${EROOT}"var/cache/man -type d '!' -perm /g=s -exec chmod 
2755 {} +
+       fi
+}
+
+pkg_postinst() {
+       if [[ $(get_version_component_range 2 ${REPLACING_VERSIONS}) -lt 7 ]] ; 
then
+               einfo "Rebuilding man-db from scratch with new database format!"
+               mandb --quiet --create
+       fi
+}

diff --git a/sys-apps/man-db/metadata.xml b/sys-apps/man-db/metadata.xml
index 96a2d58..7f3c55c 100644
--- a/sys-apps/man-db/metadata.xml
+++ b/sys-apps/man-db/metadata.xml
@@ -2,4 +2,7 @@
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
 <herd>base-system</herd>
+<use>
+       <flag name='manpager'>Enable manpager wrapper for colorizing 
output</flag>
+</use>
 </pkgmetadata>

Reply via email to