diff --git a/libvirt.spec b/libvirt.spec
index 4b67d03..3e4de1f 100644
--- a/libvirt.spec
+++ b/libvirt.spec
@@ -138,7 +138,6 @@
     %define with_netcf 0%{!?_without_netcf:1}
 %endif
 
-
 # fuse is used to provide virtualized /proc for LXC
 %if %{with_lxc}
     %define with_fuse      0%{!?_without_fuse:1}
@@ -229,8 +228,8 @@
 
 Summary: Library providing a simple virtualization API
 Name: libvirt
-Version: 8.10.0
-Release: 2%{?dist}
+Version: 9.0.0
+Release: 1%{?dist}
 License: LGPLv2+
 URL: https://libvirt.org/
 
@@ -258,7 +257,6 @@ Obsoletes: libvirt-daemon-uml <= 5.0.0
 Requires: libvirt-daemon-driver-vbox = %{version}-%{release}
 %endif
 Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
-
 Requires: libvirt-daemon-driver-interface = %{version}-%{release}
 Requires: libvirt-daemon-driver-secret = %{version}-%{release}
 Requires: libvirt-daemon-driver-storage = %{version}-%{release}
@@ -349,6 +347,9 @@ BuildRequires: libssh2-devel >= 1.3.0
 %if %{with_netcf}
 BuildRequires: netcf-devel >= 0.2.2
 %endif
+%if (0%{?fedora} >= 36) || (0%{?rhel} >= 9)
+BuildRequires: passt
+%endif
 %if %{with_esx}
 BuildRequires: libcurl-devel
 %endif
@@ -358,33 +359,25 @@ BuildRequires: libwsman-devel >= 2.6.3
 BuildRequires: audit-libs-devel
 # we need /usr/sbin/dtrace
 BuildRequires: systemtap-sdt-devel
-
 # For mount/umount in FS driver
 BuildRequires: util-linux
 # For showmount in FS driver (netfs discovery)
 BuildRequires: nfs-utils
-
 # Fedora build root suckage
 BuildRequires: gawk
-
 # For storage wiping with different algorithms
 BuildRequires: scrub
-
 %if %{with_numad}
 BuildRequires: numad
 %endif
-
 %if %{with_wireshark}
 BuildRequires: wireshark-devel
 %endif
-
 %if %{with_libssh}
 BuildRequires: libssh-devel >= 0.8.1
 %endif
-
 BuildRequires: rpcgen
 BuildRequires: libtirpc-devel
-
 # Needed for the firewalld_reload macro
 %if %{with_firewalld_zone}
 BuildRequires: firewalld-filesystem
@@ -404,7 +397,6 @@ BuildRequires: mingw32-portablexdr
 BuildRequires: mingw32-dlfcn
 BuildRequires: mingw32-libssh2
 BuildRequires: mingw32-curl
-
 BuildRequires: mingw64-filesystem
 BuildRequires: mingw64-gcc
 BuildRequires: mingw64-binutils
@@ -439,29 +431,24 @@ Summary: Server side daemon and supporting files for libvirt library
 # for subpackages are listed later in those subpackages)
 
 # The client side, i.e. shared libs are in a subpackage
-Requires: %{name}-libs = %{version}-%{release}
-
+Requires: libvirt-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}
-
+Recommends: libvirt-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
 # installed by default, but can still be removed if compatibility
 # with old clients is not required
 Recommends: /usr/bin/nc
-
 # for modprobe of pci devices
 Requires: module-init-tools
-
 # for /sbin/ip
 Requires: iproute
 # for /sbin/tc
 Requires: iproute-tc
-
 Requires: polkit >= 0.112
 %if %{with_dmidecode}
 # For virConnectGetSysinfo
@@ -523,7 +510,6 @@ The network driver plugin for the libvirtd daemon, providing
 an implementation of the virtual network APIs using the Linux
 bridge capabilities.
 
-
 %package daemon-driver-nwfilter
 Summary: Nwfilter driver plugin for the libvirtd daemon
 Requires: libvirt-daemon = %{version}-%{release}
@@ -536,7 +522,6 @@ The nwfilter driver plugin for the libvirtd daemon, providing
 an implementation of the firewall APIs using the ebtables,
 iptables and ip6tables capabilities
 
-
 %package daemon-driver-nodedev
 Summary: Nodedev driver plugin for the libvirtd daemon
 Requires: libvirt-daemon = %{version}-%{release}
