Skip to content

Conversation

@smortex
Copy link
Member

@smortex smortex commented Jan 28, 2026

Actualy unbreak 18.04 as hexdump used to be in bsdmainutils before being
moved to bsdextrautils.

Actualy unbreak 18.04 as hexdump used to be in bsdmainutils before being
moved to bsdextrautils.
@smortex smortex requested review from a team as code owners January 28, 2026 03:13
@smortex smortex added the enhancement New feature or request label Jan 28, 2026
@neomilium
Copy link
Member

On Ubuntu 22.04 and 24.04, cron is missing. Would you like I accept this PR and provide a new one to fix the issue?

@smortex
Copy link
Member Author

smortex commented Jan 29, 2026

On Ubuntu 22.04 and 24.04, cron is missing. Would you like I accept this PR and provide a new one to fix the issue?

Not sure about how to handle this.

Linux distros trend to switch from cron(8) to systemd.timer(5), but this is non-portable outside of the Linux world, meaning we should somewhat support both.

Also Linux distros which have switched to systemd.time still provide a cron package that is not installed by default (seems the case of Ubuntu 22.04 and 24.04 according to CI, but I feel like Debian 13 did that too, but the CI image contains cron for some reason). Not managing cron entries on such systems is fine, but after updating from an older operating-system, the cron package will be present, a crontab entry will exist, and the module shall not setup a new systemd.timer entry that unexpectedly duplicate this existing integration.

In the choria world, we had a similar issue and "fixed" it by having a Enum['cron', 'systemd', 'none'] parameter that defaults to none, allowing users to opt-in cron or systemd.timer as they like.

Cron is 30 years old and I believe it will still be here in 20 years so this feels a reasonable choice to me. What do you think?

Newer Linux distributions to not install the cron package by default.
While we might be interested in systemd.timer integration in the future,
for now just ensure cron is installed, and assume it will be on
targetted systems.

If this is an issue for some users, they will maybe open a PR to
contribute systemd.timer support :-D

If so, maybe see this comment:
#79 (comment)
@smortex
Copy link
Member Author

smortex commented Jan 30, 2026

In the meantime, I ensured cron is installed before running acceptance tests. Support for systemd may be added in a future PR that change how integrations are handled: ensure the one chosen by when user is enabled, and ignore the other (do not ensure it is absent).

@neomilium
Copy link
Member

In the choria world, we had a similar issue and "fixed" it by having a Enum['cron', 'systemd', 'none'] parameter that defaults to none, allowing users to opt-in cron or systemd.timer as they like.

Cron is 30 years old and I believe it will still be here in 20 years so this feels a reasonable choice to me. What do you think?

Its the better "fix" is know, go for it.

@neomilium
Copy link
Member

Would you like to fix it in this PR or in another one?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants