To avoid needlessly installing the monolithic daemon, replace the libvirt-daemon dependency with libvirt-daemon-common in the primary drivers. The qemu and libxl drivers need additional adjustment to break the dependency on libvirt-daemon. The virtqemud systemd service file has a hard dependency on virtlogd, hence libvirt-daemon-driver-qemu must depend on libvirt-daemon-log. The systemd service files of both drivers currently have a 'Requires' dependency on virtlockd, which is too strong since virtlockd is not enabled by default in either driver. Change the dependency to a 'Wants' to avoid a pacakge dependency between libvirt-daemon-driver-{libxl,qemu} and libvirt-daemon-lock. Signed-off-by: Jim Fehlig <jfehlig@xxxxxxxx> --- libvirt.spec.in | 10 ++++++---- src/libxl/virtxend.service.in | 2 +- src/qemu/virtqemud.service.in | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/libvirt.spec.in b/libvirt.spec.in index 4c39555ca9..fb318ad599 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -749,7 +749,8 @@ 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} +Requires: libvirt-daemon-log = %{version}-%{release} Requires: libvirt-libs = %{version}-%{release} Requires: /usr/bin/qemu-img # For image compression @@ -775,7 +776,8 @@ 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-daemon-log = %{version}-%{release} Requires: libvirt-libs = %{version}-%{release} # There really is a hard cross-driver dependency here Requires: libvirt-daemon-driver-network = %{version}-%{release} @@ -795,7 +797,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 @@ -807,7 +809,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 diff --git a/src/libxl/virtxend.service.in b/src/libxl/virtxend.service.in index 6b083c414f..9171d4fdf8 100644 --- a/src/libxl/virtxend.service.in +++ b/src/libxl/virtxend.service.in @@ -1,10 +1,10 @@ [Unit] Description=Virtualization xen daemon Conflicts=libvirtd.service -Requires=virtlockd.socket Requires=virtxend.socket Requires=virtxend-ro.socket Requires=virtxend-admin.socket +Wants=virtlockd.socket After=network.target After=dbus.service After=apparmor.service diff --git a/src/qemu/virtqemud.service.in b/src/qemu/virtqemud.service.in index 9ae3f01fa0..315359e287 100644 --- a/src/qemu/virtqemud.service.in +++ b/src/qemu/virtqemud.service.in @@ -2,10 +2,10 @@ Description=Virtualization qemu daemon Conflicts=libvirtd.service Requires=virtlogd.socket -Requires=virtlockd.socket Requires=virtqemud.socket Requires=virtqemud-ro.socket Requires=virtqemud-admin.socket +Wants=virtlockd.socket Wants=systemd-machined.service After=network.target After=dbus.service -- 2.38.1