@@ -551,7 +536,6 @@ The nodedev driver plugin for the libvirtd daemon, providing
 an implementation of the node device APIs using the udev
 capabilities.
 
-
 %package daemon-driver-interface
 Summary: Interface driver plugin for the libvirtd daemon
 Requires: libvirt-daemon = %{version}-%{release}
@@ -604,7 +588,6 @@ Requires: lvm2
 The storage driver backend adding implementation of the storage APIs for block
 volumes using lvm.
 
-
 %package daemon-driver-storage-disk
 Summary: Storage driver plugin for disk
 Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -616,7 +599,6 @@ Requires: device-mapper
 The storage driver backend adding implementation of the storage APIs for block
 volumes using the host disks.
 
-
 %package daemon-driver-storage-scsi
 Summary: Storage driver plugin for local scsi devices
 Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -626,7 +608,6 @@ Requires: libvirt-libs = %{version}-%{release}
 The storage driver backend adding implementation of the storage APIs for scsi
 host devices.
 
-
 %package daemon-driver-storage-iscsi
 Summary: Storage driver plugin for iscsi
 Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -637,7 +618,6 @@ Requires: iscsi-initiator-utils
 The storage driver backend adding implementation of the storage APIs for iscsi
 volumes using the host iscsi stack.
 
-
 %if %{with_storage_iscsi_direct}
 %package daemon-driver-storage-iscsi-direct
 Summary: Storage driver plugin for iscsi-direct
@@ -649,7 +629,6 @@ The storage driver backend adding implementation of the storage APIs for iscsi
 volumes using libiscsi direct connection.
 %endif
 
-
 %package daemon-driver-storage-mpath
 Summary: Storage driver plugin for multipath volumes
 Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -660,7 +639,6 @@ Requires: device-mapper
 The storage driver backend adding implementation of the storage APIs for
 multipath storage using device mapper.
 
-
 %if %{with_storage_gluster}
 %package daemon-driver-storage-gluster
 Summary: Storage driver plugin for gluster
@@ -678,7 +656,6 @@ The storage driver backend adding implementation of the storage APIs for gluster
 volumes using libgfapi.
 %endif
 
-
 %if %{with_storage_rbd}
 %package daemon-driver-storage-rbd
 Summary: Storage driver plugin for rbd
@@ -690,7 +667,6 @@ The storage driver backend adding implementation of the storage APIs for rbd
 volumes using the ceph protocol.
 %endif
 
-
 %if %{with_storage_zfs}
 %package daemon-driver-storage-zfs
 Summary: Storage driver plugin for ZFS
@@ -705,7 +681,6 @@ The storage driver backend adding implementation of the storage APIs for
 ZFS volumes.
 %endif
 
-
 %package daemon-driver-storage
 Summary: Storage driver plugin including all backends for the libvirtd daemon
 Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
@@ -732,7 +707,6 @@ The storage driver plugin for the libvirtd daemon, providing
 an implementation of the storage APIs using LVM, iSCSI,
 parted and more.
 
-
 %if %{with_qemu}
 %package daemon-driver-qemu
 Summary: QEMU driver plugin for the libvirtd daemon
@@ -746,6 +720,9 @@ Requires: lzop
 Requires: xz
 Requires: systemd-container
 Requires: swtpm-tools
+    %if (0%{?fedora} >= 36) || (0%{?rhel} >= 9)
+Recommends: passt
+    %endif
 
 %description daemon-driver-qemu
 The qemu driver plugin for the libvirtd daemon, providing
@@ -753,7 +730,6 @@ an implementation of the hypervisor driver APIs using
 QEMU
 %endif
 
-
 %if %{with_lxc}
 %package daemon-driver-lxc
 Summary: LXC driver plugin for the libvirtd daemon
@@ -769,7 +745,6 @@ an implementation of the hypervisor driver APIs using
 the Linux kernel
 %endif
 
-
 %if %{with_vbox}
 %package daemon-driver-vbox
 Summary: VirtualBox driver plugin for the libvirtd daemon
@@ -782,7 +757,6 @@ an implementation of the hypervisor driver APIs using
 VirtualBox
 %endif
 
-
 %if %{with_libxl}
 %package daemon-driver-libxl
 Summary: Libxl driver plugin for the libvirtd daemon
