summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-apps/plocate/Manifest1
-rw-r--r--sys-apps/plocate/plocate-1.1.19.ebuild86
2 files changed, 87 insertions, 0 deletions
diff --git a/sys-apps/plocate/Manifest b/sys-apps/plocate/Manifest
index 12a8c8b04916..62b7544012e3 100644
--- a/sys-apps/plocate/Manifest
+++ b/sys-apps/plocate/Manifest
@@ -1,2 +1,3 @@
DIST plocate-1.1.17.tar.gz 73528 BLAKE2B b5694c3669a9717a9410093b1fba2eef029550989ffcbf9b6e7b48cc715c215b909c140cd98d47d30d31ccb6e04fd54e9b565bc8e16c1d9901ccf82a906de311 SHA512 36fa7ad01b5136ce75aad56d154cac511f2f4952a52ef2f16143e46b65a8b129e9011dbdd66d80a0288ef15291864cef0e51d26181b966a2f67b5e4f9fc42c7d
DIST plocate-1.1.18.tar.gz 73906 BLAKE2B 60f11df992c2865259c2c9cfda033b1b303738c19cc7ffa8a885bbc6fd26140263c7fe31acb2541fe9b298034d28a719935580561c7d4e88c564fa0e74eeccbe SHA512 da059980472df2269139a5b71d34579e239365714d54dfa2af68276c6e28178602eda302d2ec39cb7e5e07312019425159048047ddfc08bd3266e3bf7972d1c6
+DIST plocate-1.1.19.tar.gz 73964 BLAKE2B bf488c124b219822c0b426f57f3389f2611395abb7ddd22c72c51086480af1811ab2ed5f2a96cb6ad7d769be7dd60c3482de46841f2d5be85abdc1a1ce586ee8 SHA512 7bbbe914dbab75adb7f38302b7a06cfbb7c18b0e580892dced89d72dc0076e98a75482833b76200bb68b99a0a6093639967b962d0b69be526360995f7d833fcd
diff --git a/sys-apps/plocate/plocate-1.1.19.ebuild b/sys-apps/plocate/plocate-1.1.19.ebuild
new file mode 100644
index 000000000000..d232fce2fe29
--- /dev/null
+++ b/sys-apps/plocate/plocate-1.1.19.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info meson systemd
+
+DESCRIPTION="Posting locate is a much faster locate"
+HOMEPAGE="https://plocate.sesse.net/"
+SRC_URI="https://plocate.sesse.net/download/${P}.tar.gz"
+
+# GPL-2 for updatedb
+# GPL-2+ for plocate itself
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+io-uring"
+
+RDEPEND="
+ acct-group/locate
+ app-arch/zstd:=
+ io-uring? ( sys-libs/liburing:= )
+ !sys-apps/mlocate
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.1.15-meson-use-feature-option-for-libiouring.patch
+)
+
+pkg_setup() {
+ if use io-uring && linux_config_exists; then
+ if ! linux_chkconfig_present IO_URING; then
+ ewarn "CONFIG_IO_URING must be enabled for USE=io-uring"
+ fi
+ fi
+}
+
+src_prepare() {
+ # We'll install the manpage ourself to locate.1
+ sed -i "/install_man('plocate.1')/d" meson.build || die
+
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dlocategroup=locate
+ -Dinstall_systemd=true
+ -Dinstall_cron=false
+ -Dsystemunitdir="$(systemd_get_systemunitdir)"
+ "$(meson_feature io-uring use_libiouring)"
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ dodoc README NEWS
+ newman "${S}"/${PN}.1 locate.1
+ dosym plocate /usr/bin/locate
+
+ insinto /etc
+ doins "${FILESDIR}"/updatedb.conf
+ doins "${FILESDIR}"/plocate-cron.conf
+ fperms 0644 /etc/{updatedb,plocate-cron}.conf
+
+ insinto /etc/cron.daily
+ # Ensure that the cron file has the same name as the
+ # systemd-timer, to avoid plocate being run twice daily on systems
+ # with a systemd compatiblity layer. See also bug #780351.
+ newins "${FILESDIR}"/plocate.cron plocate-updatedb
+ fperms 0755 /etc/cron.daily/plocate-updatedb
+
+ systemd_dounit "${BUILD_DIR}"/${PN}-updatedb.service "${S}"/${PN}-updatedb.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 ${EROOT}/etc/updatedb.conf file is generic,"
+ elog "please customize it to your system requirements."
+ fi
+}