[libvirt PATCH] spec: libvirt-daemon: Add optional dependency on *-client

Martin Kletzander mkletzan at redhat.com
Fri Nov 4 15:22:38 UTC 2022


On Thu, Nov 03, 2022 at 05:24:18PM +0100, Jiri Denemark wrote:
>The libvirt-daemon subpackage contains libvirt-guests.sh script (used by
>libvirt-guests service), which requires virsh to actually work. But
>since dynamic libraries were separated from libvirt-client to
>libvirt-libs more than 6 years ago, libvirt-daemon no longer requires
>virsh to be installed. So unless libvirt-client is explicitly installed
>(either manually or by installing the libvirt meta package),
>libvirt-guests will not work.
>
>Just adding libvirt-client as a dependency of libvirt-daemon would go
>against the original idea behind splitting libvirt-client: users may not
>want to install or use any client binaries on the host where the daemon
>runs (either they just use various language bindings or access the
>daemon remotely). To solve this we could possibly turn libvirt-daemon
>into an empty package and separate the daemons and libvirt-guests into
>subpackages to make sure we support both use cases, but marking
>libvirt-client as Recommended for libvirt-daemon does the same job in a
>much simpler way.
>

Or you could just move the libvirt-guests files to libvirt-client
package since they couldn't work without it anyway.

>https://bugzilla.redhat.com/show_bug.cgi?id=2136591
>
>Signed-off-by: Jiri Denemark <jdenemar at redhat.com>

Reviewed-by: Martin Kletzander <mkletzan at redhat.com>

>---
> libvirt.spec.in | 6 ++++++
> 1 file changed, 6 insertions(+)
>
>diff --git a/libvirt.spec.in b/libvirt.spec.in
>index 0bbcdb8956..450f50f5b5 100644
>--- a/libvirt.spec.in
>+++ b/libvirt.spec.in
>@@ -441,6 +441,12 @@ Summary: Server side daemon and supporting files for libvirt library
> # The client side, i.e. shared libs are in a subpackage
> Requires: %{name}-libs = %{version}-%{release}
>
>+# The libvirt-guests.sh script requires virsh from libvirt-client subpackage,
>+# but not every deployment wants to use libvirt-guests service. Using
>+# Recommends here will install libvirt-client by default (if available), but
>+# RPM won't complain if the package is unavailable, masked, or removed later.
>+Recommends: %{name}-client = %{version}-%{release}
>+
> # netcat is needed on the server side so that clients that have
> # libvirt < 6.9.0 can connect, but newer versions will prefer
> # virt-ssh-helper. Making this a Recommends means that it gets
>-- 
>2.38.1
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20221104/872ae77e/attachment-0001.sig>


More information about the libvir-list mailing list