From 5eee4f96240768d3e34023fabb7aee4f6fdf0b64 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 11:51:06 +0000 Subject: [PATCH 01/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- at.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/at.spec b/at.spec index d36c82d..b317829 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 12%{?dist} +Release: 13%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -165,6 +165,9 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 3.2.5-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Thu Aug 8 2024 Ales Nezbeda - 3.2.5-12 - Backport fixes from upstream PR - https://salsa.debian.org/debian/at/-/merge_requests/34 From 0da79b8efbea92705a852a17b7b9035d2cb10689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Mon, 27 Jan 2025 13:49:35 +0100 Subject: [PATCH 02/11] Unify bin and sbin directories Resolves: rhbz#2339910 --- at.spec | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/at.spec b/at.spec index b317829..fc325f7 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 13%{?dist} +Release: 14%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -87,7 +87,7 @@ make install \ DAEMON_USERNAME=`id -nu` \ DAEMON_GROUPNAME=`id -ng` \ DESTDIR=%{buildroot} \ - sbindir=%{_prefix}/sbin \ + sbindir=%{_bindir} \ bindir=%{_bindir} \ datadir=%{_datadir} \ prefix=%{_prefix} \ @@ -154,8 +154,8 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %attr(0600,root,root) %verify(not md5 size mtime) %ghost %{_localstatedir}/spool/at/.SEQ %attr(0700,root,root) %dir %{_localstatedir}/spool/at/spool %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/pam.d/atd -%{_sbindir}/atrun -%attr(0755,root,root) %{_sbindir}/atd +%{_bindir}/atrun +%attr(0755,root,root) %{_bindir}/atd %{_mandir}/man*/* %{_bindir}/batch %{_bindir}/atrm @@ -165,6 +165,10 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Mon Jan 27 2025 Ondřej Pohořelský - 3.2.5-14 +- Unify bin and sbin directories +- Resolves: rhbz#2339910 + * Thu Jan 16 2025 Fedora Release Engineering - 3.2.5-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 0da060e2afaa594f921f3cec0c13d01555a8a3eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Mon, 5 May 2025 10:14:16 +0200 Subject: [PATCH 03/11] Claim ownership of /usr/share/at Resolves: rhbz#2283298 --- at.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/at.spec b/at.spec index fc325f7..51a0785 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 14%{?dist} +Release: 15%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -161,10 +161,15 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %{_bindir}/atrm %{_bindir}/atq %attr(4755,root,root) %{_bindir}/at +%{_datadir}/at/ %{_datadir}/at/batch-job %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Mon May 05 2025 Ondřej Pohořelský - 3.2.5-15 +- Claim ownership of /usr/share/at +- Resolves: rhbz#2283298 + * Mon Jan 27 2025 Ondřej Pohořelský - 3.2.5-14 - Unify bin and sbin directories - Resolves: rhbz#2339910 From c697b4595ce1df51088a6427f1a53121ba70c673 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Thu, 26 Jun 2025 09:42:57 +0200 Subject: [PATCH 04/11] Fix past date handling with -t option --- at-3.2.5-past-date.patch | 33 +++++++++++++++++++++++++++++++++ at.spec | 6 +++++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 at-3.2.5-past-date.patch diff --git a/at-3.2.5-past-date.patch b/at-3.2.5-past-date.patch new file mode 100644 index 0000000..6344c40 --- /dev/null +++ b/at-3.2.5-past-date.patch @@ -0,0 +1,33 @@ +From 6c131df8c85cb2761faf551f8f9db179e216fc09 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= +Date: Wed, 25 Jun 2025 14:35:31 +0200 +Subject: [PATCH] Reject past dates when using -t option + +-t option was missing validation to reject past dates, unlike the +regular time parsing. + +Add the same past date validation used by parsetime() to the posixtime() +code path to ensure consistent behavior when parsing time. +--- + at.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/at.c b/at.c +index 8d0feaa..3fb0582 100644 +--- a/at.c ++++ b/at.c +@@ -951,6 +951,11 @@ main(int argc, char **argv) + fprintf(stderr, "invalid date format: %s\n", optarg); + exit(EXIT_FAILURE); + } ++ /* Check if the parsed time is in the past */ ++ if (timer < time(NULL)) { ++ fprintf(stderr, "at: refusing to create job destined in the past\n"); ++ exit(EXIT_FAILURE); ++ } + break; + + case 'o': +-- +2.49.0 + diff --git a/at.spec b/at.spec index 51a0785..1bf04e7 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 15%{?dist} +Release: 16%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -31,6 +31,7 @@ Patch: at-3.1.16-clear-nonjobs.patch Patch: at-3.2.2-lock-locks.patch Patch: at-3.1.23-document-n.patch Patch: at-3.1.20-log-jobs.patch +Patch: at-3.2.5-past-date.patch BuildRequires: gcc BuildRequires: flex flex-static bison autoconf @@ -166,6 +167,9 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Wed Jun 25 2025 Ondřej Pohořelský - 3.2.5-16 +- Fix past date handling with -t option + * Mon May 05 2025 Ondřej Pohořelský - 3.2.5-15 - Claim ownership of /usr/share/at - Resolves: rhbz#2283298 From e11f7fc108132b9b3eb4daa6728a4c65ccefb907 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Zaoral?= Date: Fri, 4 Jul 2025 13:22:58 +0200 Subject: [PATCH 05/11] tests: migrate from STI to TMT --- .fmf/version | 1 + plans/ci.fmf | 5 +++++ tests/initscript/main.fmf | 12 ++++++++++++ tests/initscript/runtest.sh | 2 +- tests/tests.yml | 13 ------------- 5 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 .fmf/version create mode 100644 plans/ci.fmf create mode 100644 tests/initscript/main.fmf delete mode 100644 tests/tests.yml diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/ci.fmf b/plans/ci.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/ci.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/tests/initscript/main.fmf b/tests/initscript/main.fmf new file mode 100644 index 0000000..275b067 --- /dev/null +++ b/tests/initscript/main.fmf @@ -0,0 +1,12 @@ +summary: Initscript sanity +description: '' +contact: Radek Biba +component: + - at +test: ./runtest.sh +framework: beakerlib +recommend: + - at +duration: 5m +extra-summary: /CoreOS/at/Sanity/initscript +extra-task: /CoreOS/at/Sanity/initscript diff --git a/tests/initscript/runtest.sh b/tests/initscript/runtest.sh index a84aecb..67ecc2d 100755 --- a/tests/initscript/runtest.sh +++ b/tests/initscript/runtest.sh @@ -27,7 +27,7 @@ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Include rhts environment -. /usr/share/rhts-library/rhtslib.sh +. /usr/share/beakerlib/beakerlib.sh || exit 1 PACKAGE="at" SERVICE="atd" diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index 751a586..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,13 +0,0 @@ ---- -# This first play always runs on the local staging system -- hosts: localhost - roles: - - role: standard-test-beakerlib - tags: - - classic - - container - - atomic - tests: - - initscript - required_packages: - - at # Required to run initscript From 1fc88529b95f6206e1e0cc6466241e010e6d3c36 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 17:22:50 +0000 Subject: [PATCH 06/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- at.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/at.spec b/at.spec index 1bf04e7..44553a5 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 16%{?dist} +Release: 17%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -167,6 +167,9 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 3.2.5-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Wed Jun 25 2025 Ondřej Pohořelský - 3.2.5-16 - Fix past date handling with -t option From 774dcfc0e121c81b6835df89ff5c83c708d2a5a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Wed, 27 Aug 2025 15:55:17 +0200 Subject: [PATCH 07/11] Use systemd-tmpfiles for /var/spool/at directories Replace RPM scriptlets with systemd-tmpfiles to create /var/spool/at structure, fixing Image Mode compatibility and bootc container lint warnings. --- at-tmpfiles.conf | 6 ++++++ at.spec | 22 ++++++++++++++-------- 2 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 at-tmpfiles.conf diff --git a/at-tmpfiles.conf b/at-tmpfiles.conf new file mode 100644 index 0000000..8eec9a7 --- /dev/null +++ b/at-tmpfiles.conf @@ -0,0 +1,6 @@ +# at - Tmpfiles configuration for at daemon +# Create /var/spool/at directory structure for the at daemon + +d /var/spool/at 0700 root root - - +d /var/spool/at/spool 0700 root root - - +f /var/spool/at/.SEQ 0600 root root - - diff --git a/at.spec b/at.spec index 44553a5..3b02e46 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 17%{?dist} +Release: 18%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -12,6 +12,7 @@ URL: http://ftp.debian.org/debian/pool/main/a/at Source: http://software.calhariz.com/at/at_%{version}.orig.tar.gz # git upstream source git://git.debian.org/git/collab-maint/at.git Source1: pam_atd +Source2: at-tmpfiles.conf Source3: atd.sysconf Source5: atd.systemd @@ -38,6 +39,7 @@ BuildRequires: flex flex-static bison autoconf BuildRequires: libselinux-devel >= 1.27.9 BuildRequires: perl(Test::Harness) BuildRequires: perl(Test::More) +BuildRequires: systemd-rpm-macros %if %{with pam} BuildRequires: pam-devel @@ -50,6 +52,7 @@ BuildRequires: make Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units +Requires: systemd-tmpfiles # at-sysvinit subpackage dropped Obsoletes: at-sysvinit < 3.1.16-1 @@ -115,18 +118,24 @@ install -m 644 %{SOURCE3} %{buildroot}/etc/sysconfig/atd mkdir -p %{buildroot}/%{_unitdir}/ install -m 644 %{SOURCE5} %{buildroot}/%{_unitdir}/atd.service +# install tmpfiles configuration +mkdir -p %{buildroot}%{_tmpfilesdir} +install -m 644 %{SOURCE2} %{buildroot}%{_tmpfilesdir}/at.conf + # remove unpackaged files from the buildroot rm -r %{buildroot}%{_prefix}/doc +# Remove .SEQ file created by make install - tmpfiles will create it +rm -f %{buildroot}%{_localstatedir}/spool/at/.SEQ %check make test %post -touch %{_localstatedir}/spool/at/.SEQ -chmod 600 %{_localstatedir}/spool/at/.SEQ -chown root:root %{_localstatedir}/spool/at/.SEQ %systemd_post atd.service +# Create directories and files using tmpfiles +%tmpfiles_create at.conf + %preun %systemd_preun atd.service @@ -151,10 +160,8 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %doc README timespec ChangeLog %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/at.deny %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/atd -%attr(0700,root,root) %dir %{_localstatedir}/spool/at -%attr(0600,root,root) %verify(not md5 size mtime) %ghost %{_localstatedir}/spool/at/.SEQ -%attr(0700,root,root) %dir %{_localstatedir}/spool/at/spool %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/pam.d/atd +%{_tmpfilesdir}/at.conf %{_bindir}/atrun %attr(0755,root,root) %{_bindir}/atd %{_mandir}/man*/* @@ -163,7 +170,6 @@ chown root:root %{_localstatedir}/spool/at/.SEQ %{_bindir}/atq %attr(4755,root,root) %{_bindir}/at %{_datadir}/at/ -%{_datadir}/at/batch-job %attr(0644,root,root) /%{_unitdir}/atd.service %changelog From 96f550ec593ca5e92c203beeb80cfe0b60ce8ea2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Thu, 18 Sep 2025 12:49:15 +0200 Subject: [PATCH 08/11] Add /var/spool/at and /var/spool/at/spool directories into %%files section --- at.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/at.spec b/at.spec index 3b02e46..f74305b 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 18%{?dist} +Release: 19%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -161,6 +161,8 @@ make test %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/at.deny %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/sysconfig/atd %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/pam.d/atd +%attr(0700,root,root) %dir %{_localstatedir}/spool/at +%attr(0700,root,root) %dir %{_localstatedir}/spool/at/spool %{_tmpfilesdir}/at.conf %{_bindir}/atrun %attr(0755,root,root) %{_bindir}/atd @@ -173,6 +175,13 @@ make test %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Thu Sep 18 2025 Ondřej Pohořelský - 3.2.5-19 +- Add /var/spool/at and /var/spool/at/spool directories into %%files section +- Resolves: rhbz#2396330 + +* Wed Aug 27 2025 Ondřej Pohořelský - 3.2.5-18 +- Use systemd-tmpfiles for /var/spool/at directories + * Wed Jul 23 2025 Fedora Release Engineering - 3.2.5-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From ced9e7e3752bd28284339d46b36a106452a45bec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Wed, 24 Sep 2025 18:32:27 +0200 Subject: [PATCH 09/11] Remove broken and unused git submodule from tests --- tests/at | 1 - 1 file changed, 1 deletion(-) delete mode 160000 tests/at diff --git a/tests/at b/tests/at deleted file mode 160000 index 30cccc8..0000000 --- a/tests/at +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 30cccc88a2064eb05018a09d65164a26972cd5b5 From 99f9f320e1cd4b9d717a90f38b94afd7cfa8af34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= Date: Mon, 29 Sep 2025 10:26:16 +0200 Subject: [PATCH 10/11] Remove unnecessary Require --- at.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/at.spec b/at.spec index f74305b..4773caa 100644 --- a/at.spec +++ b/at.spec @@ -52,7 +52,6 @@ BuildRequires: make Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units -Requires: systemd-tmpfiles # at-sysvinit subpackage dropped Obsoletes: at-sysvinit < 3.1.16-1 From c6de37879a86d935a52ff6fb08bc601193409e5a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 04:04:41 +0000 Subject: [PATCH 11/11] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild --- at.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/at.spec b/at.spec index 4773caa..60d9fd4 100644 --- a/at.spec +++ b/at.spec @@ -3,7 +3,7 @@ Summary: Job spooling tools Name: at Version: 3.2.5 -Release: 19%{?dist} +Release: 20%{?dist} # http://packages.debian.org/changelogs/pool/main/a/at/current/copyright # + install-sh is MIT license with changes under Public Domain License: GPL-3.0-or-later AND GPL-2.0-or-later AND ISC @@ -174,6 +174,9 @@ make test %attr(0644,root,root) /%{_unitdir}/atd.service %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 3.2.5-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + * Thu Sep 18 2025 Ondřej Pohořelský - 3.2.5-19 - Add /var/spool/at and /var/spool/at/spool directories into %%files section - Resolves: rhbz#2396330