# TODO:
# - parallels-sdk >= 7.0.22?
# - virtuozzo storage?
+# - mdevctl
+# - mm-ctl (https://github.com/tfukushima/mm-ctl ?)
+# - numad (https://pagure.io/numad/ or https://github.com/yhaenggi/numad/releases ?)
+# - vstorage, vstorage-mount
+# - package firewalld zone definition (see files)
#
# Conditional build:
# - virtualization
+%bcond_without ch # Cloud-Hypervisor support
%bcond_without esx # VMware ESX support
%bcond_without hyperv # Hyper-V support
%bcond_without libxl # libxenlight support
%bcond_without qemu # Qemu support
%bcond_without vbox # VirtualBox support
%bcond_without vmware # VMware Workstation/Player support
-%bcond_without xenapi # Xen API (Citrix XenServer) support
# - storage
-%bcond_without ceph # RADOS BD (Ceph) storage support
+%bcond_with ceph # RADOS BD (Ceph) storage support
%bcond_without glusterfs # GlusterFS storage support
# - storage locking
%bcond_without sanlock # sanlock storage lock manager
# - other
+%bcond_without apparmor # apparmor support
%bcond_without netcf # host interfaces support
%bcond_without polkit # PolicyKit support
%bcond_without systemtap # systemtap/dtrace probes
%bcond_with wireshark # wireshark dissector module
+%bcond_without zfs # ZFS storage support
%bcond_without static_libs # static libraries build
-# qemu available only on x86 and ppc
-%ifnarch %{ix86} %{x8664} ppc
+# qemu available only on x86, arm and ppc
+%ifnarch %{ix86} %{x8664} x32 aarch64 ppc
%undefine with_qemu
%endif
-# Xen is available only on x86 and ia64
-%ifnarch %{ix86} %{x8664} ia64
-%undefine with_xenapi
+# Xen supported architectures
+%ifnarch %{ix86} %{x8664} %{arm} aarch64
%undefine with_libxl
%endif
+# Cloud-Hypervisor is available only on x86_64
+%ifnarch %{x8664}
+%undefine with_ch
+%endif
+
+# ceph >= 14.0 no longer support 32-bit archs
+%ifarch %{ix86}
+%undefine with_ceph
+%endif
+
Summary: Toolkit to interact with virtualization capabilities
Summary(pl.UTF-8): Narzędzia współpracujące z funkcjami wirtualizacji
Name: libvirt
-Version: 5.3.0
+Version: 10.4.0
Release: 1
License: LGPL v2.1+
Group: Libraries
-Source0: http://libvirt.org/sources/libvirt-%{version}.tar.xz
-# Source0-md5: 1cfaaf3717783ba19850b5ac04f7e76a
+Source0: https://download.libvirt.org/libvirt-%{version}.tar.xz
+# Source0-md5: 446cbe5e81c8cce8b6830b93a0c7b2ee
Source1: libvirtd.init
Source2: virtlockd.init
Source3: virtlogd.init
Patch2: %{name}-udevadm-settle.patch
Patch3: bashisms.patch
Patch4: %{name}-sysctl-dir.patch
-URL: http://www.libvirt.org/
+URL: https://www.libvirt.org/
BuildRequires: acl-devel
BuildRequires: attr-devel
BuildRequires: audit-libs-devel
BuildRequires: augeas-devel
BuildRequires: autoconf >= 2.50
BuildRequires: automake
-BuildRequires: avahi-devel >= 0.6.0
-BuildRequires: bash-completion >= 2.0
+BuildRequires: bash-completion-devel >= 1:2.0
%{?with_ceph:BuildRequires: ceph-devel}
-BuildRequires: curl-devel >= 7.18.0
-BuildRequires: cyrus-sasl-devel
+BuildRequires: curl-devel >= 7.19.1
+BuildRequires: cyrus-sasl-devel >= 2.1.26
BuildRequires: dbus-devel >= 1.0.0
BuildRequires: device-mapper-devel >= 1.0.0
+# rst2html5 rst2man
+BuildRequires: docutils
BuildRequires: gawk
BuildRequires: gcc >= 6:4.4
BuildRequires: gettext-tools >= 0.17
+BuildRequires: glib2-devel >= 1:2.56.0
%{?with_glusterfs:BuildRequires: glusterfs-devel >= 3.4.1}
-BuildRequires: gnutls-devel >= 2.2.0
-BuildRequires: libapparmor-devel
+BuildRequires: gnutls-devel >= 3.6.0
+%{?with_apparmor:BuildRequires: libapparmor-devel >= 3.0.0}
BuildRequires: libblkid-devel >= 2.17
BuildRequires: libcap-ng-devel >= 0.4.0
-BuildRequires: libfuse-devel >= 2.8.6
+BuildRequires: libfuse3-devel >= 3.1.0
BuildRequires: libgcrypt-devel
+BuildRequires: libiscsi-devel >= 1.18.0
+BuildRequires: libnbd-devel >= 1.0
BuildRequires: libnl-devel >= 3.2
-BuildRequires: libpcap-devel >= 1.0.0
+BuildRequires: libpcap-devel >= 1.5.0
BuildRequires: libselinux-devel >= 2.5
-BuildRequires: libssh-devel >= 0.7
+BuildRequires: libssh-devel >= 0.8.1
BuildRequires: libssh2-devel >= 1.3
BuildRequires: libtool
-%{?with_xenapi:BuildRequires: libxenserver-devel}
-BuildRequires: libxml2-devel >= 1:2.6.0
+BuildRequires: libxml2-devel >= 1:2.9.1
+BuildRequires: libxml2-progs >= 1:2.9.1
BuildRequires: libxslt-devel
+BuildRequires: libxslt-progs
+BuildRequires: lvm2
+BuildRequires: meson >= 0.56.0
BuildRequires: ncurses-devel
%{?with_netcf:BuildRequires: netcf-devel >= 0.2.0}
-BuildRequires: numactl-devel
-%{?with_hyperv:BuildRequires: openwsman-devel >= 2.2.3}
+BuildRequires: ninja >= 1.5
+BuildRequires: nss-devel >= 3
+BuildRequires: numactl-devel >= 2.0.6
+BuildRequires: open-iscsi
+%{?with_hyperv:BuildRequires: openwsman-devel >= 2.6.3}
BuildRequires: parted-devel >= 1.8.0
BuildRequires: pkgconfig
%{?with_polkit:BuildRequires: polkit}
%{?with_polkit:BuildRequires: polkit-devel >= 0.90}
-BuildRequires: readline-devel
-BuildRequires: rpmbuild(macros) >= 1.627
-%{?with_sanlock:BuildRequires: sanlock-devel >= 0.8}
+BuildRequires: python3 >= 1:3.0
+BuildRequires: readline-devel >= 7.0
+BuildRequires: rpcsvc-proto
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.753-5
+%{?with_sanlock:BuildRequires: sanlock-devel >= 3.5.0}
+BuildRequires: sed >= 4.0
%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
-BuildRequires: udev-devel >= 1:218
-%{?with_wireshark:BuildRequires: wireshark-devel >= 1.11.3}
-%{?with_libxl:BuildRequires: xen-devel >= 4.4}
+BuildRequires: tar >= 1:1.22
+BuildRequires: udev-devel >= 1:219
+%{?with_wireshark:BuildRequires: wireshark-devel >= 2.6.0}
+%{?with_libxl:BuildRequires: xen-devel >= 4.13}
# For disk driver
BuildRequires: xorg-lib-libpciaccess-devel >= 0.10.0
-Requires: curl-libs >= 7.18.0
-Requires: device-mapper >= 1.0.0
+BuildRequires: xz
+BuildRequires: yajl-devel >= 2.0.3
+%{?with_zfs:BuildRequires: zfs}
+%{?with_zfs:BuildRequires: zfs-devel}
+Requires: curl-libs >= 7.19.1
+Requires: cyrus-sasl-libs >= 2.1.26
+Requires: device-mapper-libs >= 1.0.0
+Requires: glib2 >= 1:2.56.0
+Requires: gnutls-libs >= 3.6.0
+%{?with_apparmor:Requires: libapparmor >= 3.0.0}
Requires: libcap-ng >= 0.4.0
Requires: libnl >= 3.2
-Requires: libpcap >= 1.0.0
+Requires: libpcap >= 1.5.0
Requires: libselinux >= 2.5
-Requires: libssh >= 0.7
+Requires: libssh >= 0.8.1
Requires: libssh2 >= 1.3
-Requires: libxml2 >= 1:2.6.0
-%{?with_hyperv:Requires: openwsman-libs >= 2.2.3}
-Obsoletes: libvirt-daemon-esx
-Obsoletes: libvirt-daemon-hyperv
-Obsoletes: libvirt-daemon-openvz
-Obsoletes: libvirt-daemon-phyp
-Obsoletes: libvirt-daemon-uml
-Obsoletes: libvirt-daemon-vbox
-Obsoletes: libvirt-daemon-vmware
-Obsoletes: libvirt-daemon-xen
+Requires: libxml2 >= 1:2.9.1
+%{?with_hyperv:Requires: openwsman-libs >= 2.6.3}
+Requires: yajl >= 2.0.3
+Obsoletes: libvirt-daemon-esx < 0.9.13
+Obsoletes: libvirt-daemon-hyperv < 0.9.13
+Obsoletes: libvirt-daemon-openvz < 0.9.13
+Obsoletes: libvirt-daemon-phyp < 6.0.0
+Obsoletes: libvirt-daemon-uml < 5.0.0
+Obsoletes: libvirt-daemon-vmware < 0.9.13
+Obsoletes: libvirt-daemon-xen < 0.9.13
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Ten pakiet zawiera podstawowe biblioteki oraz plik konfiguracyjny.
%package -n bash-completion-%{name}
-Summary: bash-completion for libvirt
-Group: Applications/Shells
-Requires: bash-completion
-%if "%{_rpmversion}" >= "5"
-BuildArch: noarch
-%endif
+Summary: bash-completion for libvirt
+Summary(pl.UTF-8): Bashowe dopełnianie składni poleceń libvirt
+Group: Applications/Shells
+Requires: bash-completion >= 1:2.0
+BuildArch: noarch
%description -n bash-completion-%{name}
This package provides bash-completion for libvirt.
+%description -n bash-completion-%{name} -l pl.UTF-8
+Ten pakiet zapewnia bashowe dopełnianie składni dla poleceń libvirt.
+
%package devel
Summary: Development files for programs using libvirt
Summary(pl.UTF-8): Pliki programistyczne do programów wykorzystujących libvirt
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: audit-libs-devel
-Requires: curl-devel >= 7.18.0
-Requires: dbus-devel >= 1.0.0
-Requires: device-mapper-devel >= 1.0.0
-Requires: gnutls-devel >= 2.2.0
-Requires: libapparmor-devel
-Requires: libcap-ng-devel >= 0.4.0
-Requires: libgcrypt-devel
-Requires: libnl-devel >= 3.2
-Requires: libpcap-devel >= 1.0.0
-Requires: libselinux-devel >= 2.5
-Requires: libxml2-devel >= 1:2.6.0
-Requires: numactl-devel
-%{?with_hyperv:Requires: openwsman-devel >= 2.2.3}
%description devel
Libvirt is a C toolkit to interact with the virtualization
Ten pakiet zawiera biblioteki statyczne do tworzenia programów
wykorzystujących bibliotekę libvirt.
+%package doc
+Summary: Documentation for libvirt
+Summary(pl.UTF-8): Dokumentacja do libvirt
+Group: Documentation
+BuildArch: noarch
+
+%description doc
+Documentation for libvirt.
+
+%description doc -l pl.UTF-8
+Dokumentacja do libvirt.
+
%package lock-sanlock
Summary: Sanlock lock manager plugin for libvirt
Summary(pl.UTF-8): Zarządca blokad sanlock dla biblioteki libvirt
Group: Libraries
Requires: %{name}-daemon = %{version}-%{release}
+Requires: sanlock-libs >= 3.5.0
%description lock-sanlock
Sanlock lock manager plugin for libvirt.
Summary: Server side daemon and supporting files for libvirt library
Summary(pl.UTF-8): Demon działający po stronie serwera oraz pliki wspierające dla biblioteki libvirt
Group: Applications/System
+Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
-Requires: avahi-libs >= 0.6.0
+Requires: device-mapper >= 1.0.0
Requires: iproute2
Requires: libblkid >= 2.17
+# iscsi-direct driver
+Requires: libiscsi >= 1.18.0
%{?with_netcf:Requires: netcf >= 0.2.0}
Requires: parted-libs >= 1.8.0
Requires: rc-scripts
# Needed for probing the power management features of the host.
Requires: pm-utils
-Requires: udev-libs >= 1:218
+Requires: udev-libs >= 1:219
Requires: util-linux
Requires: virtual(module-tools)
Requires: xorg-lib-libpciaccess >= 0.10.0
-Requires(post,preun): /sbin/chkconfig
Suggests: bridge-utils
-Suggests: cyrus-sasl
-Suggests: cyrus-sasl-digest-md5
+Suggests: cyrus-sasl >= 2.1.26
+Suggests: cyrus-sasl-digest-md5 >= 2.1.26
Suggests: dmidecode
Suggests: dnsmasq >= 2.41
Suggests: ebtables
Suggests: gawk
-Suggests: glusterfs-client >= 2.0.1
+Suggests: glusterfs-client >= 3.4.1
Suggests: iptables
Suggests: iptables
Suggests: libcgroup
Suggests: polkit >= 0.93
#Suggests: radvd
Suggests: scrub
-#Suggests: sheepdog
Provides: libvirt(hypervisor)
%description daemon
Wtyczka składowania danych wykorzystująca urządzenie blokowe RADOS
(system plików Ceph).
+%package daemon-ch
+Summary: Cloud Hypervisor server side driver
+Summary(pl.UTF-8): Sterownik wymagany po stronie serwera do uruchamiania gości Cloud Hypervisor
+Group: Libraries
+Requires: %{name}-daemon = %{version}-%{release}
+Provides: libvirt(hypervisor)
+
+%description daemon-ch
+Cloud Hypervisor is an open source Virtual Machine Monitor (VMM) that
+runs on top of KVM. The project focuses on exclusively running modern,
+cloud workloads, on top of a limited set of hardware architectures and
+platforms. Cloud workloads refers to those that are usually run by
+customers inside a cloud provider. For our purposes this means modern
+operating systems with most I/O handled by paravirtualised devices
+(i.e. virtio), no requirement for legacy devices, and 64-bit CPUs.
+
+%description daemon-ch -l pl.UTF-8
+Cloud Hypervisor to mający otwarte źródła monitor maszyn wirtualnych
+(VMM), działający powyżej KVM. Projekt skupia się wyłącznie na
+uruchamianiu nowoczesnych, chmurowych zadań na ograniczonym zbiorze
+architektur i platform sprzętowych. Zadania chmurowe to te, które
+zwykle są uruchamiane przez klientów u dostawców chmurowych. W tym
+przypadku oznacza to nowoczesne systemy operacyjne z większością
+we/wy obsługiwaną przez urządzenia parawirtualizowane (np. virtio),
+bez wymogu tradycyjnych urządzeń, oraz 64-bitowe procesory.
+
%package daemon-libxl
Summary: Server side driver required to run XEN guests (xenlight)
Summary(pl.UTF-8): Sterownik wymagany po stronie serwera do uruchamiania gości XEN (xenlight)
Group: Libraries
Requires: %{name}-daemon = %{version}-%{release}
-Requires: /usr/sbin/qcow-create
-Requires: xen >= 4.4
+Requires: xen >= 4.13
Provides: libvirt(hypervisor)
+Obsoletes: libvirt-daemon-xen < 4.3.0
%description daemon-libxl
Server side driver required to manage the virtualization capabilities
Summary(pl.UTF-8): Sterownik wymagany po stronie serwera do uruchamiania gości LXC
Group: Libraries
Requires: %{name}-daemon = %{version}-%{release}
-Requires: libfuse >= 2.8.6
+Requires: libfuse3 >= 3.1.0
Provides: libvirt(hypervisor)
%description daemon-lxc
Requires: /usr/bin/qemu-img
Requires: bzip2
Requires: gzip
+Requires: libnbd >= 1.0
Requires: lzop
-Requires: qemu-system-x86
+Requires: qemu-system-x86 >= 4.2
Requires: xz
Provides: libvirt(hypervisor)
Sterownik wymagany po stronie serwera do zarządzania funkcjami
wirtualizacji emulatora QEMU.
+%package daemon-vbox
+Summary: Server side driver required to run VirtalBox guests
+Summary(pl.UTF-8): Sterownik wymagany po stronie serwera do uruchamiania gości VirtalBox
+Group: Libraries
+Requires: %{name}-daemon = %{version}-%{release}
+Requires: VirtualBox >= 5.2
+Provides: libvirt(hypervisor)
+
+%description daemon-vbox
+Server side driver required to manage the virtualization capabilities
+of VirtualBox.
+
+%description daemon-vbox -l pl.UTF-8
+Sterownik wymagany po stronie serwera do zarządzania funkcjami
+wirtualizacji VirtualBoksa.
+
%package client
Summary: Client side utilities of the libvirt library
Summary(pl.UTF-8): Narzędzia klienckie do biblioteki libvirt
Group: Applications/System
+Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
Requires: gettext >= 0.18.1.1-6
-Requires: gnutls >= 2.2.0
+Requires: gnutls >= 3.6.0
Requires: netcat-openbsd
Requires: rc-scripts
-Requires(post,preun): /sbin/chkconfig
%description client
Client binaries needed to access to the virtualization capabilities of
Programy klienckie potrzebne do funkcji wirtualizacji nowych wersji
Linuksa (oraz innych systemów operacyjnych).
+%package ssh-proxy
+Summary: Libvirt SSH proxy
+Summary(pl.UTF-8): Proxy SSH dla Libvirt
+Group: Applications/System
+Requires: %{name} = %{version}-%{release}
+Requires: openssh-clients
+
+%description ssh-proxy
+Allows SSH into domains via VSOCK without need for network.
+
+%description ssh-proxy -l pl.UTF-8
+Ten pakiet pozwala na SSH do domen poprzez VSOCK bez wymagania sieci.
+
%package utils
Summary: Tools to interact with virtualization capabilities (metapackage)
Summary(pl.UTF-8): Narzędzia do współpracy z funkcjami wirtualizacyjnymi (metapakiet)
Group: Applications/System
Requires: %{name}-client = %{version}-%{release}
Requires: %{name}-daemon = %{version}-%{release}
+Requires: %{name}-daemon-ch = %{version}-%{release}
%{?with_libxl:Requires: %{name}-daemon-libxl = %{version}-%{release}}
Requires: %{name}-daemon-lxc = %{version}-%{release}
Requires: %{name}-daemon-qemu = %{version}-%{release}
Summary: Wireshark dissector module for libvirt packets
Summary(pl.UTF-8): Moduł sekcji Wiresharka do pakietów libvirt
Group: Libraries
-Requires: wireshark >= 1.11.3
+Requires: wireshark >= 2.6.0
%description -n wireshark-libvirt
Wireshark dissector module for libvirt packets.
%patch3 -p1
%patch4 -p1
+%if %{with static_libs}
+%{__sed} -i '/^libvirt\(_admin\|_lxc\|_qemu\)\?_lib = / s/shared_library/library/' src/meson.build
+%endif
+
+%{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' tools/{virt-qemu-qmp-proxy,virt-qemu-sev-validate}
+
+%{__sed} -i -e 's,/usr/lib/qemu,/usr/%{_lib}/qemu,' -e 's,/usr/lib",/usr/%{_lib}/",' src/qemu/qemu_interface.c
+%{__sed} -i -e 's,/usr/libexec",%{_libexecdir}",' src/qemu/qemu_process.c
+
%build
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-
-%configure \
- PVCREATE=/sbin/pvcreate \
- VGCREATE=/sbin/vgcreate \
- LVCREATE=/sbin/lvcreate \
- PVREMOVE=/sbin/pvremove \
- VGREMOVE=/sbin/vgremove \
- LVREMOVE=/sbin/lvremove \
- VGCHANGE=/sbin/vgchange \
- LVCHANGE=/sbin/lvchange \
- VGSCAN=/sbin/vgscan \
- PVS=/sbin/pvs \
- VGS=/sbin/vgs \
- LVS=/sbin/lvs \
- TC=/sbin/tc \
- BRCTL=/sbin/brctl \
- ISCSIADM=/sbin/iscsiadm \
- SHOWMOUNT=/usr/sbin/showmount \
- MOUNT=/bin/mount \
- UMOUNT=/bin/umount \
- MKFS=/sbin/mkfs \
- SHOWMOUNT=/usr/sbin/showmount \
- IPTABLES_PATH=/usr/sbin/iptables \
- IP6TABLES_PATH=/usr/sbin/ip6tables \
- EBTABLES_PATH=/usr/sbin/ebtables \
- ISCSIADM=/sbin/iscsiadm \
- DNSMASQ=/usr/sbin/dnsmasq \
- RADVD=/usr/sbin/radvd \
- UDEVADM=/sbin/udevadm \
- MODPROBE=/sbin/modprobe \
- SCRUB=/usr/bin/scrub \
- OVSVSCTL=/usr/bin/ovs-vsctl \
- NUMAD=/usr/bin/numad \
- SHEEPDOGCLI=/usr/sbin/collie \
- ZFS=/usr/sbin/zfs \
- ZPOOL=/usr/sbin/zpool \
- --disable-silent-rules \
- %{?with_static_libs:--enable-static} \
- --with-bash-completion \
- --with-bash-completions-dir=/etc/bash_completion.d \
- --with-html-dir=%{_gtkdocdir} \
- --with-html-subdir=%{name} \
- --with-packager="TLD-Linux" \
- --with-packager-version="%{name}-%{version}-%{release}.%{_target_cpu}" \
- --with-qemu-user=qemu \
- --with-qemu-group=qemu \
- --with-storage-disk \
- --with-storage-fs \
- --with-storage-gluster%{!?with_glusterfs:=no} \
- --with-storage-iscsi \
- --with-storage-lvm \
- --with-storage-mpath \
- --with-storage-rbd%{!?with_ceph:=no} \
- --with-storage-scsi \
- --with-storage-sheepdog \
- --with-apparmor \
- --with-audit \
- --with-avahi \
- %{__with_without systemtap dtrace} \
- %{__with_without esx} \
- --with-driver-modules \
- --without-hal \
- %{__with_without hyperv} \
- --with-blkid \
- --with-ssh2 \
- %{__with_without libxl} \
- %{__with_without lxc} \
- --with-macvtap \
- %{__with_without netcf} \
- --with-numactl \
- --with-numad \
- %{__with_without openvz} \
- %{__with_without phyp} \
- %{__with_without polkit} \
- %{__with_without qemu} \
- %{__with_without sanlock} \
- --with-sasl \
- --with-selinux \
- --with-udev \
- %{__with_without vbox vbox %{_libdir}/VirtualBox} \
- --with-virtualport \
- %{__with_without vmware} \
- %{!?with_wireshark:--without-wireshark-dissector} \
- %{__with_without xenapi} \
- --x-libraries=%{_libdir}
-
-%{__make} \
- AWK=gawk
+%meson build \
+ -Dpackager="TLD-Linux" \
+ -Dpackager_version="%{name}-%{version}-%{release}.%{_target_cpu}" \
+ -Dqemu_group=qemu \
+ -Dqemu_user=qemu \
+ -Dapparmor=%{__enabled_disabled apparmor} \
+ -Dapparmor_profiles=%{__enabled_disabled apparmor} \
+ -Dattr=enabled \
+ -Daudit=enabled \
+ -Dbash_completion=enabled \
+ -Dbash_completion_dir=%{bash_compdir} \
+ -Dblkid=enabled \
+ -Dcapng=enabled \
+ -Dcurl=enabled \
+ -Ddtrace=%{__enabled_disabled systemtap} \
+ -Dfirewalld=disabled \
+ -Dfirewalld_zone=disabled \
+ -Dfuse=enabled \
+ -Dglusterfs=%{__enabled_disabled glusterfs} \
+ -Dlibiscsi=enabled \
+ -Dlibnl=enabled \
+ -Dlibpcap=enabled \
+ -Dlibssh=enabled \
+ -Dlibssh2=enabled \
+ -Dnetcf=%{__enabled_disabled netcf} \
+ -Dnls=enabled \
+ -Dnumactl=enabled \
+ -Dnumad=disabled \
+ -Dopenwsman=enabled \
+ -Dpciaccess=enabled \
+ -Dpolkit=%{__enabled_disabled polkit} \
+ -Dreadline=enabled \
+ -Dsanlock=enabled \
+ -Dsasl=enabled \
+ -Dselinux=enabled \
+ -Dsysctl_config=enabled \
+ -Dudev=enabled \
+ -Dwireshark_dissector=%{__enabled_disabled wireshark} \
+ -Dyajl=enabled \
+ -Dstorage_dir=enabled \
+ -Dstorage_disk=enabled \
+ -Dstorage_fs=enabled \
+ -Dstorage_iscsi=enabled \
+ -Dstorage_iscsi_direct=enabled \
+ -Dstorage_lvm=enabled \
+ -Dstorage_mpath=enabled \
+ -Dstorage_rbd=%{__enabled_disabled ceph} \
+ -Dstorage_scsi=enabled \
+ -Dstorage_vstorage=disabled \
+ -Dstorage_zfs=%{__enabled_disabled zfs} \
+ -Ddriver_bhyve=disabled \
+ -Ddriver_ch=%{__enabled_disabled ch} \
+ -Ddriver_esx=%{__enabled_disabled esx} \
+ -Ddriver_hyperv=%{__enabled_disabled hyperv} \
+ -Ddriver_interface=enabled \
+ -Ddriver_libvirtd=enabled \
+ -Ddriver_libxl=%{__enabled_disabled libxl} \
+ -Ddriver_lxc=%{__enabled_disabled lxc} \
+ -Ddriver_network=enabled \
+ -Ddriver_openvz=%{__enabled_disabled openvz} \
+ -Ddriver_qemu=%{__enabled_disabled qemu} \
+ -Ddriver_remote=enabled \
+ -Ddriver_secrets=enabled \
+ -Ddriver_vbox=%{__enabled_disabled vbox} \
+ -Ddriver_vmware=%{__enabled_disabled vmware} \
+ -Ddriver_vz=disabled \
+ -Dsecdriver_apparmor=%{__enabled_disabled apparmor} \
+ -Dsecdriver_selinux=enabled
+
+%meson_build -C build
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{sysconfig,sysctl.d,rc.d/init.d}
-%{__make} install \
- DEVHELP_DIR=%{_gtkdocdir}/%{name}/devhelp \
- DESTDIR=$RPM_BUILD_ROOT
+%meson_install -C build
install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/libvirtd
install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlockd
install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/sysconfig/virtlogd
install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/libvirt-guests
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.la \
- %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.a}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.la \
- %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.a}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.la \
- %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.a}
-
-%if %{with sanlock}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.la \
- %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.a}
-%endif
-%if %{with wireshark}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/epan/libvirt.la \
- %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/epan/libvirt.a} \
-%endif
-
rm -rf $RPM_BUILD_ROOT/%{_datadir}/locale/{bal,ilo,kw@kkcor,kw@uccor,kw_GB,tw,wba}
%find_lang %{name}
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog NEWS README.md
+%doc AUTHORS.rst NEWS.rst README.rst
%dir %{_sysconfdir}/libvirt
+%if %{with apparmor}
+%dir %{_sysconfdir}/apparmor.d/libvirt
+%endif
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt.conf
%attr(755,root,root) %{_libdir}/libvirt.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libvirt.so.0
%files -n bash-completion-%{name}
%defattr(644,root,root,755)
-/etc/bash_completion.d/virsh
-/etc/bash_completion.d/virt-admin
-/etc/bash_completion.d/vsh
+%{bash_compdir}/virsh
+%{bash_compdir}/virt-admin
%files devel
%defattr(644,root,root,755)
%{?with_lxc:%attr(755,root,root) %{_libdir}/libvirt-lxc.so}
%attr(755,root,root) %{_libdir}/libvirt-qemu.so
%{_datadir}/%{name}/api
-%{_gtkdocdir}/%{name}
+%{_docdir}/%{name}
%{_includedir}/%{name}
%{_pkgconfigdir}/libvirt.pc
%{_pkgconfigdir}/libvirt-admin.pc
%{_mandir}/man7/virkeycode-*.7*
%{_mandir}/man7/virkeyname-*.7*
+%if %{with static_libs}
%files static
%defattr(644,root,root,755)
%{_libdir}/libvirt.a
-%{_libdir}/libvirt-admin.a
%{?with_lxc:%{_libdir}/libvirt-lxc.a}
%{_libdir}/libvirt-qemu.a
+%endif
+
+%files doc
+%defattr(644,root,root,755)
+%dir %{_docdir}/libvirt
+%{_docdir}/libvirt/examples
+%{_docdir}/libvirt/html
%if %{with sanlock}
%files lock-sanlock
%files daemon
%defattr(644,root,root,755)
-%doc docs/*.xml
-%dir %attr(700,root,root) %{_sysconfdir}/libvirt/nwfilter
-%dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu
-%dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks
-%dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks/autostart
+%if %{with apparmor}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-lxc
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-qemu
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/libvirt
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.lib.libvirt.virt-aa-helper
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.sbin.libvirtd
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.sbin.virtqemud
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.sbin.virtxend
+%endif
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt-admin.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirtd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/network.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtinterfaced.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlockd.conf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt-admin.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlogd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtnetworkd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtnodedevd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtnwfilterd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtproxyd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtsecretd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtstoraged.conf
+%dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu
+%dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks
%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/default.xml
+%dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks/autostart
%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
+%dir %attr(700,root,root) %{_sysconfdir}/libvirt/nwfilter
%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/nwfilter/*.xml
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/libvirt.conf
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirtd
%attr(754,root,root) /etc/rc.d/init.d/virtlogd
%config(noreplace) %verify(not md5 mtime size) /etc/sysctl.d/60-libvirtd.conf
%config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd
-%attr(755,root,root) %{_libexecdir}/libvirt_iohelper
-%attr(755,root,root) %{_libexecdir}/libvirt_parthelper
-%attr(755,root,root) %{_libexecdir}/virt-aa-helper
%attr(755,root,root) %{_sbindir}/libvirtd
+%attr(755,root,root) %{_sbindir}/virtinterfaced
%attr(755,root,root) %{_sbindir}/virtlockd
%attr(755,root,root) %{_sbindir}/virtlogd
-%{_datadir}/augeas/lenses/libvirtd.aug
+%attr(755,root,root) %{_sbindir}/virtnetworkd
+%attr(755,root,root) %{_sbindir}/virtnodedevd
+%attr(755,root,root) %{_sbindir}/virtnwfilterd
+%attr(755,root,root) %{_sbindir}/virtproxyd
+%attr(755,root,root) %{_sbindir}/virtsecretd
+%attr(755,root,root) %{_sbindir}/virtstoraged
+%attr(755,root,root) %{_libexecdir}/libvirt_iohelper
+%attr(755,root,root) %{_libexecdir}/libvirt_leaseshelper
+%attr(755,root,root) %{_libexecdir}/libvirt_parthelper
+%if %{with apparmor}
+%attr(755,root,root) %{_libexecdir}/virt-aa-helper
+%endif
+%dir %{_libdir}/libvirt/connection-driver
+%{?with_netcf:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_interface.so}
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nodedev.so
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nwfilter.so
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_secret.so
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_storage.so
+%dir %{_libdir}/libvirt/lock-driver
+%attr(755,root,root) %{_libdir}/libvirt/lock-driver/lockd.so
+%dir %{_libdir}/libvirt/storage-backend
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_disk.so
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_fs.so
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi-direct.so
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_logical.so
+# mpath requires libdevmapper, but libvirt itself requires it too
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
+%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_scsi.so
+%{?with_zfs:%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so}
+%dir %{_libdir}/libvirt/storage-file
+%attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_fs.so
%{_datadir}/augeas/lenses/libvirt_lockd.aug
+%{_datadir}/augeas/lenses/libvirtd.aug
+%{_datadir}/augeas/lenses/libvirtd_network.aug
+%{_datadir}/augeas/lenses/virtinterfaced.aug
%{_datadir}/augeas/lenses/virtlockd.aug
%{_datadir}/augeas/lenses/virtlogd.aug
+%{_datadir}/augeas/lenses/virtnetworkd.aug
+%{_datadir}/augeas/lenses/virtnodedevd.aug
+%{_datadir}/augeas/lenses/virtnwfilterd.aug
+%{_datadir}/augeas/lenses/virtproxyd.aug
+%{_datadir}/augeas/lenses/virtsecretd.aug
+%{_datadir}/augeas/lenses/virtstoraged.aug
%{_datadir}/augeas/lenses/tests/test_libvirtd.aug
%{?with_qemu:%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug}
+%{_datadir}/augeas/lenses/tests/test_libvirtd_network.aug
+%{_datadir}/augeas/lenses/tests/test_virtinterfaced.aug
%{_datadir}/augeas/lenses/tests/test_virtlockd.aug
%{_datadir}/augeas/lenses/tests/test_virtlogd.aug
+%{_datadir}/augeas/lenses/tests/test_virtnetworkd.aug
+%{_datadir}/augeas/lenses/tests/test_virtnodedevd.aug
+%{_datadir}/augeas/lenses/tests/test_virtnwfilterd.aug
+%{_datadir}/augeas/lenses/tests/test_virtproxyd.aug
+%{_datadir}/augeas/lenses/tests/test_virtsecretd.aug
+%{_datadir}/augeas/lenses/tests/test_virtstoraged.aug
+%{_datadir}/libvirt/cpu_map
%if %{with polkit}
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
%{_datadir}/polkit-1/rules.d/50-libvirt.rules
%endif
%{_mandir}/man8/libvirtd.8*
+%{_mandir}/man8/virtinterfaced.8*
%{_mandir}/man8/virtlockd.8*
%{_mandir}/man8/virtlogd.8*
+%{_mandir}/man8/virtnetworkd.8*
+%{_mandir}/man8/virtnodedevd.8*
+%{_mandir}/man8/virtnwfilterd.8*
+%{_mandir}/man8/virtproxyd.8*
+%{_mandir}/man8/virtsecretd.8*
+%{_mandir}/man8/virtstoraged.8*
%dir /var/lib/libvirt
%dir /var/lib/libvirt/dnsmasq
%attr(711,root,root) %dir /var/lib/libvirt/boot
%attr(711,root,root) %dir /var/cache/libvirt
%dir /var/run/libvirt
%dir /var/run/libvirt/network
-%attr(755,root,root) %{_libexecdir}/libvirt_leaseshelper
-%dir %{_libdir}/libvirt/connection-driver
-%{_datadir}/libvirt/cpu_map
-%{?with_netcf:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_interface.so}
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nodedev.so
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nwfilter.so
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_secret.so
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_storage.so
-%{?with_vbox:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so}
-%dir %{_libdir}/libvirt/lock-driver
-%attr(755,root,root) %{_libdir}/libvirt/lock-driver/lockd.so
-%dir %{_libdir}/libvirt/storage-backend
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_disk.so
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_fs.so
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_logical.so
-# mpath requires libdevmapper, but libvirt itself requires it too
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_scsi.so
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_sheepdog.so
-%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so
-%dir %{_libdir}/libvirt/storage-file
-%attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_fs.so
%if %{with glusterfs}
%files daemon-storage-gluster
%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_rbd.so
%endif
+%if %{with ch}
+%files daemon-ch
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtchd.conf
+%attr(755,root,root) %{_sbindir}/virtchd
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_ch.so
+%{_datadir}/augeas/lenses/virtchd.aug
+%{_datadir}/augeas/lenses/tests/test_virtchd.aug
+%endif
+
%if %{with libxl}
%files daemon-libxl
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-lockd.conf
%{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-sanlock.conf}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtxend.conf
%config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.libxl
+%attr(755,root,root) %{_sbindir}/virtxend
%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_libxl.so
%{_datadir}/augeas/lenses/libvirtd_libxl.aug
+%{_datadir}/augeas/lenses/virtxend.aug
%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
+%{_datadir}/augeas/lenses/tests/test_virtxend.aug
%attr(700,root,root) %dir /var/lib/libvirt/libxl
%attr(700,root,root) %dir /var/run/libvirt/libxl
%attr(700,root,root) %dir /var/log/libvirt/libxl
+%{_mandir}/man8/virtxend.8*
%endif
%if %{with lxc}
%files daemon-lxc
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/lxc.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlxcd.conf
%config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.lxc
+%if %{with apparmor}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-lxc
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/libvirt/TEMPLATE.lxc
+%endif
+%attr(755,root,root) %{_sbindir}/virtlxcd
+%attr(755,root,root) %{_libexecdir}/libvirt_lxc
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
+%{_datadir}/augeas/lenses/libvirtd_lxc.aug
+%{_datadir}/augeas/lenses/virtlxcd.aug
+%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
+%{_datadir}/augeas/lenses/tests/test_virtlxcd.aug
%attr(700,root,root) %dir /var/lib/libvirt/lxc
%attr(700,root,root) %dir /var/run/libvirt/lxc
%attr(700,root,root) %dir /var/log/libvirt/lxc
-%{_datadir}/augeas/lenses/libvirtd_lxc.aug
-%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
-%attr(755,root,root) %{_libexecdir}/libvirt_lxc
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
+%{_mandir}/man8/virtlxcd.8*
%endif
%if %{with qemu}
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-lockd.conf
%{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-sanlock.conf}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtqemud.conf
%config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.qemu
+%if %{with apparmor}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-qemu
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/libvirt/TEMPLATE.qemu
+%endif
+%attr(755,root,root) %{_sbindir}/virtqemud
+%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_qemu.so
+%{_datadir}/augeas/lenses/libvirtd_qemu.aug
+%{_datadir}/augeas/lenses/virtqemud.aug
+%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
+%{_datadir}/augeas/lenses/tests/test_virtqemud.aug
%attr(750,qemu,qemu) %dir /var/cache/libvirt/qemu
%attr(750,qemu,qemu) %dir /var/lib/libvirt/qemu
%attr(700,root,root) %dir /var/log/libvirt/qemu
%attr(700,root,root) %dir /var/run/libvirt/qemu
-%{_datadir}/augeas/lenses/libvirtd_qemu.aug
-%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
-%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_qemu.so
+%config(noreplace) %verify(not md5 mtime size) /etc/sysctl.d/60-qemu-postcopy-migration.conf
+%{_mandir}/man8/virtqemud.8*
+%endif
+
+%if %{with vbox}
+%files daemon-vbox
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtvboxd.conf
+%attr(755,root,root) %{_sbindir}/virtvboxd
+%{_datadir}/augeas/lenses/virtvboxd.aug
+%{_datadir}/augeas/lenses/tests/test_virtvboxd.aug
+%{?with_vbox:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so}
+%{_mandir}/man8/virtvboxd.8*
%endif
%files client
%attr(755,root,root) %{_bindir}/virt-host-validate
%attr(4755,root,root) %{_bindir}/virt-login-shell
%attr(755,root,root) %{_bindir}/virt-xml-validate
+%attr(755,root,root) %{_bindir}/virt-pki-query-dn
%attr(755,root,root) %{_bindir}/virt-pki-validate
+%if %{with qemu}
+%attr(755,root,root) %{_bindir}/virt-qemu-qmp-proxy
+%attr(755,root,root) %{_bindir}/virt-qemu-run
+%attr(755,root,root) %{_bindir}/virt-qemu-sev-validate
+%endif
+%attr(755,root,root) %{_bindir}/virt-ssh-helper
%attr(754,root,root) %{_libexecdir}/libvirt-guests.sh
+%attr(754,root,root) %{_libexecdir}/virt-login-shell-helper
%{_mandir}/man1/virsh.1*
%{_mandir}/man1/virt-admin.1*
%{_mandir}/man1/virt-host-validate.1*
%{_mandir}/man1/virt-login-shell.1*
%{_mandir}/man1/virt-xml-validate.1*
+%{_mandir}/man1/virt-pki-query-dn.1*
%{_mandir}/man1/virt-pki-validate.1*
+%if %{with qemu}
+%{_mandir}/man1/virt-qemu-qmp-proxy.1*
+%{_mandir}/man1/virt-qemu-run.1*
+%{_mandir}/man1/virt-qemu-sev-validate.1*
+%endif
+%{_mandir}/man8/libvirt-guests.8*
+%{_mandir}/man8/virt-ssh-helper.8*
%dir %{_datadir}/libvirt/schemas
%{_datadir}/libvirt/schemas/basictypes.rng
%{_datadir}/libvirt/schemas/capability.rng
+%{_datadir}/libvirt/schemas/cpu.rng
%{_datadir}/libvirt/schemas/cputypes.rng
%{_datadir}/libvirt/schemas/domain.rng
+%{_datadir}/libvirt/schemas/domainbackup.rng
%{_datadir}/libvirt/schemas/domaincaps.rng
+%{_datadir}/libvirt/schemas/domaincheckpoint.rng
%{_datadir}/libvirt/schemas/domaincommon.rng
+%{_datadir}/libvirt/schemas/domainoverrides.rng
%{_datadir}/libvirt/schemas/domainsnapshot.rng
+%{_datadir}/libvirt/schemas/inactiveDomain.rng
%{_datadir}/libvirt/schemas/interface.rng
%{_datadir}/libvirt/schemas/network.rng
%{_datadir}/libvirt/schemas/networkcommon.rng
+%{_datadir}/libvirt/schemas/networkport.rng
%{_datadir}/libvirt/schemas/nodedev.rng
%{_datadir}/libvirt/schemas/nwfilter.rng
%{_datadir}/libvirt/schemas/nwfilter_params.rng
%{_datadir}/libvirt/schemas/nwfilterbinding.rng
+%{_datadir}/libvirt/schemas/privatedata.rng
%{_datadir}/libvirt/schemas/secret.rng
%{_datadir}/libvirt/schemas/storagecommon.rng
%{_datadir}/libvirt/schemas/storagepool.rng
# for test driver (built into libvirt)
%{_datadir}/libvirt/test-screenshot.png
+%files ssh-proxy
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/libvirt-ssh-proxy
+%config(noreplace) %verify(not md5 mtime size) /etc/ssh/ssh_config.d/30-libvirt-ssh-proxy.conf
+
%files utils
%defattr(644,root,root,755)