From aa5895cbc72bd9b4bb1ce99e231b2ac4b25db9c4 Mon Sep 17 00:00:00 2001 From: Andrea Bolognani Date: Wed, 30 Aug 2023 17:45:47 +0200 Subject: [PATCH] rpm: Recommend libvirt-daemon for with_modular_daemons distros MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit A default deployment on modern distros uses modular daemons but switching back to the monolithic daemon, while not recommended, is still considered a perfectly valid option. For a monolithic daemon deployment, the upgrade to libvirt 9.2.0 or newer works as expected; a subsequent call to dnf autoremove, however, results in the libvirt-daemon package being removed and the deployment no longer working. In order to avoid that situation, mark the libvirt-daemon as recommended. This will unfortunately result in it being included in most installations despite not being necessary, but considering that the alternative is breaking existing setups on upgrade it feels like a reasonable tradeoff. Moreover, since the dependency on libvirt-daemon is just a weak one, it's still possible for people looking to minimize the footprint of their installation to manually remove the package after installation, mitigating the drawbacks of this approach. https://bugzilla.redhat.com/show_bug.cgi?id=2232805 Signed-off-by: Andrea Bolognani Reviewed-by: Erik Skultety Reviewed-by: Daniel P. Berrangé --- libvirt.spec.in | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libvirt.spec.in b/libvirt.spec.in index 6bbc7a0e9a..b471afebb1 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -830,6 +830,7 @@ Requires: libvirt-daemon-log = %{version}-%{release} Requires: libvirt-daemon-lock = %{version}-%{release} Requires: libvirt-daemon-plugin-lockd = %{version}-%{release} Requires: libvirt-daemon-proxy = %{version}-%{release} +Recommends: libvirt-daemon = %{version}-%{release} %else Requires: libvirt-daemon = %{version}-%{release} %endif @@ -857,6 +858,7 @@ Requires: libvirt-daemon-log = %{version}-%{release} Requires: libvirt-daemon-lock = %{version}-%{release} Requires: libvirt-daemon-plugin-lockd = %{version}-%{release} Requires: libvirt-daemon-proxy = %{version}-%{release} +Recommends: libvirt-daemon = %{version}-%{release} %else Requires: libvirt-daemon = %{version}-%{release} %endif @@ -881,6 +883,7 @@ Summary: Server side daemon & driver required to run LXC guests %if %{with_modular_daemons} Requires: libvirt-daemon-common = %{version}-%{release} Requires: libvirt-daemon-proxy = %{version}-%{release} +Recommends: libvirt-daemon = %{version}-%{release} %else Requires: libvirt-daemon = %{version}-%{release} %endif @@ -906,6 +909,7 @@ Requires: libvirt-daemon-common = %{version}-%{release} Requires: libvirt-daemon-lock = %{version}-%{release} Requires: libvirt-daemon-plugin-lockd = %{version}-%{release} Requires: libvirt-daemon-proxy = %{version}-%{release} +Recommends: libvirt-daemon = %{version}-%{release} %else Requires: libvirt-daemon = %{version}-%{release} %endif @@ -930,6 +934,7 @@ Summary: Server side daemon & driver required to run VirtualBox guests %if %{with_modular_daemons} Requires: libvirt-daemon-common = %{version}-%{release} Requires: libvirt-daemon-proxy = %{version}-%{release} +Recommends: libvirt-daemon = %{version}-%{release} %else Requires: libvirt-daemon = %{version}-%{release} %endif -- 2.39.5