@@ -796,8 +770,6 @@ an implementation of the hypervisor driver APIs using
 Libxl
 %endif
 
-
-
 %if %{with_qemu_tcg}
 %package daemon-qemu
 Summary: Server side daemon & driver required to run QEMU guests
@@ -817,7 +789,6 @@ Server side daemon and driver required to manage the virtualization
 capabilities of the QEMU TCG emulators
 %endif
 
-
 %if %{with_qemu_kvm}
 %package daemon-kvm
 Summary: Server side daemon & driver required to run KVM guests
@@ -837,7 +808,6 @@ Server side daemon and driver required to manage the virtualization
 capabilities of the KVM hypervisor
 %endif
 
-
 %if %{with_lxc}
 %package daemon-lxc
 Summary: Server side daemon & driver required to run LXC guests
@@ -856,15 +826,12 @@ Server side daemon and driver required to manage the virtualization
 capabilities of LXC
 %endif
 
-
 %if %{with_libxl}
 %package daemon-xen
 Summary: Server side daemon & driver required to run XEN guests
 
 Requires: libvirt-daemon = %{version}-%{release}
-    %if %{with_libxl}
 Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
-    %endif
 Requires: libvirt-daemon-driver-interface = %{version}-%{release}
 Requires: libvirt-daemon-driver-network = %{version}-%{release}
 Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
@@ -898,7 +865,7 @@ capabilities of VirtualBox
 
 %package client
 Summary: Client side utilities of the libvirt library
-Requires: %{name}-libs = %{version}-%{release}
+Requires: libvirt-libs = %{version}-%{release}
 # Needed by virt-pki-validate script.
 Requires: gnutls-utils
 
@@ -911,7 +878,7 @@ capabilities of recent versions of Linux (and other OSes).
 
 %package client-qemu
 Summary: Additional client side utilities for QEMU
-Requires: %{name}-libs = %{version}-%{release}
+Requires: libvirt-libs = %{version}-%{release}
 Requires: python3-libvirt >= 3.7.0
 
 %description client-qemu
@@ -933,7 +900,7 @@ Shared libraries for accessing the libvirt daemon.
 %package wireshark
 Summary: Wireshark dissector plugin for libvirt RPC transactions
 Requires: wireshark
-Requires: %{name}-libs = %{version}-%{release}
+Requires: libvirt-libs = %{version}-%{release}
 
 %description wireshark
 Wireshark dissector plugin for better analysis of libvirt RPC traffic.
@@ -942,7 +909,7 @@ Wireshark dissector plugin for better analysis of libvirt RPC traffic.
 %if %{with_lxc}
 %package login-shell
 Summary: Login shell for connecting users to an LXC container
-Requires: %{name}-libs = %{version}-%{release}
+Requires: libvirt-libs = %{version}-%{release}
 
 %description login-shell
 Provides the set-uid virt-login-shell binary that is used to
@@ -952,7 +919,7 @@ namespaces.
 
 %package devel
 Summary: Libraries, includes, etc. to compile with the libvirt library
-Requires: %{name}-libs = %{version}-%{release}
+Requires: libvirt-libs = %{version}-%{release}
 Requires: pkgconfig
 
 %description devel
@@ -964,8 +931,8 @@ Summary: Sanlock lock manager plugin for QEMU driver
 Requires: sanlock >= 2.4
 #for virt-sanlock-cleanup require augeas
 Requires: augeas
-Requires: %{name}-daemon = %{version}-%{release}
-Requires: %{name}-libs = %{version}-%{release}
+Requires: libvirt-daemon = %{version}-%{release}
+Requires: libvirt-libs = %{version}-%{release}
 
 %description lock-sanlock
 Includes the Sanlock lock manager plugin for the QEMU
@@ -1000,7 +967,6 @@ MinGW Windows libvirt virtualization library.
 %endif
 
 %prep
-
 %autosetup -S git_am
 
 %build
@@ -1154,12 +1120,11 @@ exit 1
 %define who   %{?packager}%{!?packager:Unknown}
 %define arg_packager -Dpackager="%{who}, %{when}, %{where}"
 %define arg_packager_version -Dpackager_version="%{release}"
-
 %define arg_selinux_mount -Dselinux_mount="/sys/fs/selinux"
 
 # place macros above and build commands below this comment
 
-export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
+export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/libvirt.spec)
 
 %meson \
            -Drunstatedir=%{_rundir} \
