From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 8A17315838C for ; Fri, 19 Jan 2024 10:28:49 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id CDAA92BC014; Fri, 19 Jan 2024 10:28:48 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id A9AA62BC014 for ; Fri, 19 Jan 2024 10:28:48 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id ADB2C3431D8 for ; Fri, 19 Jan 2024 10:28:47 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4768597B for ; Fri, 19 Jan 2024 10:28:46 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1705660115.c8d03c5fd70d4e1f0696ed140203f2475869ea7b.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-process/cronie/, sys-process/cronie/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-process/cronie/cronie-1.7.1-r1.ebuild sys-process/cronie/files/cronie-1.7.1-envelope-revert.patch X-VCS-Directories: sys-process/cronie/ sys-process/cronie/files/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: c8d03c5fd70d4e1f0696ed140203f2475869ea7b X-VCS-Branch: master Date: Fri, 19 Jan 2024 10:28:46 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 642af999-918d-476d-8a9a-10b0c6f7da06 X-Archives-Hash: 8eb5feb4cde0d3e2804c34580827f5ec commit: c8d03c5fd70d4e1f0696ed140203f2475869ea7b Author: Sam James gentoo org> AuthorDate: Fri Jan 19 10:28:25 2024 +0000 Commit: Sam James gentoo org> CommitDate: Fri Jan 19 10:28:35 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8d03c5f sys-process/cronie: backport envelope revert Closes: https://bugs.gentoo.org/922477 Signed-off-by: Sam James gentoo.org> sys-process/cronie/cronie-1.7.1-r1.ebuild | 111 +++++++++++++++++++++ .../files/cronie-1.7.1-envelope-revert.patch | 59 +++++++++++ 2 files changed, 170 insertions(+) diff --git a/sys-process/cronie/cronie-1.7.1-r1.ebuild b/sys-process/cronie/cronie-1.7.1-r1.ebuild new file mode 100644 index 000000000000..cd49c8370d95 --- /dev/null +++ b/sys-process/cronie/cronie-1.7.1-r1.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# cronie supports /etc/crontab +CRON_SYSTEM_CRONTAB="yes" + +inherit cron flag-o-matic pam systemd + +DESCRIPTION="Cronie is a standard UNIX daemon cron based on the original vixie-cron" +HOMEPAGE="https://github.com/cronie-crond/cronie" +SRC_URI="https://github.com/cronie-crond/cronie/releases/download/${P}/${P}.tar.gz" + +LICENSE="ISC BSD BSD-2 GPL-2+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="+anacron +inotify pam selinux" + +DEPEND=" + pam? ( sys-libs/pam ) + anacron? ( + !sys-process/anacron + !sys-process/systemd-cron + elibc_musl? ( sys-libs/obstack-standalone ) + ) + selinux? ( sys-libs/libselinux ) +" +BDEPEND="acct-group/crontab" +RDEPEND=" + ${BDEPEND} + ${DEPEND} + sys-apps/debianutils +" + +PATCHES=( + "${FILESDIR}"/${P}-envelope-revert.patch +) + +src_configure() { + local myeconfargs=( + $(use_with inotify) + $(use_with pam) + $(use_with selinux) + $(use_enable anacron) + --enable-syscrontab + # Required for correct pidfile location, bug #835814 + --runstatedir="${EPREFIX}/run" + --with-daemon_username=cron + --with-daemon_groupname=cron + ) + + if use anacron && use elibc_musl ; then + append-cflags "-lobstack" + fi + + SPOOL_DIR="/var/spool/cron/crontabs" \ + ANACRON_SPOOL_DIR="/var/spool/anacron" \ + econf "${myeconfargs[@]}" +} + +src_install() { + default + + docrondir -m 1730 -o root -g crontab + fowners root:crontab /usr/bin/crontab + fperms 2751 /usr/bin/crontab + + newconfd "${S}"/crond.sysconfig ${PN} + + insinto /etc + newins "${FILESDIR}/${PN}-crontab" crontab + newins "${FILESDIR}/${PN}-1.2-cron.deny" cron.deny + + insinto /etc/cron.d + doins contrib/{0hourly,dailyjobs} + + newinitd "${FILESDIR}/${PN}-1.3-initd" ${PN} + + if use pam ; then + newpamd "${FILESDIR}/${PN}-1.4.3-pamd" crond + fi + + systemd_newunit contrib/cronie.systemd cronie.service + + if use anacron ; then + local anacrondir="/var/spool/anacron" + keepdir ${anacrondir} + fowners root:cron ${anacrondir} + fperms 0750 ${anacrondir} + + insinto /etc + doins contrib/anacrontab + + insinto /etc/cron.hourly + doins contrib/0anacron + fperms 0750 /etc/cron.hourly/0anacron + fi + + einstalldocs +} + +pkg_postinst() { + cron_pkg_postinst + + if [[ -n "${REPLACING_VERSIONS}" ]] ; then + ewarn "You should restart ${PN} daemon or else you might experience segfaults" + ewarn "or ${PN} not working reliably anymore." + einfo "(see https://bugs.gentoo.org/557406 for details.)" + fi +} diff --git a/sys-process/cronie/files/cronie-1.7.1-envelope-revert.patch b/sys-process/cronie/files/cronie-1.7.1-envelope-revert.patch new file mode 100644 index 000000000000..ac10c1a132b5 --- /dev/null +++ b/sys-process/cronie/files/cronie-1.7.1-envelope-revert.patch @@ -0,0 +1,59 @@ +https://bugs.gentoo.org/922477 +https://github.com/cronie-crond/cronie/issues/166 +https://github.com/cronie-crond/cronie/issues/170 +https://github.com/cronie-crond/cronie/pull/118 + +https://github.com/cronie-crond/cronie/commit/aeb3f8a9cbc0da7e6367d41a2b769eb7e90855f3 +https://github.com/cronie-crond/cronie/commit/6181605fafe6aaedc0c19a8bdc85a335403b42d8 + +From aeb3f8a9cbc0da7e6367d41a2b769eb7e90855f3 Mon Sep 17 00:00:00 2001 +From: Tomas Mraz +Date: Fri, 19 Jan 2024 11:17:48 +0100 +Subject: [PATCH] Revert "Use empty envelope address with default mailfrom" + +This reverts commit c640f4f39e5c20995e960e4b954cd0574a96c028. + +This causes more harm than expected and is also strictly speaking +not RFC compliant. +--- a/src/do_command.c ++++ b/src/do_command.c +@@ -471,9 +471,7 @@ static int child_process(entry * e, char **jobenv) { + if (MailCmd[0] == '\0') { + int len; + +- /* Use empty envelope address with default mailfrom */ +- len = snprintf(mailcmd, sizeof mailcmd, MAILFMT, MAILARG, +- mailfrom == e->pwd->pw_name ? "<>" : mailfrom); ++ len = snprintf(mailcmd, sizeof mailcmd, MAILFMT, MAILARG, mailfrom); + if (len < 0) { + fprintf(stderr, "mailcmd snprintf failed\n"); + (void) _exit(ERROR_EXIT); + +From 6181605fafe6aaedc0c19a8bdc85a335403b42d8 Mon Sep 17 00:00:00 2001 +From: Tomas Mraz +Date: Fri, 19 Jan 2024 11:19:32 +0100 +Subject: [PATCH] Inherit MAILFROM from the crond process environment + +This allows setting it in /etc/sysconfig/crond or in the systemd unit. +--- a/man/crontab.5 ++++ b/man/crontab.5 +@@ -98,7 +98,8 @@ This option is useful if you decide to use /bin/mail instead of + aliasing and UUCP usually does not read its mail. If + .I MAILFROM + is defined (and non-empty), it is used as the envelope sender address, +-otherwise, ``root'' is used. ++otherwise, ``root'' is used. This variable is also inherited from the ++crond process environment. + .PP + (Note: Both + .I MAILFROM +--- a/src/env.c ++++ b/src/env.c +@@ -138,6 +138,7 @@ int env_set_from_environ(char ***envpp) { + "LC_ALL", + "LANGUAGE", + "RANDOM_DELAY", ++ "MAILFROM", + NULL + }; + const char **name;