This is a V1 of my previous RFC to decompose the libvirt-daemon package
https://listman.redhat.com/archives/libvir-list/2022-November/235924.html
The end goal is to remove the libvirt-dameon dependency on the various
libvirt-daemon-driver-foo subpackages, allowing installation of a
modular daemon configuration without the traditional monolithic libvirtd.
Change from V1:
- Patches1-3 handled separate from this series since they are unrelated
- virtlockd, virtlogd, and virtproxyd are moved to their own subpackages
- lockd plugin moved to its own subpackage
- virt-admin, virt-host-validate, and others moved to new subpackage
TODO:
The libvirt-daemon package still contains the following files, which likely
need to move somewhere since they are needed by the modular daemons too.
%{_unitdir}/virt-guest-shutdown.target
I thought of moving this to the libs package, but that would be a change
for installations with only libvirt-client. AFAICT, it's used by
libvirt-guests and the qemu and lxc drivers.
%config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf
Another file related to remote access. Should it go to libvirt-libs?
%ghost %dir %{_rundir}/libvirt/
%ghost %dir %{_rundir}/libvirt/common/
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/images/
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/filesystems/
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/boot/
%dir %attr(0711, root, root) %{_localstatedir}/cache/libvirt/
%dir %attr(0755, root, root) %{_libdir}/libvirt/
%dir %attr(0755, root, root) %{_libdir}/libvirt/connection-driver/
These files and directories are needed by the modular daemons as well,
right? Where should they go? libvirt-daemon-<hypervisor> or
libvirt-daemon-driver-<hypervisor>?
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
%{_datadir}/polkit-1/rules.d/50-libvirt.rules
More files related to access. libvirt-libs?
Jim Fehlig (7):
spec: Move virtlockd to a new subpackage libvirt-daemon-lock
spec: Move virtlogd to a new subpackage libvirt-daemon-log
spec: Move virtproxyd to a new subpackage libvirt-daemon-proxy
spec: Move lockd plugin to a new subpackage
libvirt-daemon-plugin-lockd
spec: Move common files to a new subpackage libvirt-daemon-client
spec: Remove libvirt-daemon dependecy from drivers
spec: Remove libvirt-daemon dependency from hypervisor subpackages
libvirt.spec.in | 274 ++++++++++++++++++++++++++++++++----------------
1 file changed, 183 insertions(+), 91 deletions(-)
--
2.38.1