@@ -1314,7 +1279,7 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
 %install
 rm -fr %{buildroot}
 
-export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
+export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/libvirt.spec)
 
 %meson_install
 
@@ -1396,8 +1361,9 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh
 
 %mingw_debug_install_post
 
-%endif
+%mingw_find_lang %{name}
 
+%endif
 
 %check
 # Building on slow archs, like emulated s390x in Fedora copr, requires
@@ -1437,7 +1403,6 @@ fi \
 # libvirtd. The uid number is irrelevant, so we use dynamic allocation
 # described at the above link.
 getent group libvirt >/dev/null || groupadd -r libvirt
-
 exit 0
 
 %post daemon
@@ -1448,14 +1413,11 @@ exit 0
 %else
 %libvirt_daemon_systemd_post_inet libvirtd
 %endif
-
 %systemd_post libvirt-guests.service
-
 %libvirt_daemon_schedule_restart libvirtd
 
 %preun daemon
 %systemd_preun libvirt-guests.service
-
 %libvirt_daemon_systemd_preun_inet libvirtd
 %libvirt_daemon_systemd_preun_inet virtproxyd
 %libvirt_daemon_systemd_preun_priv virtlogd
@@ -1468,18 +1430,6 @@ if [ $1 -ge 1 ] ; then
 fi
 %systemd_postun libvirt-guests.service
 
-# In upgrade scenario we must explicitly enable virtlockd/virtlogd
-# sockets, if libvirtd is already enabled and start them if
-# libvirtd is running, otherwise you'll get failures to start
-# guests
-%triggerpostun daemon -- libvirt-daemon < 1.3.0
-if [ $1 -ge 1 ] ; then
-    /bin/systemctl is-enabled libvirtd.service 1>/dev/null 2>&1 &&
-        /bin/systemctl enable virtlogd.socket virtlogd-admin.socket || :
-    /bin/systemctl is-active libvirtd.service 1>/dev/null 2>&1 &&
-        /bin/systemctl start virtlogd.socket virtlogd-admin.socket || :
-fi
-
 %posttrans daemon
 %libvirt_sysconfig_posttrans libvirtd virtproxyd virtlogd virtlockd libvirt-guests
 if test %libvirt_daemon_needs_restart libvirtd
@@ -1499,6 +1449,7 @@ then
                 libvirtd-admin.socket \
                 libvirtd-tls.socket \
                 libvirtd-tcp.socket >/dev/null 2>&1 || :
+        /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
     else
         # Old libvirtd owns the sockets and will delete them on
         # shutdown. Can't use a try-restart as libvirtd will simply
@@ -1513,7 +1464,6 @@ then
         /bin/systemctl start libvirtd.service >/dev/null 2>&1 || :
     fi
 fi
-
 %libvirt_daemon_finish_restart libvirtd
 
 %pre daemon-driver-network
@@ -1605,7 +1555,6 @@ fi
 %libvirt_sysconfig_posttrans virtsecretd
 %libvirt_daemon_perform_restart virtsecretd
 
-
 %pre daemon-driver-storage-core
 %libvirt_sysconfig_pre virtstoraged
 
@@ -1622,7 +1571,6 @@ fi
 %libvirt_sysconfig_posttrans virtstoraged
 %libvirt_daemon_perform_restart virtstoraged
 
-
 %if %{with_qemu}
 %pre daemon-driver-qemu
 %libvirt_sysconfig_pre virtqemud
@@ -1654,7 +1602,6 @@ exit 0
 %libvirt_daemon_perform_restart virtqemud
 %endif
 
-
 %if %{with_lxc}
 %pre daemon-driver-lxc
 %libvirt_sysconfig_pre virtlxcd
@@ -1673,7 +1620,6 @@ exit 0
 %libvirt_daemon_perform_restart virtlxcd
 %endif
 
-
 %if %{with_vbox}
 %post daemon-driver-vbox
     %if %{with_modular_daemons}
@@ -1692,7 +1638,6 @@ exit 0
 %libvirt_daemon_perform_restart virtvboxd
 %endif
 
-
 %if %{with_libxl}
 %post daemon-driver-libxl
     %if %{with_modular_daemons}
@@ -1711,7 +1656,6 @@ exit 0
 %libvirt_daemon_perform_restart virtxend
 %endif
 
-
 %post daemon-config-network
 if test $1 -eq 1 && test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml ; then
     # see if the network used by default network creates a conflict,
