[PATCH V7 09/12] spec: Remove libvirt-daemon dependency from drivers

Jim Fehlig jfehlig at suse.com
Tue Jan 10 23:55:03 UTC 2023


On 1/9/23 10:42, Jim Fehlig wrote:
> To avoid needlessly installing the monolithic daemon, replace the
> libvirt-daemon dependency with libvirt-daemon-common. The common
> subpackage contains all the utilities (e.g. virt-admin) and files
> used by other daemons.
> 
> Signed-off-by: Jim Fehlig <jfehlig at suse.com>
> Reviewed-by: Daniel P. Berrangé <berrange at redhat.com>
> Reviewed-by: Andrea Bolognani <abologna at redhat.com>
> ---
>   libvirt.spec.in | 22 ++++++++++------------
>   1 file changed, 10 insertions(+), 12 deletions(-)
> 
> diff --git a/libvirt.spec.in b/libvirt.spec.in
> index 3927698dcd..2cc77a2622 100644
> --- a/libvirt.spec.in
> +++ b/libvirt.spec.in
> @@ -519,7 +519,6 @@ the monolithic libvirtd
>   %package daemon-config-network
>   Summary: Default configuration files for the libvirtd daemon
>   
> -Requires: libvirt-daemon = %{version}-%{release}
>   Requires: libvirt-daemon-driver-network = %{version}-%{release}
>   
>   %description daemon-config-network
> @@ -528,7 +527,6 @@ Default configuration files for setting up NAT based networking
>   %package daemon-config-nwfilter
>   Summary: Network filter configuration files for the libvirtd daemon
>   
> -Requires: libvirt-daemon = %{version}-%{release}
>   Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
>   
>   %description daemon-config-nwfilter
> @@ -536,7 +534,7 @@ Network filter configuration files for cleaning guest traffic
>   
>   %package daemon-driver-network
>   Summary: Network driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   Requires: dnsmasq >= 2.41
>   Requires: iptables
> @@ -548,7 +546,7 @@ bridge capabilities.
>   
>   %package daemon-driver-nwfilter
>   Summary: Nwfilter driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   Requires: iptables
>   Requires: ebtables
> @@ -560,7 +558,7 @@ iptables and ip6tables capabilities
>   
>   %package daemon-driver-nodedev
>   Summary: Nodedev driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   # needed for device enumeration
>   Requires: systemd >= 185
> @@ -576,7 +574,7 @@ capabilities.
>   
>   %package daemon-driver-interface
>   Summary: Interface driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   %if %{with_netcf}
>   Requires: netcf-libs >= 0.2.2
> @@ -588,7 +586,7 @@ an implementation of the host network interface APIs.
>   
>   %package daemon-driver-secret
>   Summary: Secret driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   
>   %description daemon-driver-secret
> @@ -597,7 +595,7 @@ an implementation of the secret key APIs.
>   
>   %package daemon-driver-storage-core
>   Summary: Storage driver plugin including base backends for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   Requires: nfs-utils
>   # For mkfs
> @@ -748,7 +746,7 @@ parted and more.
>   %if %{with_qemu}
>   %package daemon-driver-qemu
>   Summary: QEMU driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}

While testing this series I found libvirt-daemon-common alone is not enough. 
virtqemud.service.in has

Requires=virtlogd.socket
Requires=virtlockd.socket

So we'll need to add libvirt-daemon-lock and libvirt-daemon-log here, and where 
needed in the other hypervisor drivers. Or adjust the service files. Preferences?

Regards,
Jim

>   Requires: libvirt-libs = %{version}-%{release}
>   Requires: /usr/bin/qemu-img
>   # For image compression
> @@ -771,7 +769,7 @@ QEMU
>   %if %{with_lxc}
>   %package daemon-driver-lxc
>   Summary: LXC driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   # There really is a hard cross-driver dependency here
>   Requires: libvirt-daemon-driver-network = %{version}-%{release}
> @@ -791,7 +789,7 @@ the Linux kernel
>   %if %{with_vbox}
>   %package daemon-driver-vbox
>   Summary: VirtualBox driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   
>   %description daemon-driver-vbox
> @@ -803,7 +801,7 @@ VirtualBox
>   %if %{with_libxl}
>   %package daemon-driver-libxl
>   Summary: Libxl driver plugin for the libvirtd daemon
> -Requires: libvirt-daemon = %{version}-%{release}
> +Requires: libvirt-daemon-common = %{version}-%{release}
>   Requires: libvirt-libs = %{version}-%{release}
>   Obsoletes: libvirt-daemon-driver-xen < 4.3.0
>   



More information about the libvir-list mailing list