On 12/11/22 10:46, Andrea Bolognani wrote:
On Fri, Dec 02, 2022 at 05:17:31PM -0700, Jim Fehlig wrote:
> 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.
IIUC this basically acts as a synchronization point during shutdown:
no guest will be torn down before it has been reached, and the daemon
will not be shut down either. On a default install, this is where
libvirt-guests.service would have a chance to perform the ON_SHUTDOWN
action, but the local admin or management application can replace
that with their own custom implementation.
> %config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf
> Another file related to remote access. Should it go to libvirt-libs?
This configures the remote side of the connection.
> %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>?
Server-side, and not specific to any 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?
These are for access to a local daemon, not remote access. And again
it's the server configuring what clients should be allowed to connect
to it.
Assuming I've gotten all of the above right :) then it seems to me
that all these files need to go in one of the server-side packages.
I think we should just have a libvirt-daemon-common package that
includes what you currently have put into the libvirt-daemon-client
package plus these files, and have all hypervisor drivers depend on
it directly.
Taking a cue from the storage driver, I called it libvirt-daemon-core (patches
4-6) in the original RFC
https://listman.redhat.com/archives/libvir-list/2022-November/235924.html
But I'm fine with libvirt-daemon-common too :-). I'll change it in V2 while
addressing the other comments.
Regards,
Jim