@@ -1787,7 +1731,6 @@ exit 0
 %doc libvirt-docs/*
 
 %files daemon
-
 %{_unitdir}/libvirtd.service
 %{_unitdir}/libvirtd.socket
 %{_unitdir}/libvirtd-ro.socket
@@ -1814,25 +1757,21 @@ exit 0
 %config(noreplace) %{_sysconfdir}/libvirt/virtlockd.conf
 %config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf
 %config(noreplace) %{_prefix}/lib/sysctl.d/60-libvirtd.conf
-
 %config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd
 %dir %{_datadir}/libvirt/
-
 %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/
-%dir %attr(0755, root, root) %{_libdir}/libvirt/lock-driver
+%dir %attr(0755, root, root) %{_libdir}/libvirt/lock-driver/
+%dir %attr(0755, root, root) %{_libdir}/libvirt/storage-backend/
+%dir %attr(0755, root, root) %{_libdir}/libvirt/storage-file/
 %attr(0755, root, root) %{_libdir}/libvirt/lock-driver/lockd.so
-
 %{_datadir}/augeas/lenses/libvirtd.aug
 %{_datadir}/augeas/lenses/tests/test_libvirtd.aug
 %{_datadir}/augeas/lenses/virtlogd.aug
@@ -1845,23 +1784,17 @@ exit 0
 %if %{with_qemu}
 %{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug
 %endif
-
 %{_datadir}/polkit-1/actions/org.libvirt.unix.policy
 %{_datadir}/polkit-1/actions/org.libvirt.api.policy
 %{_datadir}/polkit-1/rules.d/50-libvirt.rules
-
 %dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/
-
 %attr(0755, root, root) %{_libexecdir}/libvirt_iohelper
-
 %attr(0755, root, root) %{_bindir}/virt-ssh-helper
-
 %attr(0755, root, root) %{_sbindir}/libvirtd
 %attr(0755, root, root) %{_sbindir}/virtproxyd
 %attr(0755, root, root) %{_sbindir}/virtlogd
 %attr(0755, root, root) %{_sbindir}/virtlockd
 %attr(0755, root, root) %{_libexecdir}/libvirt-guests.sh
-
 %{_mandir}/man1/virt-admin.1*
 %{_mandir}/man1/virt-host-validate.1*
 %{_mandir}/man8/virt-ssh-helper.8*
@@ -1870,7 +1803,6 @@ exit 0
 %{_mandir}/man8/virtlogd.8*
 %{_mandir}/man8/virtlockd.8*
 %{_mandir}/man8/virtproxyd.8*
-
 %{_bindir}/virt-host-validate
 %{_bindir}/virt-admin
 %{_datadir}/bash-completion/completions/virt-admin
@@ -1896,7 +1828,7 @@ exit 0
 %{_unitdir}/virtinterfaced-admin.socket
 %attr(0755, root, root) %{_sbindir}/virtinterfaced
 %ghost %dir %{_rundir}/libvirt/interface/
-%{_libdir}/%{name}/connection-driver/libvirt_driver_interface.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_interface.so
 %{_mandir}/man8/virtinterfaced.8*
 
 %files daemon-driver-network
@@ -1915,9 +1847,8 @@ exit 0
 %dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/network/
 %dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/dnsmasq/
 %attr(0755, root, root) %{_libexecdir}/libvirt_leaseshelper
-%{_libdir}/%{name}/connection-driver/libvirt_driver_network.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
 %{_mandir}/man8/virtnetworkd.8*
-
 %if %{with_firewalld_zone}
 %{_prefix}/lib/firewalld/zones/libvirt.xml
 %{_prefix}/lib/firewalld/zones/libvirt-routed.xml
@@ -1936,7 +1867,7 @@ exit 0
 %{_unitdir}/virtnodedevd-admin.socket
 %attr(0755, root, root) %{_sbindir}/virtnodedevd
 %ghost %dir %{_rundir}/libvirt/nodedev/
-%{_libdir}/%{name}/connection-driver/libvirt_driver_nodedev.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_nodedev.so
 %{_mandir}/man8/virtnodedevd.8*
 
 %files daemon-driver-nwfilter
@@ -1952,7 +1883,7 @@ exit 0
 %ghost %dir %{_rundir}/libvirt/network/
 %ghost %dir %{_rundir}/libvirt/nwfilter-binding/
 %ghost %dir %{_rundir}/libvirt/nwfilter/
-%{_libdir}/%{name}/connection-driver/libvirt_driver_nwfilter.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_nwfilter.so
 %{_mandir}/man8/virtnwfilterd.8*
 
 %files daemon-driver-secret
@@ -1966,7 +1897,7 @@ exit 0
 %attr(0755, root, root) %{_sbindir}/virtsecretd
 %dir %attr(0700, root, root) %{_sysconfdir}/libvirt/secrets/
 %ghost %dir %{_rundir}/libvirt/secrets/
-%{_libdir}/%{name}/connection-driver/libvirt_driver_secret.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_secret.so
 %{_mandir}/man8/virtsecretd.8*
 
 %files daemon-driver-storage
@@ -1984,45 +1915,45 @@ exit 0
 %dir %attr(0700, root, root) %{_sysconfdir}/libvirt/storage/
 %dir %attr(0700, root, root) %{_sysconfdir}/libvirt/storage/autostart/
 %ghost %dir %{_rundir}/libvirt/storage/
-%{_libdir}/%{name}/connection-driver/libvirt_driver_storage.so
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_fs.so
-%{_libdir}/%{name}/storage-file/libvirt_storage_file_fs.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_storage.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_fs.so
+%{_libdir}/libvirt/storage-file/libvirt_storage_file_fs.so
 %{_mandir}/man8/virtstoraged.8*
 
 %files daemon-driver-storage-disk
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_disk.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_disk.so
 
 %files daemon-driver-storage-logical
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_logical.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_logical.so
 
 %files daemon-driver-storage-scsi
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_scsi.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_scsi.so
 
 %files daemon-driver-storage-iscsi
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_iscsi.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
 
 %if %{with_storage_iscsi_direct}
 %files daemon-driver-storage-iscsi-direct
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_iscsi-direct.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi-direct.so
 %endif
 
 %files daemon-driver-storage-mpath
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_mpath.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
 
 %if %{with_storage_gluster}
 %files daemon-driver-storage-gluster
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_gluster.so
-%{_libdir}/%{name}/storage-file/libvirt_storage_file_gluster.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_gluster.so
+%{_libdir}/libvirt/storage-file/libvirt_storage_file_gluster.so
 %endif
 
 %if %{with_storage_rbd}
 %files daemon-driver-storage-rbd
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_rbd.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_rbd.so
 %endif
 
 %if %{with_storage_zfs}
 %files daemon-driver-storage-zfs
-%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_zfs.so
+%{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so
 %endif
 
 %if %{with_qemu}
@@ -2044,6 +1975,7 @@ exit 0
 %config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.qemu
 %ghost %dir %{_rundir}/libvirt/qemu/
 %ghost %dir %{_rundir}/libvirt/qemu/dbus/
+%ghost %dir %{_rundir}/libvirt/qemu/passt/
 %ghost %dir %{_rundir}/libvirt/qemu/slirp/
 %ghost %dir %{_rundir}/libvirt/qemu/swtpm/
 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/libvirt/qemu/
@@ -2058,7 +1990,7 @@ exit 0
 %dir %attr(0750, root, root) %{_localstatedir}/cache/libvirt/qemu/
 %{_datadir}/augeas/lenses/libvirtd_qemu.aug
 %{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
-%{_libdir}/%{name}/connection-driver/libvirt_driver_qemu.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_qemu.so
 %dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/swtpm/
 %dir %attr(0730, tss, tss) %{_localstatedir}/log/swtpm/libvirt/qemu/
 %{_bindir}/virt-qemu-run
@@ -2086,7 +2018,7 @@ exit 0
 %{_datadir}/augeas/lenses/libvirtd_lxc.aug
 %{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
 %attr(0755, root, root) %{_libexecdir}/libvirt_lxc
-%{_libdir}/%{name}/connection-driver/libvirt_driver_lxc.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
 %{_mandir}/man8/virtlxcd.8*
 %endif
 
@@ -2114,7 +2046,7 @@ exit 0
 %dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/libxl/channel/target/
 %dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/libxl/dump/
 %dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/libxl/save/
-%{_libdir}/%{name}/connection-driver/libvirt_driver_libxl.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_libxl.so
 %{_mandir}/man8/virtxend.8*
 %endif
 
@@ -2128,7 +2060,7 @@ exit 0
 %{_unitdir}/virtvboxd-ro.socket
 %{_unitdir}/virtvboxd-admin.socket
 %attr(0755, root, root) %{_sbindir}/virtvboxd
-%{_libdir}/%{name}/connection-driver/libvirt_driver_vbox.so
+%{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so
 %{_mandir}/man8/virtvboxd.8*
 %endif
 
@@ -2179,7 +2111,6 @@ exit 0
 %{_bindir}/virt-xml-validate
 %{_bindir}/virt-pki-query-dn
 %{_bindir}/virt-pki-validate
-
 %{_datadir}/bash-completion/completions/virsh
 
 %if %{with_qemu}
@@ -2201,17 +2132,13 @@ exit 0
 %{_libdir}/libvirt-admin.so.*
 %dir %{_datadir}/libvirt/
 %dir %{_datadir}/libvirt/schemas/
-
 %{_datadir}/systemtap/tapset/libvirt_probes*.stp
 %{_datadir}/systemtap/tapset/libvirt_functions.stp
 %if %{with_qemu}
 %{_datadir}/systemtap/tapset/libvirt_qemu_probes*.stp
 %endif
-
 %{_datadir}/libvirt/schemas/*.rng
-
 %{_datadir}/libvirt/cpu_map/*.xml
-
 %{_datadir}/libvirt/test-screenshot.png
 
 %if %{with_wireshark}
@@ -2259,7 +2186,6 @@ exit 0
 %{_libdir}/pkgconfig/libvirt-admin.pc
 %{_libdir}/pkgconfig/libvirt-qemu.pc
 %{_libdir}/pkgconfig/libvirt-lxc.pc
-
 %dir %{_datadir}/libvirt/api/
 %{_datadir}/libvirt/api/libvirt-api.xml
 %{_datadir}/libvirt/api/libvirt-admin-api.xml
@@ -2267,11 +2193,10 @@ exit 0
 %{_datadir}/libvirt/api/libvirt-lxc-api.xml
 
 %if %{with_mingw}
-%files -n mingw32-libvirt
+%files -n mingw32-libvirt -f mingw32-libvirt.lang
 %dir %{mingw32_sysconfdir}/libvirt/
 %config(noreplace) %{mingw32_sysconfdir}/libvirt/libvirt.conf
 %config(noreplace) %{mingw32_sysconfdir}/libvirt/libvirt-admin.conf
-
 %{mingw32_bindir}/libvirt-0.dll
 %{mingw32_bindir}/virsh.exe
 %{mingw32_bindir}/virt-admin.exe
@@ -2281,7 +2206,6 @@ exit 0
 %{mingw32_bindir}/libvirt-lxc-0.dll
 %{mingw32_bindir}/libvirt-qemu-0.dll
 %{mingw32_bindir}/libvirt-admin-0.dll
-
 %{mingw32_libdir}/libvirt.dll.a
 %{mingw32_libdir}/pkgconfig/libvirt.pc
 %{mingw32_libdir}/pkgconfig/libvirt-qemu.pc
@@ -2290,23 +2214,16 @@ exit 0
 %{mingw32_libdir}/libvirt-lxc.dll.a
 %{mingw32_libdir}/libvirt-qemu.dll.a
 %{mingw32_libdir}/libvirt-admin.dll.a
-
 %dir %{mingw32_datadir}/libvirt/
 %dir %{mingw32_datadir}/libvirt/schemas/
 %{mingw32_datadir}/libvirt/schemas/*.rng
-
 %dir %{mingw32_datadir}/libvirt/api/
 %{mingw32_datadir}/libvirt/api/libvirt-api.xml
 %{mingw32_datadir}/libvirt/api/libvirt-lxc-api.xml
 %{mingw32_datadir}/libvirt/api/libvirt-qemu-api.xml
 %{mingw32_datadir}/libvirt/api/libvirt-admin-api.xml
-
 %{mingw32_datadir}/libvirt/cpu_map/*.xml
-
 %{mingw32_datadir}/libvirt/test-screenshot.png
-
-%{mingw32_datadir}/locale/*/LC_MESSAGES/libvirt.mo
-
 %dir %{mingw32_includedir}/libvirt
 %{mingw32_includedir}/libvirt/libvirt.h
 %{mingw32_includedir}/libvirt/libvirt-common.h
