On Fri, Jul 14, 2023 at 04:02:30PM +0100, Daniel P. Berrangé wrote:
I don't have an objection to the conceptual approach.
My concern is about where the solution is applied and divergance from
Fedora guidelines.
The long term direction of Fedora / RPM has been to reduce the number
of scriptlets required to be explicitly listed in package specfiles, by
having RPM globally apply script logic for all content in certain given
directories. If we're using standard Fedora macros, then we'd not expect
to see problems if the macros get changed to adapt to new approaches,
but if we're going our own way all bets are off.
The current macros we're using are specified in the Fedora packaging
guidelines:
https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_sy...
That's *mostly* correct, but as noted in one of the commit messages
we have already been forced to implement a bunch of additional custom
logic because the standard macros simply don't cover all the
scenarios we need.
and their impl is provided by systemd upstream itself:
https://github.com/systemd/systemd/blob/main/src/rpm/macros.systemd.in
The problems described do not appear to be things unique to libvirt.
They're not! That said, somehow libvirt frequently manages to push
boundaries in ways that are fairly uncomfortable :)
IOW, I think the problem needs to be raised & addressed in
context of
the Fedora and systemd communities, rather than having libvirt diverge
from normal Feora packaging practice.
I absolutely agree with you, and I fully intend to push for these
changes (or comparable ones) to be implemented in systemd, where they
belong and from where they can benefit more than just us.
That said, timing is a concern. Fedora 38 and RHEL 9.2 are both on
libvirt 9.0.0 at the moment, so they haven't been hit by the issue
yet, but new releases for both are just around the corner and I have
little confidence that we'd be able to push the necessary changes
through in time. So a local solution seems like the only plausible
way that we can avoid breaking user's deployments.
--
Andrea Bolognani / Red Hat / Virtualization