commit: c1a4dca1e6d22f21b4ddd5144cedab55be89d957 Author: Richard Freeman <rich0 <AT> gentoo <DOT> org> AuthorDate: Tue Jun 17 14:18:45 2025 +0000 Commit: Richard Freeman <rich0 <AT> gentoo <DOT> org> CommitDate: Tue Jun 17 14:19:21 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c1a4dca1
sys-process/systemd-cron: add 2.5.1 Signed-off-by: Richard Freeman <rich0 <AT> gentoo.org> sys-process/systemd-cron/Manifest | 1 + sys-process/systemd-cron/systemd-cron-2.5.1.ebuild | 93 ++++++++++++++++++++++ 2 files changed, 94 insertions(+) diff --git a/sys-process/systemd-cron/Manifest b/sys-process/systemd-cron/Manifest index 96629ff41ab8..97b607cbace6 100644 --- a/sys-process/systemd-cron/Manifest +++ b/sys-process/systemd-cron/Manifest @@ -1,2 +1,3 @@ DIST systemd-cron-2.4.0.tar.gz 60462 BLAKE2B 6a4450637b69ed9c32ea5711018be9265db96a6bf19896bb72c13184817750e7d64d2fdd00ac885d5ae3393b671c04c89d1bf46f73fbb817c1b1798a4809b955 SHA512 88ce99307101d33e6fc6a5dfa25f16db9754785809b44da78c6b05b52592385c9a957770ee781b97a248ab475304bd7eb234bffa47114031bd804e2aa5f79c06 DIST systemd-cron-2.4.1.tar.gz 60691 BLAKE2B 49796038ac9c424a59b238a17dafd4adf185264e6458cec319f95f164de7164374f84a968c8c594a397b8c7a6822706df26d0a8909bffcc7925d896e0b1f25af SHA512 0f1d71a2d7aee62373fe5277fbbf7a46603741ed58f393acd90822813d2f2b3876ae239b6995abac2fd9961b77c36b407a21c47a2dc95375160ae8e65b19f4b1 +DIST systemd-cron-2.5.1.tar.gz 63441 BLAKE2B 5098d4d89911a759d5b367fe5fc9249b1f6eb4887dfa6dd9ce9f8605dc0f2e16abb583464d9d9960ec1b14a7b37c7f3b70d98a3197c15ee2419bf39c9889b04f SHA512 d5b27d2d9721394eb54f154e0ce395d7df9f7b05c835c6c9eb85e668ea502047ec5bfc4aea58277e7135eec9b175bea81aa629ce76260c2dd60f01a97294778e diff --git a/sys-process/systemd-cron/systemd-cron-2.5.1.ebuild b/sys-process/systemd-cron/systemd-cron-2.5.1.ebuild new file mode 100644 index 000000000000..f02bc8ea182e --- /dev/null +++ b/sys-process/systemd-cron/systemd-cron-2.5.1.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit systemd toolchain-funcs + +DESCRIPTION="systemd units to create timers for cron directories and crontab" +HOMEPAGE="https://github.com/systemd-cron/systemd-cron/" +SRC_URI="https://github.com/systemd-cron/${PN}/archive/v${PV}.tar.gz -> systemd-cron-${PV}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="cron-boot etc-crontab-systemd minutely +runparts setgid yearly" +# We can't run the unshare tests within sandbox/with low privs, and the +# 'test-nounshare' target just does static analysis (shellcheck etc). +RESTRICT="test" + +BDEPEND="virtual/pkgconfig" +RDEPEND=" + !sys-process/cronie[anacron] + acct-user/_cron-failure + acct-group/_cron-failure + app-crypt/libmd:= + sys-process/cronbase + >=sys-apps/systemd-255[-split-usr(-)] + !etc-crontab-systemd? ( !sys-process/dcron ) + runparts? ( sys-apps/debianutils ) +" +DEPEND=" + dev-libs/openssl:= + sys-process/cronbase +" + +src_prepare() { + sed -i \ + -e 's/^crontab/crontab-systemd/' \ + -e 's/^CRONTAB/CRONTAB-SYSTEMD/' \ + -- "${S}/src/man/crontab."{1,5}".in" || die + + if use etc-crontab-systemd + then sed -i \ + -e "s!/etc/crontab!/etc/crontab-systemd!" \ + -- "${S}/src/man/crontab."{1,5}".in" \ + "${S}/src/bin/systemd-crontab-generator.cpp" \ + "${S}/test/test-generator" || die + fi + + default +} + +my_use_enable() { + if use ${1}; then + echo --enable-${2:-${1}}=yes + else + echo --enable-${2:-${1}}=no + fi +} + +src_configure() { + tc-export PKG_CONFIG CXX CC + + ./configure \ + --prefix="${EPREFIX}/usr" \ + --mandir="${EPREFIX}/usr/share/man" \ + --unitdir="$(systemd_get_systemunitdir)" \ + --generatordir="$(systemd_get_systemgeneratordir)" \ + $(my_use_enable cron-boot boot) \ + $(my_use_enable minutely) \ + $(my_use_enable runparts) \ + $(my_use_enable yearly) \ + $(my_use_enable yearly quarterly) \ + $(my_use_enable yearly semi_annually) || die + + export CRONTAB=crontab-systemd +} + +src_compile() { + emake PCH= +} + +src_install() { + emake DESTDIR="${D}" PCH= install + rm -f "${ED}"/usr/lib/sysusers.d/systemd-cron.conf +} + +pkg_postinst() { + elog "This package now supports USE=runparts which is enabled by default." + elog "This enables the traditional run-parts behavior." + elog "If you disable this flag you will get the new behavior of having" + elog "multiple jobs for each cron.* entry run in parallel with" + elog "separate services/logs/etc." +}