@@ -2326,7 +2243,6 @@ exit 0
 %{mingw32_includedir}/libvirt/libvirt-lxc.h
 %{mingw32_includedir}/libvirt/libvirt-qemu.h
 %{mingw32_includedir}/libvirt/libvirt-admin.h
-
 %{mingw32_mandir}/man1/virsh.1*
 %{mingw32_mandir}/man1/virt-admin.1*
 %{mingw32_mandir}/man1/virt-xml-validate.1*
@@ -2334,12 +2250,10 @@ exit 0
 %{mingw32_mandir}/man1/virt-pki-validate.1*
 %{mingw32_mandir}/man7/virkey*.7*
 
-
-%files -n mingw64-libvirt
+%files -n mingw64-libvirt -f mingw64-libvirt.lang
 %dir %{mingw64_sysconfdir}/libvirt/
 %config(noreplace) %{mingw64_sysconfdir}/libvirt/libvirt.conf
 %config(noreplace) %{mingw64_sysconfdir}/libvirt/libvirt-admin.conf
-
 %{mingw64_bindir}/libvirt-0.dll
 %{mingw64_bindir}/virsh.exe
 %{mingw64_bindir}/virt-admin.exe
@@ -2349,7 +2263,6 @@ exit 0
 %{mingw64_bindir}/libvirt-lxc-0.dll
 %{mingw64_bindir}/libvirt-qemu-0.dll
 %{mingw64_bindir}/libvirt-admin-0.dll
