commit: 0af088b41c694fbfd94e1db51a9df836eda0f7fd Author: Mike Gilbert <floppym <AT> gentoo <DOT> org> AuthorDate: Sun Apr 12 16:06:19 2020 +0000 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org> CommitDate: Sun Apr 12 16:17:13 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0af088b4
sys-apps/mlocate: modernize ebuild - EAPI=7 - Depend on acct-group/locate - Install systemd service/timer - Remove unneeded fperms/chown - Display postinst message on initial install only Closes: https://bugs.gentoo.org/622236 Closes: https://bugs.gentoo.org/509994 Package-Manager: Portage-2.3.96_p4, Repoman-2.3.22_p1 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org> sys-apps/mlocate/files/updatedb.service | 7 ++++ sys-apps/mlocate/files/updatedb.timer | 10 ++++++ sys-apps/mlocate/mlocate-0.26-r3.ebuild | 63 +++++++++++++++++++++++++++++++++ 3 files changed, 80 insertions(+) diff --git a/sys-apps/mlocate/files/updatedb.service b/sys-apps/mlocate/files/updatedb.service new file mode 100644 index 00000000000..b1eef0b3c4f --- /dev/null +++ b/sys-apps/mlocate/files/updatedb.service @@ -0,0 +1,7 @@ +[Unit] +Description=Update locate database + +[Service] +Type=oneshot +ExecStart=/usr/bin/updatedb +IOSchedulingClass=idle diff --git a/sys-apps/mlocate/files/updatedb.timer b/sys-apps/mlocate/files/updatedb.timer new file mode 100644 index 00000000000..9418d244cd7 --- /dev/null +++ b/sys-apps/mlocate/files/updatedb.timer @@ -0,0 +1,10 @@ +[Unit] +Description=Daily locate database update + +[Timer] +OnCalendar=daily +AccuracySec=12h +Persistent=true + +[Install] +WantedBy=timers.target diff --git a/sys-apps/mlocate/mlocate-0.26-r3.ebuild b/sys-apps/mlocate/mlocate-0.26-r3.ebuild new file mode 100644 index 00000000000..cc1d33e6583 --- /dev/null +++ b/sys-apps/mlocate/mlocate-0.26-r3.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit eutils systemd toolchain-funcs + +DESCRIPTION="Merging locate is an utility to index and quickly search for files" +HOMEPAGE="https://pagure.io/mlocate" +SRC_URI="http://releases.pagure.org/mlocate/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="nls selinux" + +BDEPEND=" + acct-group/locate + nls? ( sys-devel/gettext ) +" +RDEPEND=" + acct-group/locate + !sys-apps/slocate + !sys-apps/rlocate + selinux? ( sec-policy/selinux-slocate ) +" + +src_configure() { + econf $(use_enable nls) +} + +src_compile() { + emake groupname=locate AR="$(tc-getAR)" +} + +src_install() { + emake groupname=locate DESTDIR="${D}" install + dodoc AUTHORS ChangeLog README NEWS + + insinto /etc + doins "${FILESDIR}"/updatedb.conf + doins "${FILESDIR}"/mlocate-cron.conf + fperms 0644 /etc/{updatedb,mlocate-cron}.conf + + insinto /etc/cron.daily + newins "${FILESDIR}"/mlocate.cron-r3 mlocate + fperms 0755 /etc/cron.daily/mlocate + + keepdir /var/lib/mlocate + fowners 0:locate /var/lib/mlocate + fperms 0750 /var/lib/mlocate + + systemd_dounit "${FILESDIR}"/updatedb.{service,timer} +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]]; then + elog "The database for the locate command is generated daily by a cron job," + elog "if you install for the first time you can run the updatedb command manually now." + elog + elog "Note that the /etc/updatedb.conf file is generic," + elog "please customize it to your system requirements." + fi +}