From 55f491b11d743837de3089869cc807fcbf393270 Mon Sep 17 00:00:00 2001 From: Adolf Belka Date: Wed, 13 Aug 2025 22:53:00 +0200 Subject: [PATCH] fcron: Update to version 3.4.0 - Update from version 3.2.1 to 3.4.0 - Update of the rootfile - Changelog 3.4.0 Changed the default "From" header of emails sent by fcron, to be RFC5322-compliant. This is done (and can be reverted if needed) via the new fcron.conf option maildisplayname. Changed the default fcron reload delay from 60s to 5s. Better doc and logging on bootrun jobs. 3.3.3 Fixed infinite loop when an lavg job reaches its 'until' deadline and gets rescheduled as the next job to run. Improved signal safety. Improved log messages for: indentation, resume after suspend, child task completion. Fixed compilation warnings: SELinux, signal handling. Updated copyright years. 3.3.2 Add compilation option (configure's '--with-max-fcrontab-reload-delay-seconds') to allow faster or even instant reload for non-root users (thanks Elliot Wolk). Added fcron.conf option 'maildisplayname', to configure the displayname fcron uses when sending email. This allows fcron to be configured ot be RFC5322-compliant (thanks Marco Emilio "sphakka" Poleggi) Fixed fcrondyn output issue where two lines would be joined due to a long shell command. Improve documentation wording (thanks Michael Kopp) 3.3.1 Updated SELinux code to stop using deprecated headers (fixes build on more recent systems) Install programs with R/W perms for the owner Fixed @reboot when using systemd Various other fixes and improvements in doc, install and boot scripts (in particular under systemd) 3.3.0 fcron now handles computer suspend/resume. On Linux systems, fcron can detect resumes and measure the suspend time. On other OSes, a script must be run at suspend and resume via system hooks. Added a new option 'runatresume' (as well as a Vixie-cron-style '@resume' shortcut), to run a job when the system resumes from suspend/hibernation. Refactored the socket (for fcrondyn), suspend and select code. Signed-off-by: Adolf Belka Signed-off-by: Michael Tremer --- config/rootfiles/common/fcron | 125 +++++++++++++++++----------------- lfs/fcron | 35 +++++----- 2 files changed, 78 insertions(+), 82 deletions(-) diff --git a/config/rootfiles/common/fcron b/config/rootfiles/common/fcron index 30823b0043..3d6a099ab4 100644 --- a/config/rootfiles/common/fcron +++ b/config/rootfiles/common/fcron @@ -2,7 +2,6 @@ etc/fcron.allow etc/fcron.conf #etc/fcron.cyclic etc/fcron.cyclic/info.txt -#etc/fcron.daily etc/fcron.daily/info.txt etc/fcron.deny #etc/fcron.hourly @@ -15,69 +14,67 @@ etc/fcron.weekly/info.txt usr/bin/fcronsighup usr/bin/fcrontab usr/sbin/fcron -#usr/share/doc/fcron-3.2.1 -#usr/share/doc/fcron-3.2.1/en -#usr/share/doc/fcron-3.2.1/en/HTML -#usr/share/doc/fcron-3.2.1/en/HTML/LEGALNOTICE.html -#usr/share/doc/fcron-3.2.1/en/HTML/changes.html -#usr/share/doc/fcron-3.2.1/en/HTML/faq.html -#usr/share/doc/fcron-3.2.1/en/HTML/fcron.8.html -#usr/share/doc/fcron-3.2.1/en/HTML/fcron.conf.5.html -#usr/share/doc/fcron-3.2.1/en/HTML/fcrondyn.1.html -#usr/share/doc/fcron-3.2.1/en/HTML/fcrontab.1.html -#usr/share/doc/fcron-3.2.1/en/HTML/fcrontab.5.html -#usr/share/doc/fcron-3.2.1/en/HTML/fdl.html -#usr/share/doc/fcron-3.2.1/en/HTML/gpl.html -#usr/share/doc/fcron-3.2.1/en/HTML/how-and-why.html -#usr/share/doc/fcron-3.2.1/en/HTML/index.html -#usr/share/doc/fcron-3.2.1/en/HTML/install.html -#usr/share/doc/fcron-3.2.1/en/HTML/manpages.html -#usr/share/doc/fcron-3.2.1/en/HTML/readme.html -#usr/share/doc/fcron-3.2.1/en/HTML/relnotes.html -#usr/share/doc/fcron-3.2.1/en/HTML/thanks.html -#usr/share/doc/fcron-3.2.1/en/HTML/todo.html -#usr/share/doc/fcron-3.2.1/en/HTML/using-fcron.html -#usr/share/doc/fcron-3.2.1/en/txt -#usr/share/doc/fcron-3.2.1/en/txt/changes.txt -#usr/share/doc/fcron-3.2.1/en/txt/faq.txt -#usr/share/doc/fcron-3.2.1/en/txt/gpl.txt -#usr/share/doc/fcron-3.2.1/en/txt/install.txt -#usr/share/doc/fcron-3.2.1/en/txt/readme.txt -#usr/share/doc/fcron-3.2.1/en/txt/relnotes.txt -#usr/share/doc/fcron-3.2.1/en/txt/thanks.txt -#usr/share/doc/fcron-3.2.1/en/txt/todo.txt -#usr/share/doc/fcron-3.2.1/fr -#usr/share/doc/fcron-3.2.1/fr/HTML -#usr/share/doc/fcron-3.2.1/fr/HTML/LEGALNOTICE.html -#usr/share/doc/fcron-3.2.1/fr/HTML/changes.html -#usr/share/doc/fcron-3.2.1/fr/HTML/faq.html -#usr/share/doc/fcron-3.2.1/fr/HTML/fcron.8.html -#usr/share/doc/fcron-3.2.1/fr/HTML/fcron.conf.5.html -#usr/share/doc/fcron-3.2.1/fr/HTML/fcrondyn.1.html -#usr/share/doc/fcron-3.2.1/fr/HTML/fcrontab.1.html -#usr/share/doc/fcron-3.2.1/fr/HTML/fcrontab.5.html -#usr/share/doc/fcron-3.2.1/fr/HTML/fdl.html -#usr/share/doc/fcron-3.2.1/fr/HTML/gpl.html -#usr/share/doc/fcron-3.2.1/fr/HTML/how-and-why.html -#usr/share/doc/fcron-3.2.1/fr/HTML/index.html -#usr/share/doc/fcron-3.2.1/fr/HTML/install.html -#usr/share/doc/fcron-3.2.1/fr/HTML/manpages.html -#usr/share/doc/fcron-3.2.1/fr/HTML/readme.html -#usr/share/doc/fcron-3.2.1/fr/HTML/relnotes.html -#usr/share/doc/fcron-3.2.1/fr/HTML/thanks.html -#usr/share/doc/fcron-3.2.1/fr/HTML/todo.html -#usr/share/doc/fcron-3.2.1/fr/HTML/using-fcron.html -#usr/share/doc/fcron-3.2.1/fr/txt -#usr/share/doc/fcron-3.2.1/fr/txt/changes.txt -#usr/share/doc/fcron-3.2.1/fr/txt/faq.txt -#usr/share/doc/fcron-3.2.1/fr/txt/gpl.txt -#usr/share/doc/fcron-3.2.1/fr/txt/install.txt -#usr/share/doc/fcron-3.2.1/fr/txt/readme.txt -#usr/share/doc/fcron-3.2.1/fr/txt/relnotes.txt -#usr/share/doc/fcron-3.2.1/fr/txt/thanks.txt -#usr/share/doc/fcron-3.2.1/fr/txt/todo.txt -#usr/share/man/fr -#usr/share/man/fr/man1 +#usr/share/doc/fcron-3.4.0 +#usr/share/doc/fcron-3.4.0/en +#usr/share/doc/fcron-3.4.0/en/HTML +#usr/share/doc/fcron-3.4.0/en/HTML/LEGALNOTICE.html +#usr/share/doc/fcron-3.4.0/en/HTML/changes.html +#usr/share/doc/fcron-3.4.0/en/HTML/faq.html +#usr/share/doc/fcron-3.4.0/en/HTML/fcron.8.html +#usr/share/doc/fcron-3.4.0/en/HTML/fcron.conf.5.html +#usr/share/doc/fcron-3.4.0/en/HTML/fcrondyn.1.html +#usr/share/doc/fcron-3.4.0/en/HTML/fcrontab.1.html +#usr/share/doc/fcron-3.4.0/en/HTML/fcrontab.5.html +#usr/share/doc/fcron-3.4.0/en/HTML/fdl.html +#usr/share/doc/fcron-3.4.0/en/HTML/gpl.html +#usr/share/doc/fcron-3.4.0/en/HTML/how-and-why.html +#usr/share/doc/fcron-3.4.0/en/HTML/index.html +#usr/share/doc/fcron-3.4.0/en/HTML/install.html +#usr/share/doc/fcron-3.4.0/en/HTML/manpages.html +#usr/share/doc/fcron-3.4.0/en/HTML/readme.html +#usr/share/doc/fcron-3.4.0/en/HTML/relnotes.html +#usr/share/doc/fcron-3.4.0/en/HTML/thanks.html +#usr/share/doc/fcron-3.4.0/en/HTML/todo.html +#usr/share/doc/fcron-3.4.0/en/HTML/using-fcron.html +#usr/share/doc/fcron-3.4.0/en/txt +#usr/share/doc/fcron-3.4.0/en/txt/changes.txt +#usr/share/doc/fcron-3.4.0/en/txt/faq.txt +#usr/share/doc/fcron-3.4.0/en/txt/gpl.txt +#usr/share/doc/fcron-3.4.0/en/txt/install.txt +#usr/share/doc/fcron-3.4.0/en/txt/readme.txt +#usr/share/doc/fcron-3.4.0/en/txt/relnotes.txt +#usr/share/doc/fcron-3.4.0/en/txt/thanks.txt +#usr/share/doc/fcron-3.4.0/en/txt/todo.txt +#usr/share/doc/fcron-3.4.0/fr +#usr/share/doc/fcron-3.4.0/fr/HTML +#usr/share/doc/fcron-3.4.0/fr/HTML/LEGALNOTICE.html +#usr/share/doc/fcron-3.4.0/fr/HTML/changes.html +#usr/share/doc/fcron-3.4.0/fr/HTML/faq.html +#usr/share/doc/fcron-3.4.0/fr/HTML/fcron.8.html +#usr/share/doc/fcron-3.4.0/fr/HTML/fcron.conf.5.html +#usr/share/doc/fcron-3.4.0/fr/HTML/fcrondyn.1.html +#usr/share/doc/fcron-3.4.0/fr/HTML/fcrontab.1.html +#usr/share/doc/fcron-3.4.0/fr/HTML/fcrontab.5.html +#usr/share/doc/fcron-3.4.0/fr/HTML/fdl.html +#usr/share/doc/fcron-3.4.0/fr/HTML/gpl.html +#usr/share/doc/fcron-3.4.0/fr/HTML/how-and-why.html +#usr/share/doc/fcron-3.4.0/fr/HTML/index.html +#usr/share/doc/fcron-3.4.0/fr/HTML/install.html +#usr/share/doc/fcron-3.4.0/fr/HTML/manpages.html +#usr/share/doc/fcron-3.4.0/fr/HTML/readme.html +#usr/share/doc/fcron-3.4.0/fr/HTML/relnotes.html +#usr/share/doc/fcron-3.4.0/fr/HTML/thanks.html +#usr/share/doc/fcron-3.4.0/fr/HTML/todo.html +#usr/share/doc/fcron-3.4.0/fr/HTML/using-fcron.html +#usr/share/doc/fcron-3.4.0/fr/txt +#usr/share/doc/fcron-3.4.0/fr/txt/changes.txt +#usr/share/doc/fcron-3.4.0/fr/txt/faq.txt +#usr/share/doc/fcron-3.4.0/fr/txt/gpl.txt +#usr/share/doc/fcron-3.4.0/fr/txt/install.txt +#usr/share/doc/fcron-3.4.0/fr/txt/readme.txt +#usr/share/doc/fcron-3.4.0/fr/txt/relnotes.txt +#usr/share/doc/fcron-3.4.0/fr/txt/thanks.txt +#usr/share/doc/fcron-3.4.0/fr/txt/todo.txt #usr/share/man/fr/man1/fcrondyn.1 #usr/share/man/fr/man1/fcrontab.1 #usr/share/man/fr/man3 diff --git a/lfs/fcron b/lfs/fcron index afcbda1b53..f8edd096e4 100644 --- a/lfs/fcron +++ b/lfs/fcron @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 IPFire Team # +# Copyright (C) 2007-2025 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@ include Config -VER = 3.2.1 +VER = 3.4.0 THISAPP = fcron-$(VER) DL_FILE = $(THISAPP).src.tar.gz @@ -43,7 +43,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = 184b74f9d64186b7d3aae87d48ed0107525fd0c73bb8db86408bd246592ff4fbcbc04f8ca0064868a8555d7c6be2f183172d62daeed75275cd836517da504d0f +$(DL_FILE)_BLAKE2 = 6af224b5c41005f15970be553d9d80e2de809f35d79bcfb35e33ae3a9e9d6f81d058d3e2a52c0c5b960fff7e9f444f8e95f60ccce5392a6031f35a114ea87dbc install : $(TARGET) @@ -74,21 +74,20 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && ./configure \ - --prefix=/usr \ - --without-sendmail \ - --with-spooldir=/var/spool/cron \ - --with-fifodir=/var/run \ - --with-piddir=/var/run \ - --sysconfdir=/etc \ - --with-username=cron \ - --with-groupname=cron \ - --with-run-non-privileged=no \ - --with-fcrondyn=no \ - --with-sysfcrontab=no \ - --with-boot-install=no \ - --with-pam=no \ - --with-selinux=no - + --prefix=/usr \ + --without-sendmail \ + --with-spooldir=/var/spool/cron \ + --with-fifodir=/var/run \ + --with-piddir=/var/run \ + --sysconfdir=/etc \ + --with-username=cron \ + --with-groupname=cron \ + --with-run-non-privileged=no \ + --with-fcrondyn=no \ + --with-sysfcrontab=no \ + --with-boot-install=no \ + --with-pam=no \ + --with-selinux=no cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install echo "root" > /etc/fcron.allow -- 2.47.3