Currently, the ITFlow installation documentation relies on legacy cron (crontab -e) to trigger the cron.php mail queue and background tasks.
However, modern distributions like Debian 12 (Bookworm) and many minimal KVM/cloud images are no longer shipping with a cron daemon installed by default, relying entirely on systemd.
Proposed Solution:
It would be highly beneficial to add a systemd timer configuration to the official documentation as the preferred/modern method for dedicated Linux hosts. This provides better state awareness, prevents overlapping script execution, and pushes cron errors directly to the journalctl logs for easier SMTP troubleshooting.
Systemd Service (/etc/systemd/system/itflow-cron.service):
Ini, TOML
[Unit]
Description=Run ITFlow Mail Queue and Background Tasks
[Service]
Type=oneshot
User=www-data
ExecStart=/usr/bin/php /var/www/html/cron.php
Systemd Timer (/etc/systemd/system/itflow-cron.timer):
Ini, TOML
[Unit]
Description=Trigger ITFlow Cron Every Minute
[Timer]
OnCalendar=*-*-* *:*:00
Persistent=true
[Install]
WantedBy=timers.target
Activation commands:
systemctl daemon-reload and
systemctl enable --now itflow-cron.timer.
Currently, the ITFlow installation documentation relies on legacy cron (crontab -e) to trigger the cron.php mail queue and background tasks.
However, modern distributions like Debian 12 (Bookworm) and many minimal KVM/cloud images are no longer shipping with a cron daemon installed by default, relying entirely on systemd.
Proposed Solution:
It would be highly beneficial to add a systemd timer configuration to the official documentation as the preferred/modern method for dedicated Linux hosts. This provides better state awareness, prevents overlapping script execution, and pushes cron errors directly to the journalctl logs for easier SMTP troubleshooting.
Systemd Service (/etc/systemd/system/itflow-cron.service):
Ini, TOML
Systemd Timer (/etc/systemd/system/itflow-cron.timer):
Activation commands:
systemctl daemon-reload and
systemctl enable --now itflow-cron.timer.