-
 %{mingw64_libdir}/libvirt.dll.a
 %{mingw64_libdir}/pkgconfig/libvirt.pc
 %{mingw64_libdir}/pkgconfig/libvirt-qemu.pc
@@ -2358,23 +2271,16 @@ exit 0
 %{mingw64_libdir}/libvirt-lxc.dll.a
 %{mingw64_libdir}/libvirt-qemu.dll.a
 %{mingw64_libdir}/libvirt-admin.dll.a
-
 %dir %{mingw64_datadir}/libvirt/
 %dir %{mingw64_datadir}/libvirt/schemas/
 %{mingw64_datadir}/libvirt/schemas/*.rng
-
 %dir %{mingw64_datadir}/libvirt/api/
 %{mingw64_datadir}/libvirt/api/libvirt-api.xml
 %{mingw64_datadir}/libvirt/api/libvirt-lxc-api.xml
 %{mingw64_datadir}/libvirt/api/libvirt-qemu-api.xml
 %{mingw64_datadir}/libvirt/api/libvirt-admin-api.xml
-
 %{mingw64_datadir}/libvirt/cpu_map/*.xml
-
 %{mingw64_datadir}/libvirt/test-screenshot.png
-
-%{mingw64_datadir}/locale/*/LC_MESSAGES/libvirt.mo
-
 %dir %{mingw64_includedir}/libvirt
 %{mingw64_includedir}/libvirt/libvirt.h
 %{mingw64_includedir}/libvirt/libvirt-common.h
@@ -2394,7 +2300,6 @@ exit 0
 %{mingw64_includedir}/libvirt/libvirt-lxc.h
 %{mingw64_includedir}/libvirt/libvirt-qemu.h
 %{mingw64_includedir}/libvirt/libvirt-admin.h
-
 %{mingw64_mandir}/man1/virsh.1*
 %{mingw64_mandir}/man1/virt-admin.1*
 %{mingw64_mandir}/man1/virt-xml-validate.1*
@@ -2405,6 +2310,9 @@ exit 0
 
 
 %changelog
+* Mon Jan 16 2023 Cole Robinson <crobinso@redhat.com> - 9.0.0-1
+- Update to version 9.0.0
+
 * Tue Jan 03 2023 Richard W.M. Jones <rjones@redhat.com> - 8.10.0-2
 - Rebuild for xen-4.17.0
 
diff --git a/sources b/sources
index 0fa8b69..48f81ab 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (libvirt-8.10.0.tar.xz) = 1d4006e909e185a89f9163e6d2309841f4086da65b9165c42eb512e2f6ae964749eeb72f74e86476768a09061e2e311cfcc31f4024b4ecbaba04cd3f5f5d849d
+SHA512 (libvirt-9.0.0.tar.xz) = 135f690f9fe722161c22579166f10a54d52941a371439165fd0e3d391ca7835049a3bcbff33fc81c50153046230db8a5a318d707383bad3141d489d2faa09ecb