Skip to content

0.20: rpm: fix systemd scriptlet failures in Anaconda/Kickstart installs#1033

Merged
cpuguy83 merged 1 commit intoproject-dalec:release/0.20from
cpuguy83:0.20_fix_rpm_systemd_macros
Apr 13, 2026
Merged

0.20: rpm: fix systemd scriptlet failures in Anaconda/Kickstart installs#1033
cpuguy83 merged 1 commit intoproject-dalec:release/0.20from
cpuguy83:0.20_fix_rpm_systemd_macros

Conversation

@cpuguy83
Copy link
Copy Markdown
Collaborator

Cherry-pick #1020 to release/0.20


RPM %post and %preun scriptlets used raw systemctl commands that exit non-zero when systemd is installed but not running, causing Anaconda to abort package installation (libdnf5 treats scriptlet errors as fatal).

%post: Replace raw 'systemctl enable [--now]' with 'systemctl enable || :' gated on $1 == 1. For Start: true, use a separate 'systemctl start || :' guarded by /run/systemd/system. We intentionally avoid %systemd_post because it calls 'systemctl preset' which defers to system preset policy and would break the Enable: true contract.

%preun: Replace raw 'systemctl disable --now' with %systemd_preun macro, which handles the $1 == 0 check and /run/systemd/system guard internally.

(cherry picked from commit f89da73)

RPM %post and %preun scriptlets used raw systemctl commands that exit
non-zero when systemd is installed but not running, causing Anaconda to
abort package installation (libdnf5 treats scriptlet errors as fatal).

%post: Replace raw 'systemctl enable [--now]' with 'systemctl enable || :'
gated on $1 == 1. For Start: true, use a separate 'systemctl start || :'
guarded by /run/systemd/system. We intentionally avoid %systemd_post
because it calls 'systemctl preset' which defers to system preset policy
and would break the Enable: true contract.

%preun: Replace raw 'systemctl disable --now' with %systemd_preun macro,
which handles the $1 == 0 check and /run/systemd/system guard internally.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit f89da73)
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
@cpuguy83 cpuguy83 self-assigned this Apr 13, 2026
@cpuguy83 cpuguy83 merged commit c7d2a44 into project-dalec:release/0.20 Apr 13, 2026
21 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants