zbyszek / rpms / libvirt

Forked from rpms/libvirt 3 years ago
Clone
5c1d884
# -*- rpm-spec -*-
5c1d884
a972457
# This spec file assumes you are building on a Fedora or RHEL version
0ca715c
# that's still supported by the vendor. It may work on other distros
0ca715c
# or versions, but no effort will be made to ensure that going forward.
782468f
%define min_rhel 7
2126953
%define min_fedora 31
0ca715c
0ca715c
%if (0%{?fedora} && 0%{?fedora} >= %{min_fedora}) || (0%{?rhel} && 0%{?rhel} >= %{min_rhel})
47ca469
    %define supported_platform 1
47ca469
%else
47ca469
    %define supported_platform 0
ed6c49f
%endif
ed6c49f
47ca469
# The hypervisor drivers that run in libvirtd
47ca469
%define with_qemu          0%{!?_without_qemu:1}
47ca469
%define with_lxc           0%{!?_without_lxc:1}
47ca469
%define with_libxl         0%{!?_without_libxl:1}
47ca469
%define with_vbox          0%{!?_without_vbox:1}
86abd54
e6d9787
%define with_qemu_tcg      %{with_qemu}
9f9eae3
9f9eae3
%define qemu_kvm_arches %{ix86} x86_64
9f9eae3
9f9eae3
%if 0%{?fedora}
47ca469
    %define qemu_kvm_arches %{ix86} x86_64 %{power64} s390x %{arm} aarch64
9f9eae3
%endif
9f9eae3
9f9eae3
%if 0%{?rhel}
9f9eae3
    %define with_qemu_tcg 0
782468f
    %define qemu_kvm_arches x86_64 %{power64} aarch64 s390x
f5ff4a2
%endif
f5ff4a2
4d15e56
# On RHEL 7 and older macro _vpath_builddir is not defined.
4d15e56
%if 0%{?rhel} <= 7
4d15e56
    %define _vpath_builddir %{_target_platform}
4d15e56
%endif
4d15e56
f5ff4a2
%ifarch %{qemu_kvm_arches}
350081d
    %define with_qemu_kvm      %{with_qemu}
e6d9787
%else
350081d
    %define with_qemu_kvm      0
e6d9787
%endif
e6d9787
9f9eae3
%if ! %{with_qemu_tcg} && ! %{with_qemu_kvm}
9f9eae3
    %define with_qemu 0
9f9eae3
%endif
9f9eae3
afe729a
# Then the hypervisor drivers that run outside libvirtd, in libvirt.so
afe729a
%define with_openvz        0%{!?_without_openvz:1}
afe729a
%define with_vmware        0%{!?_without_vmware:1}
86abd54
%define with_esx           0%{!?_without_esx:1}
a6831c2
%define with_hyperv        0%{!?_without_hyperv:1}
3cf75c2
afe729a
# Then the secondary host drivers, which run inside libvirtd
782468f
%define with_storage_rbd      0%{!?_without_storage_rbd:1}
47ca469
%if 0%{?fedora}
47ca469
    %define with_storage_sheepdog 0%{!?_without_storage_sheepdog:1}
f463598
%else
350081d
    %define with_storage_sheepdog 0
f463598
%endif
4d15e56
47ca469
%define with_storage_gluster 0%{!?_without_storage_gluster:1}
4d15e56
%ifnarch %{qemu_kvm_arches}
4d15e56
    # gluster is only built where qemu driver is enabled on RHEL 8
4d15e56
    %if 0%{?rhel} >= 8
4d15e56
        %define with_storage_gluster 0
4d15e56
    %endif
4d15e56
%endif
4d15e56
47ca469
%define with_numactl          0%{!?_without_numactl:1}
11755d8
7335ede
# F25+ has zfs-fuse
48941c0
%if 0%{?fedora}
7335ede
    %define with_storage_zfs      0%{!?_without_storage_zfs:1}
7335ede
%else
7335ede
    %define with_storage_zfs      0
7335ede
%endif
7335ede
e5fa1c0
# We need a recent enough libiscsi (>= 1.18.0)
7f5808b
%if 0%{?fedora} || 0%{?rhel} > 7
e5fa1c0
    %define with_storage_iscsi_direct 0%{!?_without_storage_iscsi_direct:1}
e5fa1c0
%else
e5fa1c0
    %define with_storage_iscsi_direct 0
e5fa1c0
%endif
e5fa1c0
3cf75c2
# A few optional bits off by default, we enable later
f5ff4a2
%define with_fuse          0%{!?_without_fuse:0}
e79d304
%define with_sanlock       0%{!?_without_sanlock:0}
24e9120
%define with_numad         0%{!?_without_numad:0}
7b54832
%define with_firewalld     0%{!?_without_firewalld:0}
5cbc045
%define with_firewalld_zone 0%{!?_without_firewalld_zone:0}
350081d
%define with_libssh2       0%{!?_without_libssh2:0}
1b8b756
%define with_wireshark     0%{!?_without_wireshark:0}
0b1a013
%define with_libssh        0%{!?_without_libssh:0}
0ca715c
%define with_bash_completion  0%{!?_without_bash_completion:0}
2e78127
3cf75c2
# Finally set the OS / architecture specific special cases
3cf75c2
67a2f29
# Xen is available only on i386 x86_64 ia64
79ae809
%ifnarch %{ix86} x86_64 ia64
350081d
    %define with_libxl 0
67a2f29
%endif
67a2f29
e80c83a
# vbox is available only on i386 x86_64
e80c83a
%ifnarch %{ix86} x86_64
e80c83a
    %define with_vbox 0
e80c83a
%endif
e80c83a
4df5f77
# Numactl is not available on many non-x86 archs
18f7b8c
%ifarch s390 s390x %{arm} riscv64
350081d
    %define with_numactl 0
e29f71d
%endif
3cf75c2
7335ede
# zfs-fuse is not available on some architectures
18f7b8c
%ifarch s390 s390x aarch64 riscv64
7335ede
    %define with_storage_zfs 0
7335ede
%endif
7335ede
b0c05ac
# Ceph dropped support for 32-bit hosts
15c305c
%ifarch %{arm} %{ix86}
15c305c
    %define with_storage_rbd 0
579afc9
%endif
7335ede
88887ca
# RHEL doesn't ship OpenVZ, VBox, PowerHypervisor,
8461a52
# VMware, libxenlight (Xen 4.1 and newer),
38c4b72
# or HyperV.
3cf75c2
%if 0%{?rhel}
350081d
    %define with_openvz 0
350081d
    %define with_vbox 0
350081d
    %define with_vmware 0
350081d
    %define with_libxl 0
350081d
    %define with_hyperv 0
ee3bf37
    %define with_vz 0
48941c0
48941c0
    %if 0%{?rhel} > 7
48941c0
        %define with_lxc 0
48941c0
    %endif
3cf75c2
%endif
3cf75c2
782468f
%define with_firewalld 1
7b54832
fecc029
%if 0%{?fedora} || 0%{?rhel} > 7
5cbc045
    %define with_firewalld_zone 0%{!?_without_firewalld_zone:1}
5cbc045
%endif
5cbc045
5cbc045
f5ff4a2
# fuse is used to provide virtualized /proc for LXC
782468f
%if %{with_lxc}
350081d
    %define with_fuse      0%{!?_without_fuse:1}
f5ff4a2
%endif
f5ff4a2
e79d304
# Enable sanlock library for lock management with QEMU
9f9eae3
# Sanlock is available only on arches where kvm is available for RHEL
47ca469
%if 0%{?fedora}
47ca469
    %define with_sanlock 0%{!?_without_sanlock:1}
7069f75
%endif
47ca469
%if 0%{?rhel}
9f9eae3
    %ifarch %{qemu_kvm_arches}
47ca469
        %define with_sanlock 0%{!?_without_sanlock:1}
11755d8
    %endif
11755d8
%endif
e79d304
8cc5083
# Enable libssh2 transport for new enough distros
47ca469
%if 0%{?fedora}
350081d
    %define with_libssh2 0%{!?_without_libssh2:1}
8cc5083
%endif
8cc5083
1b8b756
# Enable wireshark plugins for all distros shipping libvirt 1.2.2 or newer
a972457
%if 0%{?fedora}
2427f8f
    %define with_wireshark 0%{!?_without_wireshark:1}
5cbc045
    %define wireshark_plugindir %(pkg-config --variable plugindir wireshark)/epan
a888673
%endif
1b8b756
0b1a013
# Enable libssh transport for new enough distros
0612313
%if 0%{?fedora} || 0%{?rhel} > 7
0b1a013
    %define with_libssh 0%{!?_without_libssh:1}
0b1a013
%endif
0b1a013
782468f
%define with_bash_completion  0%{!?_without_bash_completion:1}
0ca715c
88887ca
%if %{with_qemu} || %{with_lxc}
8f16376
# numad is used to manage the CPU and memory placement dynamically,
4df5f77
# it's not available on many non-x86 architectures.
18f7b8c
    %ifnarch s390 s390x %{arm} riscv64
47ca469
        %define with_numad    0%{!?_without_numad:1}
350081d
    %endif
7e99819
%endif
7e99819
3cf75c2
# Force QEMU to run as non-root
47ca469
%define qemu_user  qemu
47ca469
%define qemu_group  qemu
a3e1cc3
3cf75c2
11755d8
# RHEL releases provide stable tool chains and so it is safe to turn
11755d8
# compiler warning into errors without being worried about frequent
11755d8
# changes in reported warnings
11755d8
%if 0%{?rhel}
b0c05ac
    %define enable_werror -Dwerror=true
9e11936
%else
b0c05ac
    %define enable_werror -Dwerror=false
11755d8
%endif
11755d8
1bdd527
%if 0%{?rhel} == 7
48941c0
    %define tls_priority "NORMAL"
1bdd527
%else
1bdd527
    %define tls_priority "@LIBVIRT,SYSTEM"
a4bf276
%endif
a4bf276
11755d8
ed9e426
Summary: Library providing a simple virtualization API
e2b90f9
Name: libvirt
b0c05ac
Version: 6.7.0
b94fb6a
Release: 2%{?dist}
af11167
License: LGPLv2+
b73e509
URL: https://libvirt.org/
ed6c49f
b73e509
%if %(echo %{version} | grep -q "\.0$"; echo $?) == 1
350081d
    %define mainturl stable_updates/
8f16376
%endif
b73e509
Source: https://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.xz
b94fb6a
Patch1: 0001-qemu_namespace-Be-tolerant-to-non-existent-files-whe.patch
404e58c
44699dc
Requires: libvirt-daemon = %{version}-%{release}
44699dc
Requires: libvirt-daemon-config-network = %{version}-%{release}
44699dc
Requires: libvirt-daemon-config-nwfilter = %{version}-%{release}
47ca469
%if %{with_libxl}
f463598
Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
47ca469
%endif
47ca469
%if %{with_lxc}
f463598
Requires: libvirt-daemon-driver-lxc = %{version}-%{release}
47ca469
%endif
47ca469
%if %{with_qemu}
f463598
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
47ca469
%endif
88887ca
# We had UML driver, but we've removed it.
88887ca
Obsoletes: libvirt-daemon-driver-uml <= 5.0.0
88887ca
Obsoletes: libvirt-daemon-uml <= 5.0.0
47ca469
%if %{with_vbox}
e80c83a
Requires: libvirt-daemon-driver-vbox = %{version}-%{release}
47ca469
%endif
65efaaf
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
f463598
f463598
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
f463598
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
f463598
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
f463598
Requires: libvirt-daemon-driver-network = %{version}-%{release}
f463598
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
44699dc
Requires: libvirt-client = %{version}-%{release}
b1ac7b5
Requires: libvirt-libs = %{version}-%{release}
ed6c49f
44699dc
# All build-time requirements. Run-time requirements are
44699dc
# listed against each sub-RPM
4e460d5
BuildRequires: gettext-devel
79accd5
%if 0%{?rhel} == 7
79accd5
BuildRequires: python36-docutils
79accd5
%else
79accd5
BuildRequires: python3-docutils
f99eeb8
%endif
6210c45
BuildRequires: gcc
b0c05ac
BuildRequires: meson >= 0.54.0
b0c05ac
BuildRequires: ninja-build
2126953
BuildRequires: make
a4075ec
BuildRequires: git
7f5808b
%if 0%{?fedora} || 0%{?rhel} > 7
a27aceb
BuildRequires: perl-interpreter
2a9c282
%else
2a9c282
BuildRequires: perl
2a9c282
%endif
79accd5
BuildRequires: python3
7069f75
BuildRequires: systemd-units
4fd635e
%if %{with_libxl}
313e00f
BuildRequires: xen-devel
7069f75
%endif
8693111
BuildRequires: glib2-devel >= 2.48
ba3d2d0
BuildRequires: libxml2-devel
ed6c49f
BuildRequires: libxslt
d55c7f2
BuildRequires: readline-devel
0ca715c
%if %{with_bash_completion}
0ca715c
BuildRequires: bash-completion >= 2.0
0ca715c
%endif
5c1d884
BuildRequires: gettext
c363c7e
BuildRequires: libtasn1-devel
c70baa5
BuildRequires: gnutls-devel
350081d
BuildRequires: libattr-devel
4aa9c4f
# For pool-build probing for existing pools
4aa9c4f
BuildRequires: libblkid-devel >= 2.17
ed6c49f
# for augparse, optionally used in testing
ed6c49f
BuildRequires: augeas
544ad4a
BuildRequires: systemd-devel >= 185
47ca469
BuildRequires: libpciaccess-devel >= 0.10.9
e5fa1c0
BuildRequires: yajl-devel
e79d304
%if %{with_sanlock}
8cc5083
BuildRequires: sanlock-devel >= 2.4
8cc5083
%endif
dd36989
BuildRequires: libpcap-devel >= 1.5.0
4b6ea94
BuildRequires: libnl3-devel
bf744f9
BuildRequires: libselinux-devel
e8394ab
BuildRequires: dnsmasq >= 2.41
ed6c49f
BuildRequires: iptables
47ca469
BuildRequires: radvd
ed6c49f
BuildRequires: ebtables
ed6c49f
BuildRequires: module-init-tools
4f66791
BuildRequires: cyrus-sasl-devel
8ded6ff
BuildRequires: polkit >= 0.112
bf744f9
# For mount/umount in FS driver
bf744f9
BuildRequires: util-linux
bf744f9
%if %{with_qemu}
a74ea31
# For managing ACLs
a74ea31
BuildRequires: libacl-devel
bf744f9
# From QEMU RPMs
bf744f9
BuildRequires: /usr/bin/qemu-img
2b9efc3
%endif
bf744f9
# For LVM drivers
bf744f9
BuildRequires: lvm2
e5fa1c0
# For pool type=iscsi
bf744f9
BuildRequires: iscsi-initiator-utils
e5fa1c0
%if %{with_storage_iscsi_direct}
e5fa1c0
# For pool type=iscsi-direct
e5fa1c0
BuildRequires: libiscsi-devel
e5fa1c0
%endif
bf744f9
# For disk driver
bf744f9
BuildRequires: parted-devel
897506e
# For Multipath support
897506e
BuildRequires: device-mapper-devel
d670e24
# For XFS reflink clone support
d670e24
BuildRequires: xfsprogs-devel
1b8b756
%if %{with_storage_rbd}
79accd5
    %if 0%{?fedora} || 0%{?rhel} > 7
79accd5
BuildRequires: librados-devel
79accd5
BuildRequires: librbd-devel
79accd5
    %else
c0a04cb
BuildRequires: librados2-devel
c0a04cb
BuildRequires: librbd1-devel
79accd5
    %endif
3cf75c2
%endif
8c9e40d
%if %{with_storage_gluster}
8c9e40d
BuildRequires: glusterfs-api-devel >= 3.4.1
8c9e40d
BuildRequires: glusterfs-devel >= 3.4.1
47ca469
%endif
47ca469
%if %{with_storage_sheepdog}
47ca469
BuildRequires: sheepdog
8c9e40d
%endif
7335ede
%if %{with_storage_zfs}
7335ede
# Support any conforming implementation of zfs. On stock Fedora
7335ede
# this is zfs-fuse, but could be zfsonlinux upstream RPMs
7335ede
BuildRequires: /sbin/zfs
7335ede
BuildRequires: /sbin/zpool
7335ede
%endif
f5edf79
%if %{with_numactl}
958f1c3
# For QEMU/LXC numa info
958f1c3
BuildRequires: numactl-devel
f5edf79
%endif
705fd20
BuildRequires: libcap-ng-devel >= 0.5.0
f5ff4a2
%if %{with_fuse}
f5ff4a2
BuildRequires: fuse-devel >= 2.8.6
f5ff4a2
%endif
79accd5
%if %{with_libssh2}
8cc5083
BuildRequires: libssh2-devel >= 1.3.0
8cc5083
%endif
4b6ea94
4b6ea94
BuildRequires: netcf-devel >= 0.2.2
7e99819
%if %{with_esx}
7e99819
BuildRequires: libcurl-devel
7e99819
%endif
a6831c2
%if %{with_hyperv}
a6831c2
BuildRequires: libwsman-devel >= 2.2.3
a6831c2
%endif
fca1fcc
BuildRequires: audit-libs-devel
ed9e426
# we need /usr/sbin/dtrace
ed9e426
BuildRequires: systemtap-sdt-devel
ed9e426
ed6c49f
# For mount/umount in FS driver
ed6c49f
BuildRequires: util-linux
ed6c49f
# For showmount in FS driver (netfs discovery)
ed6c49f
BuildRequires: nfs-utils
36d5586
50e253d
# Communication with the firewall and polkit daemons use DBus
963754b
BuildRequires: dbus-devel
963754b
31802de
# Fedora build root suckage
31802de
BuildRequires: gawk
31802de
336a932
# For storage wiping with different algorithms
336a932
BuildRequires: scrub
336a932
24e9120
%if %{with_numad}
24e9120
BuildRequires: numad
24e9120
%endif
24e9120
1b8b756
%if %{with_wireshark}
5cbc045
BuildRequires: wireshark-devel >= 2.4.0
1b8b756
%endif
1b8b756
0b1a013
%if %{with_libssh}
0b1a013
BuildRequires: libssh-devel >= 0.7.0
0b1a013
%endif
0b1a013
fecc029
# On RHEL-7 rpcgen is still part of glibc-common package
7f5808b
%if 0%{?fedora} || 0%{?rhel} > 7
208f506
BuildRequires: rpcgen
208f506
%endif
208f506
fecc029
BuildRequires: libtirpc-devel
fecc029
5cbc045
%if %{with_firewalld_zone}
5cbc045
BuildRequires: firewalld-filesystem
5cbc045
%endif
5cbc045
e2b90f9
%description
bf744f9
Libvirt is a C toolkit to interact with the virtualization capabilities
a3e1cc3
of recent versions of Linux (and other OSes). The main package includes
a3e1cc3
the libvirtd server exporting the virtualization support.
a3e1cc3
96a520b
%package docs
96a520b
Summary: API reference and website documentation
96a520b
96a520b
%description docs
96a520b
Includes the API reference for the libvirt C library, and a complete
96a520b
copy of the libvirt.org website documentation.
96a520b
44699dc
%package daemon
44699dc
Summary: Server side daemon and supporting files for libvirt library
44699dc
44699dc
# All runtime requirements for the libvirt package (runtime requrements
44699dc
# for subpackages are listed later in those subpackages)
44699dc
b1ac7b5
# The client side, i.e. shared libs are in a subpackage
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
44699dc
afe8184
# (client invokes 'nc' against the UNIX socket on the server)
afe8184
Requires: /usr/bin/nc
afe8184
44699dc
# for modprobe of pci devices
44699dc
Requires: module-init-tools
0612313
44699dc
# for /sbin/ip & /sbin/tc
44699dc
Requires: iproute
0612313
# tc is provided by iproute-tc since at least Fedora 26
0612313
%if 0%{?fedora} || 0%{?rhel} > 7
0612313
Requires: iproute-tc
0612313
%endif
0612313
9f9eae3
Requires: polkit >= 0.112
47ca469
%ifarch %{ix86} x86_64 ia64
44699dc
# For virConnectGetSysinfo
44699dc
Requires: dmidecode
47ca469
%endif
44699dc
# For service management
44699dc
Requires(post): systemd-units
44699dc
Requires(post): systemd-sysv
44699dc
Requires(preun): systemd-units
44699dc
Requires(postun): systemd-units
47ca469
%if %{with_numad}
44699dc
Requires: numad
47ca469
%endif
f5ff4a2
# libvirtd depends on 'messagebus' service
f5ff4a2
Requires: dbus
660e011
# For uid creation during pre
660e011
Requires(pre): shadow-utils
f7763bf
44699dc
%description daemon
44699dc
Server side daemon required to manage the virtualization capabilities
44699dc
of recent versions of Linux. Requires a hypervisor specific sub-RPM
44699dc
for specific drivers.
44699dc
44699dc
%package daemon-config-network
44699dc
Summary: Default configuration files for the libvirtd daemon
44699dc
44699dc
Requires: libvirt-daemon = %{version}-%{release}
1b8b756
Requires: libvirt-daemon-driver-network = %{version}-%{release}
44699dc
44699dc
%description daemon-config-network
44699dc
Default configuration files for setting up NAT based networking
44699dc
44699dc
%package daemon-config-nwfilter
44699dc
Summary: Network filter configuration files for the libvirtd daemon
44699dc
44699dc
Requires: libvirt-daemon = %{version}-%{release}
1b8b756
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
44699dc
44699dc
%description daemon-config-nwfilter
44699dc
Network filter configuration files for cleaning guest traffic
e6d9787
544ad4a
%package daemon-driver-network
544ad4a
Summary: Network driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
c5c28ba
Requires: dnsmasq >= 2.41
c5c28ba
Requires: radvd
c5c28ba
Requires: iptables
544ad4a
544ad4a
%description daemon-driver-network
544ad4a
The network driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the virtual network APIs using the Linux
544ad4a
bridge capabilities.
544ad4a
544ad4a
544ad4a
%package daemon-driver-nwfilter
544ad4a
Summary: Nwfilter driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
c5c28ba
Requires: iptables
c5c28ba
Requires: ebtables
544ad4a
544ad4a
%description daemon-driver-nwfilter
544ad4a
The nwfilter driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the firewall APIs using the ebtables,
544ad4a
iptables and ip6tables capabilities
544ad4a
544ad4a
544ad4a
%package daemon-driver-nodedev
544ad4a
Summary: Nodedev driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
c5c28ba
# needed for device enumeration
c5c28ba
Requires: systemd >= 185
2126953
# For managing persistent mediated devices
fecc029
%if 0%{?fedora} || 0%{?rhel} > 7
2126953
Requires: mdevctl
fecc029
%endif
544ad4a
544ad4a
%description daemon-driver-nodedev
544ad4a
The nodedev driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the node device APIs using the udev
544ad4a
capabilities.
544ad4a
544ad4a
544ad4a
%package daemon-driver-interface
544ad4a
Summary: Interface driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
c5c28ba
Requires: netcf-libs >= 0.2.2
544ad4a
544ad4a
%description daemon-driver-interface
544ad4a
The interface driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the network interface APIs using the
544ad4a
netcf library
544ad4a
544ad4a
544ad4a
%package daemon-driver-secret
544ad4a
Summary: Secret driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
544ad4a
544ad4a
%description daemon-driver-secret
544ad4a
The secret driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the secret key APIs.
544ad4a
a74ea31
%package daemon-driver-storage-core
a74ea31
Summary: Storage driver plugin including base backends for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
c5c28ba
Requires: nfs-utils
c5c28ba
# For mkfs
c5c28ba
Requires: util-linux
47ca469
%if %{with_qemu}
c5c28ba
# From QEMU RPMs
c5c28ba
Requires: /usr/bin/qemu-img
47ca469
%endif
d670e24
%if !%{with_storage_rbd}
d670e24
Obsoletes: libvirt-daemon-driver-storage-rbd < %{version}-%{release}
d670e24
%endif
544ad4a
a74ea31
%description daemon-driver-storage-core
a74ea31
The storage driver plugin for the libvirtd daemon, providing
a74ea31
an implementation of the storage APIs using files, local disks, LVM, SCSI,
a74ea31
iSCSI, and multipath storage.
a74ea31
a74ea31
%package daemon-driver-storage-logical
a74ea31
Summary: Storage driver plugin for lvm volumes
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
Requires: lvm2
a74ea31
a74ea31
%description daemon-driver-storage-logical
a74ea31
The storage driver backend adding implementation of the storage APIs for block
a74ea31
volumes using lvm.
a74ea31
a74ea31
a74ea31
%package daemon-driver-storage-disk
a74ea31
Summary: Storage driver plugin for disk
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
Requires: parted
a74ea31
Requires: device-mapper
a74ea31
a74ea31
%description daemon-driver-storage-disk
a74ea31
The storage driver backend adding implementation of the storage APIs for block
a74ea31
volumes using the host disks.
a74ea31
a74ea31
a74ea31
%package daemon-driver-storage-scsi
a74ea31
Summary: Storage driver plugin for local scsi devices
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
a74ea31
%description daemon-driver-storage-scsi
a74ea31
The storage driver backend adding implementation of the storage APIs for scsi
a74ea31
host devices.
a74ea31
a74ea31
a74ea31
%package daemon-driver-storage-iscsi
a74ea31
Summary: Storage driver plugin for iscsi
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
Requires: iscsi-initiator-utils
a74ea31
a74ea31
%description daemon-driver-storage-iscsi
a74ea31
The storage driver backend adding implementation of the storage APIs for iscsi
a74ea31
volumes using the host iscsi stack.
a74ea31
a74ea31
e5fa1c0
%if %{with_storage_iscsi_direct}
e5fa1c0
%package daemon-driver-storage-iscsi-direct
e5fa1c0
Summary: Storage driver plugin for iscsi-direct
e5fa1c0
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
e5fa1c0
Requires: libvirt-libs = %{version}-%{release}
e5fa1c0
Requires: libiscsi
e5fa1c0
e5fa1c0
%description daemon-driver-storage-iscsi-direct
e5fa1c0
The storage driver backend adding implementation of the storage APIs for iscsi
e5fa1c0
volumes using libiscsi direct connection.
e5fa1c0
%endif
e5fa1c0
e5fa1c0
a74ea31
%package daemon-driver-storage-mpath
a74ea31
Summary: Storage driver plugin for multipath volumes
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
Requires: device-mapper
a74ea31
a74ea31
%description daemon-driver-storage-mpath
a74ea31
The storage driver backend adding implementation of the storage APIs for
a74ea31
multipath storage using device mapper.
a74ea31
a74ea31
a74ea31
%if %{with_storage_gluster}
a74ea31
%package daemon-driver-storage-gluster
a74ea31
Summary: Storage driver plugin for gluster
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
    %if 0%{?fedora}
a74ea31
Requires: glusterfs-client >= 2.0.1
a74ea31
    %endif
a74ea31
    %if (0%{?fedora} || 0%{?with_storage_gluster})
a74ea31
Requires: /usr/sbin/gluster
a74ea31
    %endif
a74ea31
a74ea31
%description daemon-driver-storage-gluster
a74ea31
The storage driver backend adding implementation of the storage APIs for gluster
a74ea31
volumes using libgfapi.
a74ea31
%endif
a74ea31
a74ea31
a74ea31
%if %{with_storage_rbd}
a74ea31
%package daemon-driver-storage-rbd
a74ea31
Summary: Storage driver plugin for rbd
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
a74ea31
%description daemon-driver-storage-rbd
a74ea31
The storage driver backend adding implementation of the storage APIs for rbd
a74ea31
volumes using the ceph protocol.
a74ea31
%endif
a74ea31
a74ea31
a74ea31
%if %{with_storage_sheepdog}
a74ea31
%package daemon-driver-storage-sheepdog
a74ea31
Summary: Storage driver plugin for sheepdog
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
a74ea31
Requires: sheepdog
a74ea31
a74ea31
%description daemon-driver-storage-sheepdog
a74ea31
The storage driver backend adding implementation of the storage APIs for
a74ea31
sheepdog volumes using.
a74ea31
%endif
a74ea31
a74ea31
7335ede
%if %{with_storage_zfs}
7335ede
%package daemon-driver-storage-zfs
7335ede
Summary: Storage driver plugin for ZFS
7335ede
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
7335ede
# Support any conforming implementation of zfs
7335ede
Requires: /sbin/zfs
7335ede
Requires: /sbin/zpool
7335ede
7335ede
%description daemon-driver-storage-zfs
7335ede
The storage driver backend adding implementation of the storage APIs for
7335ede
ZFS volumes.
7335ede
%endif
7335ede
7335ede
a74ea31
%package daemon-driver-storage
a74ea31
Summary: Storage driver plugin including all backends for the libvirtd daemon
a74ea31
Requires: libvirt-daemon-driver-storage-core = %{version}-%{release}
a74ea31
Requires: libvirt-daemon-driver-storage-disk = %{version}-%{release}
a74ea31
Requires: libvirt-daemon-driver-storage-logical = %{version}-%{release}
a74ea31
Requires: libvirt-daemon-driver-storage-scsi = %{version}-%{release}
a74ea31
Requires: libvirt-daemon-driver-storage-iscsi = %{version}-%{release}
a74ea31
Requires: libvirt-daemon-driver-storage-mpath = %{version}-%{release}
e5fa1c0
%if %{with_storage_iscsi_direct}
e5fa1c0
Requires: libvirt-daemon-driver-storage-iscsi-direct = %{version}-%{release}
e5fa1c0
%endif
a74ea31
%if %{with_storage_gluster}
a74ea31
Requires: libvirt-daemon-driver-storage-gluster = %{version}-%{release}
a74ea31
%endif
a74ea31
%if %{with_storage_rbd}
a74ea31
Requires: libvirt-daemon-driver-storage-rbd = %{version}-%{release}
a74ea31
%endif
a74ea31
%if %{with_storage_sheepdog}
a74ea31
Requires: libvirt-daemon-driver-storage-sheepdog = %{version}-%{release}
a74ea31
%endif
7335ede
%if %{with_storage_zfs}
7335ede
Requires: libvirt-daemon-driver-storage-zfs = %{version}-%{release}
7335ede
%endif
a74ea31
544ad4a
%description daemon-driver-storage
544ad4a
The storage driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the storage APIs using LVM, iSCSI,
544ad4a
parted and more.
544ad4a
544ad4a
47ca469
%if %{with_qemu}
544ad4a
%package daemon-driver-qemu
04cb28c
Summary: QEMU driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
c5c28ba
Requires: /usr/bin/qemu-img
c5c28ba
# For image compression
c5c28ba
Requires: gzip
c5c28ba
Requires: bzip2
c5c28ba
Requires: lzop
c5c28ba
Requires: xz
48941c0
    %if 0%{?fedora} || 0%{?rhel} > 7
4e2aab9
Requires: systemd-container
b1ac7b5
    %endif
544ad4a
544ad4a
%description daemon-driver-qemu
544ad4a
The qemu driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the hypervisor driver APIs using
544ad4a
QEMU
47ca469
%endif
544ad4a
544ad4a
47ca469
%if %{with_lxc}
544ad4a
%package daemon-driver-lxc
544ad4a
Summary: LXC driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
544ad4a
# There really is a hard cross-driver dependency here
544ad4a
Requires: libvirt-daemon-driver-network = %{version}-%{release}
48941c0
    %if 0%{?fedora} || 0%{?rhel} > 7
4e2aab9
Requires: systemd-container
b1ac7b5
    %endif
544ad4a
544ad4a
%description daemon-driver-lxc
544ad4a
The LXC driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the hypervisor driver APIs using
544ad4a
the Linux kernel
47ca469
%endif
544ad4a
544ad4a
47ca469
%if %{with_vbox}
e80c83a
%package daemon-driver-vbox
e80c83a
Summary: VirtualBox driver plugin for the libvirtd daemon
e80c83a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
e80c83a
e80c83a
%description daemon-driver-vbox
e80c83a
The vbox driver plugin for the libvirtd daemon, providing
e80c83a
an implementation of the hypervisor driver APIs using
e80c83a
VirtualBox
47ca469
%endif
e80c83a
e80c83a
47ca469
%if %{with_libxl}
544ad4a
%package daemon-driver-libxl
544ad4a
Summary: Libxl driver plugin for the libvirtd daemon
544ad4a
Requires: libvirt-daemon = %{version}-%{release}
782468f
Requires: libvirt-libs = %{version}-%{release}
4fd635e
Obsoletes: libvirt-daemon-driver-xen < 4.3.0
544ad4a
544ad4a
%description daemon-driver-libxl
544ad4a
The Libxl driver plugin for the libvirtd daemon, providing
544ad4a
an implementation of the hypervisor driver APIs using
544ad4a
Libxl
47ca469
%endif
544ad4a
544ad4a
e6d9787
47ca469
%if %{with_qemu_tcg}
e6d9787
%package daemon-qemu
e6d9787
Summary: Server side daemon & driver required to run QEMU guests
e6d9787
e6d9787
Requires: libvirt-daemon = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-network = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
e6d9787
Requires: qemu
e6d9787
e6d9787
%description daemon-qemu
e6d9787
Server side daemon and driver required to manage the virtualization
e6d9787
capabilities of the QEMU TCG emulators
47ca469
%endif
e6d9787
e6d9787
47ca469
%if %{with_qemu_kvm}
e6d9787
%package daemon-kvm
e6d9787
Summary: Server side daemon & driver required to run KVM guests
e6d9787
e6d9787
Requires: libvirt-daemon = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-network = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
e6d9787
Requires: qemu-kvm
e6d9787
e6d9787
%description daemon-kvm
e6d9787
Server side daemon and driver required to manage the virtualization
e6d9787
capabilities of the KVM hypervisor
47ca469
%endif
e6d9787
e6d9787
47ca469
%if %{with_lxc}
e6d9787
%package daemon-lxc
e6d9787
Summary: Server side daemon & driver required to run LXC guests
e6d9787
e6d9787
Requires: libvirt-daemon = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-lxc = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-network = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
e6d9787
e6d9787
%description daemon-lxc
e6d9787
Server side daemon and driver required to manage the virtualization
e6d9787
capabilities of LXC
47ca469
%endif
e6d9787
e6d9787
4fd635e
%if %{with_libxl}
e6d9787
%package daemon-xen
e6d9787
Summary: Server side daemon & driver required to run XEN guests
e6d9787
e6d9787
Requires: libvirt-daemon = %{version}-%{release}
47ca469
    %if %{with_libxl}
544ad4a
Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
47ca469
    %endif
544ad4a
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-network = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
544ad4a
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
e6d9787
Requires: xen
e6d9787
e6d9787
%description daemon-xen
e6d9787
Server side daemon and driver required to manage the virtualization
e6d9787
capabilities of XEN
47ca469
%endif
e80c83a
47ca469
%if %{with_vbox}
e80c83a
%package daemon-vbox
e80c83a
Summary: Server side daemon & driver required to run VirtualBox guests
e80c83a
e80c83a
Requires: libvirt-daemon = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-vbox = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-network = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
e80c83a
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
e80c83a
e80c83a
%description daemon-vbox
e80c83a
Server side daemon and driver required to manage the virtualization
e80c83a
capabilities of VirtualBox
47ca469
%endif
44699dc
a3e1cc3
%package client
b1ac7b5
Summary: Client side utilities of the libvirt library
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
a3e1cc3
Requires: readline
e80c83a
# Needed by /usr/libexec/libvirt-guests.sh script.
ed6c49f
Requires: gettext
ed6c49f
# Needed by virt-pki-validate script.
ed6c49f
Requires: gnutls-utils
48941c0
%if %{with_bash_completion}
48941c0
Requires: %{name}-bash-completion = %{version}-%{release}
48941c0
%endif
b1ac7b5
b1ac7b5
%description client
b1ac7b5
The client binaries needed to access the virtualization
b1ac7b5
capabilities of recent versions of Linux (and other OSes).
b1ac7b5
b1ac7b5
%package libs
b1ac7b5
Summary: Client side libraries
b1ac7b5
# So remote clients can access libvirt over SSH tunnel
a3e1cc3
Requires: cyrus-sasl
04cb28c
# Needed by default sasl.conf - no onerous extra deps, since
04cb28c
# 100's of other things on a system already pull in krb5-libs
04cb28c
Requires: cyrus-sasl-gssapi
a3e1cc3
b1ac7b5
%description libs
b1ac7b5
Shared libraries for accessing the libvirt daemon.
b1ac7b5
b1ac7b5
%package admin
b1ac7b5
Summary: Set of tools to control libvirt daemon
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
b1ac7b5
Requires: readline
48941c0
%if %{with_bash_completion}
48941c0
Requires: %{name}-bash-completion = %{version}-%{release}
48941c0
%endif
b1ac7b5
b1ac7b5
%description admin
b1ac7b5
The client side utilities to control the libvirt daemon.
a3e1cc3
48941c0
%if %{with_bash_completion}
48941c0
%package bash-completion
48941c0
Summary: Bash completion script
48941c0
48941c0
%description bash-completion
48941c0
Bash completion script stub.
48941c0
%endif
48941c0
1b8b756
%if %{with_wireshark}
1b8b756
%package wireshark
1b8b756
Summary: Wireshark dissector plugin for libvirt RPC transactions
5cbc045
Requires: wireshark >= 2.4.0
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
1b8b756
1b8b756
%description wireshark
1b8b756
Wireshark dissector plugin for better analysis of libvirt RPC traffic.
1b8b756
%endif
1b8b756
c5c28ba
%if %{with_lxc}
c5c28ba
%package login-shell
c5c28ba
Summary: Login shell for connecting users to an LXC container
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
c5c28ba
c5c28ba
%description login-shell
c5c28ba
Provides the set-uid virt-login-shell binary that is used to
c5c28ba
connect a user to an LXC container when they login, by switching
c5c28ba
namespaces.
c5c28ba
%endif
c5c28ba
e2b90f9
%package devel
e2b90f9
Summary: Libraries, includes, etc. to compile with the libvirt library
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
68efefa
Requires: pkgconfig
e2b90f9
e2b90f9
%description devel
96a520b
Include header files & development libraries for the libvirt C library.
e2b90f9
e79d304
%if %{with_sanlock}
e79d304
%package lock-sanlock
e79d304
Summary: Sanlock lock manager plugin for QEMU driver
8cc5083
Requires: sanlock >= 2.4
a6831c2
#for virt-sanlock-cleanup require augeas
a6831c2
Requires: augeas
544ad4a
Requires: %{name}-daemon = %{version}-%{release}
b1ac7b5
Requires: %{name}-libs = %{version}-%{release}
e79d304
e79d304
%description lock-sanlock
e79d304
Includes the Sanlock lock manager plugin for the QEMU
e79d304
driver
e79d304
%endif
e79d304
0debbff
%package nss
0debbff
Summary: Libvirt plugin for Name Service Switch
0debbff
Requires: libvirt-daemon-driver-network = %{version}-%{release}
0debbff
0debbff
%description nss
0debbff
Libvirt plugin for NSS for translating domain names into IP addresses.
0debbff
ee3bf37
e2b90f9
%prep
47ca469
e5fa1c0
%autosetup -S git_am
e73cc6a
e2b90f9
%build
051644f
%if ! %{supported_platform}
0ca715c
echo "This RPM requires either Fedora >= %{min_fedora} or RHEL >= %{min_rhel}"
051644f
exit 1
051644f
%endif
051644f
47ca469
%if %{with_qemu}
b0c05ac
    %define arg_qemu -Ddriver_qemu=enabled
47ca469
%else
b0c05ac
    %define arg_qemu -Ddriver_qemu=disabled
8c9e40d
%endif
8c9e40d
47ca469
%if %{with_openvz}
b0c05ac
    %define arg_openvz -Ddriver_openvz=enabled
47ca469
%else
b0c05ac
    %define arg_openvz -Ddriver_openvz=disabled
f5edf79
%endif
f5edf79
47ca469
%if %{with_lxc}
b0c05ac
    %define arg_lxc -Ddriver_lxc=enabled
b0c05ac
    %define arg_login_shell -Dlogin_shell=enabled
47ca469
%else
b0c05ac
    %define arg_lxc -Ddriver_lxc=disabled
b0c05ac
    %define arg_login_shell -Dlogin_shell=disabled
24e9120
%endif
24e9120
47ca469
%if %{with_vbox}
b0c05ac
    %define arg_vbox -Ddriver_vbox=enabled
47ca469
%else
b0c05ac
    %define arg_vbox -Ddriver_vbox=disabled
ccafc8e
%endif
ccafc8e
47ca469
%if %{with_libxl}
b0c05ac
    %define arg_libxl -Ddriver_libxl=enabled
47ca469
%else
b0c05ac
    %define arg_libxl -Ddriver_libxl=disabled
f5ff4a2
%endif
f5ff4a2
47ca469
%if %{with_esx}
b0c05ac
    %define arg_esx -Ddriver_esx=enabled
47ca469
%else
b0c05ac
    %define arg_esx -Ddriver_esx=disabled
3cf75c2
%endif
3cf75c2
47ca469
%if %{with_hyperv}
b0c05ac
    %define arg_hyperv -Ddriver_hyperv=enabled
47ca469
%else
b0c05ac
    %define arg_hyperv -Ddriver_hyperv=disabled
11755d8
%endif
11755d8
47ca469
%if %{with_vmware}
b0c05ac
    %define arg_vmware -Ddriver_vmware=enabled
47ca469
%else
b0c05ac
    %define arg_vmware -Ddriver_vmware=disabled
3cf75c2
%endif
3cf75c2
47ca469
%if %{with_storage_rbd}
b0c05ac
    %define arg_storage_rbd -Dstorage_rbd=enabled
47ca469
%else
b0c05ac
    %define arg_storage_rbd -Dstorage_rbd=disabled
4717aa0
%endif
4717aa0
47ca469
%if %{with_storage_sheepdog}
b0c05ac
    %define arg_storage_sheepdog -Dstorage_sheepdog=enabled
47ca469
%else
b0c05ac
    %define arg_storage_sheepdog -Dstorage_sheepdog=disabled
e79d304
%endif
e79d304
47ca469
%if %{with_storage_gluster}
b0c05ac
    %define arg_storage_gluster -Dstorage_gluster=enabled
47ca469
%else
b0c05ac
    %define arg_storage_gluster -Dstorage_gluster=disabled
7e99819
%endif
7e99819
7335ede
%if %{with_storage_zfs}
b0c05ac
    %define arg_storage_zfs -Dstorage_zfs=enabled
7335ede
%else
b0c05ac
    %define arg_storage_zfs -Dstorage_zfs=disabled
7335ede
%endif
7335ede
47ca469
%if %{with_numactl}
b0c05ac
    %define arg_numactl -Dnumactl=enabled
47ca469
%else
b0c05ac
    %define arg_numactl -Dnumactl=disabled
7e99819
%endif
7e99819
47ca469
%if %{with_numad}
b0c05ac
    %define arg_numad -Dnumad=enabled
47ca469
%else
b0c05ac
    %define arg_numad -Dnumad=disabled
fca1fcc
%endif
fca1fcc
47ca469
%if %{with_fuse}
b0c05ac
    %define arg_fuse -Dfuse=enabled
47ca469
%else
b0c05ac
    %define arg_fuse -Dfuse=disabled
fca1fcc
%endif
fca1fcc
47ca469
%if %{with_sanlock}
b0c05ac
    %define arg_sanlock -Dsanlock=enabled
47ca469
%else
b0c05ac
    %define arg_sanlock -Dsanlock=disabled
544ad4a
%endif
544ad4a
7b54832
%if %{with_firewalld}
b0c05ac
    %define arg_firewalld -Dfirewalld=enabled
47ca469
%else
b0c05ac
    %define arg_firewalld -Dfirewalld=disabled
1b8b756
%endif
1b8b756
5cbc045
%if %{with_firewalld_zone}
b0c05ac
    %define arg_firewalld_zone -Dfirewalld_zone=enabled
5cbc045
%else
b0c05ac
    %define arg_firewalld_zone -Dfirewalld_zone=disabled
5cbc045
%endif
5cbc045
47ca469
%if %{with_wireshark}
b0c05ac
    %define arg_wireshark -Dwireshark_dissector=enabled
47ca469
%else
b0c05ac
    %define arg_wireshark -Dwireshark_dissector=disabled
1b8b756
%endif
1b8b756
e5fa1c0
%if %{with_storage_iscsi_direct}
b0c05ac
    %define arg_storage_iscsi_direct -Dstorage_iscsi_direct=enabled
e5fa1c0
%else
b0c05ac
    %define arg_storage_iscsi_direct -Dstorage_iscsi_direct=disabled
e5fa1c0
%endif
e5fa1c0
f13fb18
%define when  %(date +"%%F-%%T")
f13fb18
%define where %(hostname)
f13fb18
%define who   %{?packager}%{!?packager:Unknown}
b0c05ac
%define arg_packager -Dpackager="%{who}, %{when}, %{where}"
b0c05ac
%define arg_packager_version -Dpackager_version="%{release}"
f13fb18
b0c05ac
%define arg_selinux_mount -Dselinux_mount="/sys/fs/selinux"
47ca469
11755d8
# place macros above and build commands below this comment
11755d8
a56bcbd
export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
a56bcbd
b0c05ac
%meson \
b0c05ac
           -Drunstatedir=%{_rundir} \
afe8184
           %{?arg_qemu} \
47ca469
           %{?arg_openvz} \
47ca469
           %{?arg_lxc} \
47ca469
           %{?arg_vbox} \
47ca469
           %{?arg_libxl} \
b0c05ac
           -Dsasl=enabled \
b0c05ac
           -Dpolkit=enabled \
b0c05ac
           -Ddriver_libvirtd=enabled \
47ca469
           %{?arg_esx} \
47ca469
           %{?arg_hyperv} \
47ca469
           %{?arg_vmware} \
b0c05ac
           -Ddriver_vz=disabled \
b0c05ac
           -Ddriver_bhyve=disabled \
b0c05ac
           -Dremote_default_mode=legacy \
b0c05ac
           -Ddriver_interface=enabled \
b0c05ac
           -Ddriver_network=enabled \
b0c05ac
           -Dstorage_fs=enabled \
b0c05ac
           -Dstorage_lvm=enabled \
b0c05ac
           -Dstorage_iscsi=enabled \
e5fa1c0
           %{?arg_storage_iscsi_direct} \
b0c05ac
           -Dstorage_scsi=enabled \
b0c05ac
           -Dstorage_disk=enabled \
b0c05ac
           -Dstorage_mpath=enabled \
47ca469
           %{?arg_storage_rbd} \
47ca469
           %{?arg_storage_sheepdog} \
47ca469
           %{?arg_storage_gluster} \
7335ede
           %{?arg_storage_zfs} \
b0c05ac
           -Dstorage_vstorage=disabled \
47ca469
           %{?arg_numactl} \
47ca469
           %{?arg_numad} \
b0c05ac
           -Dcapng=enabled \
47ca469
           %{?arg_fuse} \
b0c05ac
           -Dnetcf=enabled \
b0c05ac
           -Dselinux=enabled \
47ca469
           %{?arg_selinux_mount} \
b0c05ac
           -Dapparmor=disabled \
b0c05ac
           -Dsecdriver_apparmor=disabled \
b0c05ac
           -Dhal=disabled \
b0c05ac
           -Dudev=enabled \
b0c05ac
           -Dyajl=enabled \
47ca469
           %{?arg_sanlock} \
b0c05ac
           -Dlibpcap=enabled \
b0c05ac
           -Dmacvtap=enabled \
b0c05ac
           -Daudit=enabled \
b0c05ac
           -Ddtrace=enabled \
47ca469
           %{?arg_firewalld} \
5cbc045
           %{?arg_firewalld_zone} \
47ca469
           %{?arg_wireshark} \
b0c05ac
           -Dpm_utils=disabled \
b0c05ac
           -Dnss=enabled \
47ca469
           %{arg_packager} \
47ca469
           %{arg_packager_version} \
b0c05ac
           -Dqemu_user=%{qemu_user} \
b0c05ac
           -Dqemu_group=%{qemu_group} \
b0c05ac
           -Dtls_priority=%{tls_priority} \
11755d8
           %{?enable_werror} \
b0c05ac
           -Dexpensive_tests=enabled \
b0c05ac
           -Dinit_script=systemd \
48941c0
           %{?arg_login_shell}
b0c05ac
b0c05ac
%meson_build
e2b90f9
e2b90f9
%install
a38fb9c
rm -fr %{buildroot}
e2b90f9
a56bcbd
export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
a56bcbd
b0c05ac
%meson_install
350081d
e2b90f9
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
e2b90f9
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
e79d304
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.la
e79d304
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.a
544ad4a
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.la
544ad4a
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.a
a74ea31
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.la
a74ea31
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-backend/*.a
0612313
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.la
0612313
rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/storage-file/*.a
1b8b756
%if %{with_wireshark}
a888673
rm -f $RPM_BUILD_ROOT%{wireshark_plugindir}/libvirt.la
1b8b756
%endif
7a6f075
a160d7f
install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/lib/libvirt/dnsmasq/
7a6f075
# We don't want to install /etc/libvirt/qemu/networks in the main %files list
7a6f075
# because if the admin wants to delete the default network completely, we don't
7a6f075
# want to end up re-incarnating it on every RPM upgrade.
7a6f075
install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/libvirt/networks/
7a6f075
cp $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/default.xml \
7a6f075
   $RPM_BUILD_ROOT%{_datadir}/libvirt/networks/default.xml
c2c89ec
# libvirt saves this file with mode 0600
c2c89ec
chmod 0600 $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/default.xml
b23ff9c
b23ff9c
# nwfilter files are installed in /usr/share/libvirt and copied to /etc in %post
b23ff9c
# to avoid verification errors on changed files in /etc
b23ff9c
install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/libvirt/nwfilter/
b23ff9c
cp -a $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/nwfilter/*.xml \
b23ff9c
    $RPM_BUILD_ROOT%{_datadir}/libvirt/nwfilter/
0612313
# libvirt saves these files with mode 600
0612313
chmod 600 $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/nwfilter/*.xml
b23ff9c
7a6f075
# Strip auto-generated UUID - we need it generated per-install
7a6f075
sed -i -e "/<uuid>/d" $RPM_BUILD_ROOT%{_datadir}/libvirt/networks/default.xml
3cf75c2
%if ! %{with_qemu}
fe09090
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_qemu.aug
fe09090
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
f294b40
%endif
5c1d884
%find_lang %{name}
e2b90f9
544ad4a
%if ! %{with_sanlock}
544ad4a
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirt_sanlock.aug
544ad4a
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
544ad4a
%endif
544ad4a
6383d6b
%if ! %{with_lxc}
6383d6b
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_lxc.aug
6383d6b
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
6383d6b
%endif
6383d6b
f294b40
%if ! %{with_qemu}
f294b40
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu.conf
36cab84
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.qemu
f294b40
%endif
6383d6b
%if ! %{with_lxc}
6383d6b
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/lxc.conf
a160d7f
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.lxc
36cab84
%endif
5f1a422
%if ! %{with_libxl}
5f1a422
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/libxl.conf
c819490
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.libxl
5f1a422
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_libxl.aug
5f1a422
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
5f1a422
%endif
f294b40
8c9e40d
# Copied into libvirt-docs subpackage eventually
c2c89ec
mv $RPM_BUILD_ROOT%{_datadir}/doc/libvirt libvirt-docs
96a520b
47ca469
%ifarch %{power64} s390x x86_64 ia64 alpha sparc64
96b1b18
mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_probes.stp \
96b1b18
   $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_probes-64.stp
0612313
0612313
    %if %{with_qemu}
96b1b18
mv $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp \
96b1b18
   $RPM_BUILD_ROOT%{_datadir}/systemtap/tapset/libvirt_qemu_probes-64.stp
0612313
    %endif
96b1b18
%endif
96b1b18
a160d7f
%check
b0c05ac
VIR_TEST_DEBUG=1 %meson_test --no-suite syntax-check
a160d7f
98cbf39
%post libs
98cbf39
%if 0%{?rhel} == 7
98cbf39
/sbin/ldconfig
98cbf39
%endif
98cbf39
98cbf39
%postun libs
98cbf39
%if 0%{?rhel} == 7
98cbf39
/sbin/ldconfig
98cbf39
%endif
98cbf39
c819490
%pre daemon
c819490
# 'libvirt' group is just to allow password-less polkit access to
c819490
# libvirtd. The uid number is irrelevant, so we use dynamic allocation
c819490
# described at the above link.
c819490
getent group libvirt >/dev/null || groupadd -r libvirt
c819490
c819490
exit 0
c819490
44699dc
%post daemon
e2b90f9
782468f
%systemd_post virtlockd.socket virtlockd-admin.socket
782468f
%systemd_post virtlogd.socket virtlogd-admin.socket
7d77bf7
%systemd_post libvirtd.socket libvirtd-ro.socket libvirtd-admin.socket
7d77bf7
%systemd_post libvirtd-tcp.socket libvirtd-tls.socket
782468f
%systemd_post libvirtd.service
7a6f075
89c3fa7
# request daemon restart in posttrans
89c3fa7
mkdir -p %{_localstatedir}/lib/rpm-state/libvirt || :
89c3fa7
touch %{_localstatedir}/lib/rpm-state/libvirt/restart || :
89c3fa7
44699dc
%preun daemon
782468f
%systemd_preun libvirtd.service
7d77bf7
%systemd_preun libvirtd-tcp.socket libvirtd-tls.socket
7d77bf7
%systemd_preun libvirtd.socket libvirtd-ro.socket libvirtd-admin.socket
782468f
%systemd_preun virtlogd.socket virtlogd-admin.socket virtlogd.service
782468f
%systemd_preun virtlockd.socket virtlockd-admin.socket virtlockd.service
7069f75
44699dc
%postun daemon
7069f75
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
7069f75
if [ $1 -ge 1 ] ; then
65efaaf
    /bin/systemctl reload-or-try-restart virtlockd.service >/dev/null 2>&1 || :
4a9c74e
    /bin/systemctl reload-or-try-restart virtlogd.service >/dev/null 2>&1 || :
7069f75
fi
65efaaf
4a9c74e
# In upgrade scenario we must explicitly enable virtlockd/virtlogd
4a9c74e
# sockets, if libvirtd is already enabled and start them if
4a9c74e
# libvirtd is running, otherwise you'll get failures to start
4a9c74e
# guests
4a9c74e
%triggerpostun daemon -- libvirt-daemon < 1.3.0
4a9c74e
if [ $1 -ge 1 ] ; then
48941c0
    /bin/systemctl is-enabled libvirtd.service 1>/dev/null 2>&1 &&
48941c0
        /bin/systemctl enable virtlogd.socket virtlogd-admin.socket || :
48941c0
    /bin/systemctl is-active libvirtd.service 1>/dev/null 2>&1 &&
48941c0
        /bin/systemctl start virtlogd.socket virtlogd-admin.socket || :
4a9c74e
fi
4a9c74e
89c3fa7
%posttrans daemon
89c3fa7
if [ -f %{_localstatedir}/lib/rpm-state/libvirt/restart ]; then
afe8184
    # See if user has previously modified their install to
afe8184
    # tell libvirtd to use --listen
afe8184
    grep -E '^LIBVIRTD_ARGS=.*--listen' /etc/sysconfig/libvirtd 1>/dev/null 2>&1
afe8184
    if test $? = 0
afe8184
    then
afe8184
        # Then lets keep honouring --listen and *not* use
afe8184
        # systemd socket activation, because switching things
afe8184
        # might confuse mgmt tool like puppet/ansible that
afe8184
        # expect the old style libvirtd
afe8184
        /bin/systemctl mask libvirtd.socket >/dev/null 2>&1 || :
afe8184
        /bin/systemctl mask libvirtd-ro.socket >/dev/null 2>&1 || :
afe8184
        /bin/systemctl mask libvirtd-admin.socket >/dev/null 2>&1 || :
afe8184
        /bin/systemctl mask libvirtd-tls.socket >/dev/null 2>&1 || :
afe8184
        /bin/systemctl mask libvirtd-tcp.socket >/dev/null 2>&1 || :
afe8184
    else
afe8184
        # Old libvirtd owns the sockets and will delete them on
afe8184
        # shutdown. Can't use a try-restart as libvirtd will simply
afe8184
        # own the sockets again when it comes back up. Thus we must
afe8184
        # do this particular ordering, so that we get libvirtd
afe8184
        # running with socket activation in use
afe8184
        /bin/systemctl is-active libvirtd.service 1>/dev/null 2>&1
afe8184
        if test $? = 0
afe8184
        then
afe8184
            /bin/systemctl stop libvirtd.service >/dev/null 2>&1 || :
afe8184
afe8184
            /bin/systemctl try-restart libvirtd.socket >/dev/null 2>&1 || :
afe8184
            /bin/systemctl try-restart libvirtd-ro.socket >/dev/null 2>&1 || :
afe8184
            /bin/systemctl try-restart libvirtd-admin.socket >/dev/null 2>&1 || :
afe8184
afe8184
            /bin/systemctl start libvirtd.service >/dev/null 2>&1 || :
afe8184
        fi
7d77bf7
    fi
89c3fa7
fi
89c3fa7
rm -rf %{_localstatedir}/lib/rpm-state/libvirt || :
89c3fa7
5cbc045
%post daemon-driver-network
15ca09e
%if %{with_firewalld_zone}
5cbc045
    %firewalld_reload
5cbc045
%endif
5cbc045
5cbc045
%postun daemon-driver-network
15ca09e
%if %{with_firewalld_zone}
5cbc045
    %firewalld_reload
5cbc045
%endif
5cbc045
44699dc
%post daemon-config-network
44699dc
if test $1 -eq 1 && test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml ; then
a540751
    # see if the network used by default network creates a conflict,
a540751
    # and try to resolve it
a540751
    # NB: 192.168.122.0/24 is used in the default.xml template file;
a540751
    # do not modify any of those values here without also modifying
a540751
    # them in the template.
a540751
    orig_sub=122
a540751
    sub=${orig_sub}
a540751
    nl='
a540751
'
a540751
    routes="${nl}$(ip route show | cut -d' ' -f1)${nl}"
a540751
    case ${routes} in
a540751
      *"${nl}192.168.${orig_sub}.0/24${nl}"*)
a540751
        # there was a match, so we need to look for an unused subnet
a540751
        for new_sub in $(seq 124 254); do
a540751
          case ${routes} in
a540751
          *"${nl}192.168.${new_sub}.0/24${nl}"*)
a540751
            ;;
a540751
          *)
a540751
            sub=$new_sub
a540751
            break;
a540751
            ;;
a540751
          esac
a540751
        done
a540751
        ;;
a540751
      *)
a540751
        ;;
a540751
    esac
a540751
44699dc
    UUID=`/usr/bin/uuidgen`
a540751
    sed -e "s/${orig_sub}/${sub}/g" \
a540751
        -e "s,</name>,</name>\n  <uuid>$UUID</uuid>," \
44699dc
         < %{_datadir}/libvirt/networks/default.xml \
44699dc
         > %{_sysconfdir}/libvirt/qemu/networks/default.xml
44699dc
    ln -s ../default.xml %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
c2c89ec
    # libvirt saves this file with mode 0600
c2c89ec
    chmod 0600 %{_sysconfdir}/libvirt/qemu/networks/default.xml
611b2ee
611b2ee
    # Make sure libvirt picks up the new network defininiton
89c3fa7
    mkdir -p %{_localstatedir}/lib/rpm-state/libvirt || :
89c3fa7
    touch %{_localstatedir}/lib/rpm-state/libvirt/restart || :
89c3fa7
fi
89c3fa7
89c3fa7
%posttrans daemon-config-network
89c3fa7
if [ -f %{_localstatedir}/lib/rpm-state/libvirt/restart ]; then
89c3fa7
    /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
44699dc
fi
89c3fa7
rm -rf %{_localstatedir}/lib/rpm-state/libvirt || :
b23ff9c
b23ff9c
%post daemon-config-nwfilter
b23ff9c
cp %{_datadir}/libvirt/nwfilter/*.xml %{_sysconfdir}/libvirt/nwfilter/
c2c89ec
# libvirt saves these files with mode 600
c2c89ec
chmod 600 %{_sysconfdir}/libvirt/nwfilter/*.xml
b23ff9c
# Make sure libvirt picks up the new nwfilter defininitons
89c3fa7
mkdir -p %{_localstatedir}/lib/rpm-state/libvirt || :
89c3fa7
touch %{_localstatedir}/lib/rpm-state/libvirt/restart || :
89c3fa7
89c3fa7
%posttrans daemon-config-nwfilter
89c3fa7
if [ -f %{_localstatedir}/lib/rpm-state/libvirt/restart ]; then
89c3fa7
    /bin/systemctl try-restart libvirtd.service >/dev/null 2>&1 || :
89c3fa7
fi
89c3fa7
rm -rf %{_localstatedir}/lib/rpm-state/libvirt || :
b23ff9c
b23ff9c
47ca469
%if %{with_qemu}
65efaaf
%pre daemon-driver-qemu
65efaaf
# We want soft static allocation of well-known ids, as disk images
65efaaf
# are commonly shared across NFS mounts by id rather than name; see
65efaaf
# https://fedoraproject.org/wiki/Packaging:UsersAndGroups
65efaaf
getent group kvm >/dev/null || groupadd -f -g 36 -r kvm
65efaaf
getent group qemu >/dev/null || groupadd -f -g 107 -r qemu
65efaaf
if ! getent passwd qemu >/dev/null; then
65efaaf
  if ! getent passwd 107 >/dev/null; then
65efaaf
    useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin -c "qemu user" qemu
65efaaf
  else
65efaaf
    useradd -r -g qemu -G kvm -d / -s /sbin/nologin -c "qemu user" qemu
65efaaf
  fi
65efaaf
fi
65efaaf
exit 0
47ca469
%endif
7a6f075
7e99819
%preun client
98cbf39
782468f
%systemd_preun libvirt-guests.service
7e99819
7e99819
%post client
782468f
%systemd_post libvirt-guests.service
854b878
d3109ab
%postun client
782468f
%systemd_postun libvirt-guests.service
782468f
8c9e40d
%if %{with_lxc}
8c9e40d
%pre login-shell
8c9e40d
getent group virtlogin >/dev/null || groupadd -r virtlogin
8c9e40d
exit 0
8c9e40d
%endif
8c9e40d
6253f97
%files
37ddbd0
44699dc
%files docs
b0c05ac
%doc AUTHORS NEWS.rst README.rst
b0c05ac
%doc libvirt-docs/*
44699dc
44699dc
%files daemon
44699dc
7a6f075
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/
f294b40
7069f75
%{_unitdir}/libvirtd.service
7d77bf7
%{_unitdir}/libvirtd.socket
7d77bf7
%{_unitdir}/libvirtd-ro.socket
7d77bf7
%{_unitdir}/libvirtd-admin.socket
7d77bf7
%{_unitdir}/libvirtd-tcp.socket
7d77bf7
%{_unitdir}/libvirtd-tls.socket
afe8184
%{_unitdir}/virtproxyd.service
afe8184
%{_unitdir}/virtproxyd.socket
afe8184
%{_unitdir}/virtproxyd-ro.socket
afe8184
%{_unitdir}/virtproxyd-admin.socket
afe8184
%{_unitdir}/virtproxyd-tcp.socket
afe8184
%{_unitdir}/virtproxyd-tls.socket
0b1a013
%{_unitdir}/virt-guest-shutdown.target
4a9c74e
%{_unitdir}/virtlogd.service
4a9c74e
%{_unitdir}/virtlogd.socket
48941c0
%{_unitdir}/virtlogd-admin.socket
f5ff4a2
%{_unitdir}/virtlockd.service
f5ff4a2
%{_unitdir}/virtlockd.socket
48941c0
%{_unitdir}/virtlockd-admin.socket
c70baa5
%config(noreplace) %{_sysconfdir}/sysconfig/libvirtd
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtproxyd
4a9c74e
%config(noreplace) %{_sysconfdir}/sysconfig/virtlogd
f5ff4a2
%config(noreplace) %{_sysconfdir}/sysconfig/virtlockd
fdd7e87
%config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtproxyd.conf
4a9c74e
%config(noreplace) %{_sysconfdir}/libvirt/virtlogd.conf
11755d8
%config(noreplace) %{_sysconfdir}/libvirt/virtlockd.conf
f57ce74
%config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf
5f1a422
%config(noreplace) %{_prefix}/lib/sysctl.d/60-libvirtd.conf
f294b40
ed6c49f
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd
7a6f075
%dir %{_datadir}/libvirt/
3cf75c2
afe8184
%ghost %dir %{_rundir}/libvirt/
958f1c3
66df925
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/images/
8c8aca2
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/filesystems/
743adff
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/boot/
db03f03
%dir %attr(0711, root, root) %{_localstatedir}/cache/libvirt/
f294b40
958f1c3
051644f
%dir %attr(0755, root, root) %{_libdir}/libvirt/
051644f
%dir %attr(0755, root, root) %{_libdir}/libvirt/connection-driver/
f5ff4a2
%dir %attr(0755, root, root) %{_libdir}/libvirt/lock-driver
f5ff4a2
%attr(0755, root, root) %{_libdir}/libvirt/lock-driver/lockd.so
f5ff4a2
f294b40
%{_datadir}/augeas/lenses/libvirtd.aug
f294b40
%{_datadir}/augeas/lenses/tests/test_libvirtd.aug
4a9c74e
%{_datadir}/augeas/lenses/virtlogd.aug
4a9c74e
%{_datadir}/augeas/lenses/tests/test_virtlogd.aug
11755d8
%{_datadir}/augeas/lenses/virtlockd.aug
11755d8
%{_datadir}/augeas/lenses/tests/test_virtlockd.aug
afe8184
%{_datadir}/augeas/lenses/virtproxyd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtproxyd.aug
f5ff4a2
%{_datadir}/augeas/lenses/libvirt_lockd.aug
47ca469
%if %{with_qemu}
f5ff4a2
%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug
47ca469
%endif
f294b40
c476c8b
%{_datadir}/polkit-1/actions/org.libvirt.unix.policy
000a327
%{_datadir}/polkit-1/actions/org.libvirt.api.policy
c819490
%{_datadir}/polkit-1/rules.d/50-libvirt.rules
f294b40
c80b7f0
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/
f294b40
ed6c49f
%attr(0755, root, root) %{_libexecdir}/libvirt_iohelper
11755d8
c70baa5
%attr(0755, root, root) %{_sbindir}/libvirtd
afe8184
%attr(0755, root, root) %{_sbindir}/virtproxyd
4a9c74e
%attr(0755, root, root) %{_sbindir}/virtlogd
f5ff4a2
%attr(0755, root, root) %{_sbindir}/virtlockd
f294b40
e8394ab
%{_mandir}/man8/libvirtd.8*
4a9c74e
%{_mandir}/man8/virtlogd.8*
11755d8
%{_mandir}/man8/virtlockd.8*
b23ff9c
%{_mandir}/man7/virkey*.7*
e2b90f9
44699dc
%files daemon-config-network
0223d5a
%dir %{_datadir}/libvirt/networks/
0223d5a
%{_datadir}/libvirt/networks/default.xml
c2c89ec
%ghost %{_sysconfdir}/libvirt/qemu/networks/default.xml
c2c89ec
%ghost %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
96a520b
44699dc
%files daemon-config-nwfilter
b23ff9c
%dir %{_datadir}/libvirt/nwfilter/
b23ff9c
%{_datadir}/libvirt/nwfilter/*.xml
b23ff9c
%ghost %{_sysconfdir}/libvirt/nwfilter/*.xml
e6d9787
544ad4a
%files daemon-driver-interface
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtinterfaced
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtinterfaced.conf
afe8184
%{_datadir}/augeas/lenses/virtinterfaced.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtinterfaced.aug
afe8184
%{_unitdir}/virtinterfaced.service
afe8184
%{_unitdir}/virtinterfaced.socket
afe8184
%{_unitdir}/virtinterfaced-ro.socket
afe8184
%{_unitdir}/virtinterfaced-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtinterfaced
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_interface.so
544ad4a
544ad4a
%files daemon-driver-network
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtnetworkd
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtnetworkd.conf
afe8184
%{_datadir}/augeas/lenses/virtnetworkd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtnetworkd.aug
afe8184
%{_unitdir}/virtnetworkd.service
afe8184
%{_unitdir}/virtnetworkd.socket
afe8184
%{_unitdir}/virtnetworkd-ro.socket
afe8184
%{_unitdir}/virtnetworkd-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtnetworkd
65efaaf
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
65efaaf
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
65efaaf
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
afe8184
%ghost %dir %{_rundir}/libvirt/network/
65efaaf
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/network/
65efaaf
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/dnsmasq/
f7f5099
%attr(0755, root, root) %{_libexecdir}/libvirt_leaseshelper
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_network.so
544ad4a
5cbc045
%if %{with_firewalld_zone}
5cbc045
%{_prefix}/lib/firewalld/zones/libvirt.xml
5cbc045
%endif
5cbc045
544ad4a
%files daemon-driver-nodedev
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtnodedevd
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtnodedevd.conf
afe8184
%{_datadir}/augeas/lenses/virtnodedevd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtnodedevd.aug
afe8184
%{_unitdir}/virtnodedevd.service
afe8184
%{_unitdir}/virtnodedevd.socket
afe8184
%{_unitdir}/virtnodedevd-ro.socket
afe8184
%{_unitdir}/virtnodedevd-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtnodedevd
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_nodedev.so
544ad4a
544ad4a
%files daemon-driver-nwfilter
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtnwfilterd
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtnwfilterd.conf
afe8184
%{_datadir}/augeas/lenses/virtnwfilterd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtnwfilterd.aug
afe8184
%{_unitdir}/virtnwfilterd.service
afe8184
%{_unitdir}/virtnwfilterd.socket
afe8184
%{_unitdir}/virtnwfilterd-ro.socket
afe8184
%{_unitdir}/virtnwfilterd-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtnwfilterd
0223d5a
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/nwfilter/
afe8184
%ghost %dir %{_rundir}/libvirt/network/
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_nwfilter.so
544ad4a
544ad4a
%files daemon-driver-secret
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtsecretd
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtsecretd.conf
afe8184
%{_datadir}/augeas/lenses/virtsecretd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtsecretd.aug
afe8184
%{_unitdir}/virtsecretd.service
afe8184
%{_unitdir}/virtsecretd.socket
afe8184
%{_unitdir}/virtsecretd-ro.socket
afe8184
%{_unitdir}/virtsecretd-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtsecretd
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_secret.so
544ad4a
544ad4a
%files daemon-driver-storage
a74ea31
a74ea31
%files daemon-driver-storage-core
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtstoraged
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtstoraged.conf
afe8184
%{_datadir}/augeas/lenses/virtstoraged.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtstoraged.aug
afe8184
%{_unitdir}/virtstoraged.service
afe8184
%{_unitdir}/virtstoraged.socket
afe8184
%{_unitdir}/virtstoraged-ro.socket
afe8184
%{_unitdir}/virtstoraged-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtstoraged
65efaaf
%attr(0755, root, root) %{_libexecdir}/libvirt_parthelper
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_storage.so
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_fs.so
0612313
%{_libdir}/%{name}/storage-file/libvirt_storage_file_fs.so
a74ea31
a74ea31
%files daemon-driver-storage-disk
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_disk.so
a74ea31
a74ea31
%files daemon-driver-storage-logical
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_logical.so
a74ea31
a74ea31
%files daemon-driver-storage-scsi
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_scsi.so
a74ea31
a74ea31
%files daemon-driver-storage-iscsi
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_iscsi.so
a74ea31
e5fa1c0
%if %{with_storage_iscsi_direct}
e5fa1c0
%files daemon-driver-storage-iscsi-direct
e5fa1c0
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_iscsi-direct.so
e5fa1c0
%endif
e5fa1c0
a74ea31
%files daemon-driver-storage-mpath
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_mpath.so
a74ea31
a74ea31
%if %{with_storage_gluster}
a74ea31
%files daemon-driver-storage-gluster
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_gluster.so
0612313
%{_libdir}/%{name}/storage-file/libvirt_storage_file_gluster.so
a74ea31
%endif
a74ea31
a74ea31
%if %{with_storage_rbd}
a74ea31
%files daemon-driver-storage-rbd
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_rbd.so
a74ea31
%endif
a74ea31
a74ea31
%if %{with_storage_sheepdog}
a74ea31
%files daemon-driver-storage-sheepdog
a74ea31
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_sheepdog.so
a74ea31
%endif
544ad4a
7335ede
%if %{with_storage_zfs}
7335ede
%files daemon-driver-storage-zfs
7335ede
%{_libdir}/%{name}/storage-backend/libvirt_storage_backend_zfs.so
7335ede
%endif
7335ede
47ca469
%if %{with_qemu}
544ad4a
%files daemon-driver-qemu
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtqemud
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtqemud.conf
afe8184
%{_datadir}/augeas/lenses/virtqemud.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtqemud.aug
afe8184
%{_unitdir}/virtqemud.service
afe8184
%{_unitdir}/virtqemud.socket
afe8184
%{_unitdir}/virtqemud-ro.socket
afe8184
%{_unitdir}/virtqemud-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtqemud
0223d5a
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
65efaaf
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/qemu/
65efaaf
%config(noreplace) %{_sysconfdir}/libvirt/qemu.conf
65efaaf
%config(noreplace) %{_sysconfdir}/libvirt/qemu-lockd.conf
65efaaf
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.qemu
afe8184
%ghost %dir %{_rundir}/libvirt/qemu/
93cadb0
%dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/libvirt/qemu/
65efaaf
%dir %attr(0750, %{qemu_user}, %{qemu_group}) %{_localstatedir}/cache/libvirt/qemu/
65efaaf
%{_datadir}/augeas/lenses/libvirtd_qemu.aug
65efaaf
%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_qemu.so
f57ce74
%dir %attr(0711, root, root) %{_localstatedir}/lib/libvirt/swtpm/
f57ce74
%dir %attr(0711, root, root) %{_localstatedir}/log/swtpm/libvirt/qemu/
dd36989
%{_bindir}/virt-qemu-run
dd36989
%{_mandir}/man1/virt-qemu-run.1*
47ca469
%endif
544ad4a
47ca469
%if %{with_lxc}
544ad4a
%files daemon-driver-lxc
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtlxcd
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtlxcd.conf
afe8184
%{_datadir}/augeas/lenses/virtlxcd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtlxcd.aug
afe8184
%{_unitdir}/virtlxcd.service
afe8184
%{_unitdir}/virtlxcd.socket
afe8184
%{_unitdir}/virtlxcd-ro.socket
afe8184
%{_unitdir}/virtlxcd-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtlxcd
65efaaf
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/lxc/
65efaaf
%config(noreplace) %{_sysconfdir}/libvirt/lxc.conf
65efaaf
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.lxc
afe8184
%ghost %dir %{_rundir}/libvirt/lxc/
65efaaf
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/lxc/
65efaaf
%{_datadir}/augeas/lenses/libvirtd_lxc.aug
65efaaf
%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
65efaaf
%attr(0755, root, root) %{_libexecdir}/libvirt_lxc
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_lxc.so
47ca469
%endif
544ad4a
47ca469
%if %{with_libxl}
544ad4a
%files daemon-driver-libxl
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtxend
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtxend.conf
afe8184
%{_datadir}/augeas/lenses/virtxend.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtxend.aug
afe8184
%{_unitdir}/virtxend.service
afe8184
%{_unitdir}/virtxend.socket
afe8184
%{_unitdir}/virtxend-ro.socket
afe8184
%{_unitdir}/virtxend-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtxend
5f1a422
%config(noreplace) %{_sysconfdir}/libvirt/libxl.conf
c819490
%config(noreplace) %{_sysconfdir}/logrotate.d/libvirtd.libxl
5f1a422
%config(noreplace) %{_sysconfdir}/libvirt/libxl-lockd.conf
5f1a422
%{_datadir}/augeas/lenses/libvirtd_libxl.aug
5f1a422
%{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
65efaaf
%dir %attr(0700, root, root) %{_localstatedir}/log/libvirt/libxl/
afe8184
%ghost %dir %{_rundir}/libvirt/libxl/
65efaaf
%dir %attr(0700, root, root) %{_localstatedir}/lib/libvirt/libxl/
544ad4a
%{_libdir}/%{name}/connection-driver/libvirt_driver_libxl.so
47ca469
%endif
e80c83a
47ca469
%if %{with_vbox}
e80c83a
%files daemon-driver-vbox
4a7cc74
%config(noreplace) %{_sysconfdir}/sysconfig/virtvboxd
afe8184
%config(noreplace) %{_sysconfdir}/libvirt/virtvboxd.conf
afe8184
%{_datadir}/augeas/lenses/virtvboxd.aug
afe8184
%{_datadir}/augeas/lenses/tests/test_virtvboxd.aug
afe8184
%{_unitdir}/virtvboxd.service
afe8184
%{_unitdir}/virtvboxd.socket
afe8184
%{_unitdir}/virtvboxd-ro.socket
afe8184
%{_unitdir}/virtvboxd-admin.socket
afe8184
%attr(0755, root, root) %{_sbindir}/virtvboxd
e80c83a
%{_libdir}/%{name}/connection-driver/libvirt_driver_vbox.so
47ca469
%endif
544ad4a
47ca469
%if %{with_qemu_tcg}
e6d9787
%files daemon-qemu
47ca469
%endif
e6d9787
47ca469
%if %{with_qemu_kvm}
e6d9787
%files daemon-kvm
47ca469
%endif
e6d9787
47ca469
%if %{with_lxc}
e6d9787
%files daemon-lxc
47ca469
%endif
e6d9787
4fd635e
%if %{with_libxl}
e6d9787
%files daemon-xen
47ca469
%endif
e80c83a
47ca469
%if %{with_vbox}
e80c83a
%files daemon-vbox
47ca469
%endif
96a520b
e79d304
%if %{with_sanlock}
e79d304
%files lock-sanlock
350081d
    %if %{with_qemu}
d7b4121
%config(noreplace) %{_sysconfdir}/libvirt/qemu-sanlock.conf
350081d
    %endif
ee3bf37
    %if %{with_libxl}
ee3bf37
%config(noreplace) %{_sysconfdir}/libvirt/libxl-sanlock.conf
ee3bf37
    %endif
e79d304
%attr(0755, root, root) %{_libdir}/libvirt/lock-driver/sanlock.so
d7b4121
%{_datadir}/augeas/lenses/libvirt_sanlock.aug
d7b4121
%{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
c2c89ec
%dir %attr(0770, root, sanlock) %{_localstatedir}/lib/libvirt/sanlock
d7b4121
%{_sbindir}/virt-sanlock-cleanup
d7b4121
%{_mandir}/man8/virt-sanlock-cleanup.8*
8cc5083
%attr(0755, root, root) %{_libexecdir}/libvirt_sanlock_helper
e79d304
%endif
e79d304
b1ac7b5
%files client
a3e1cc3
%{_mandir}/man1/virsh.1*
a3e1cc3
%{_mandir}/man1/virt-xml-validate.1*
6383d6b
%{_mandir}/man1/virt-pki-validate.1*
e9c1d3f
%{_mandir}/man1/virt-host-validate.1*
a3e1cc3
%{_bindir}/virsh
a3e1cc3
%{_bindir}/virt-xml-validate
6383d6b
%{_bindir}/virt-pki-validate
e9c1d3f
%{_bindir}/virt-host-validate
a3e1cc3
96b1b18
%{_datadir}/systemtap/tapset/libvirt_probes*.stp
6763b26
%{_datadir}/systemtap/tapset/libvirt_functions.stp
0612313
%if %{with_qemu}
0612313
%{_datadir}/systemtap/tapset/libvirt_qemu_probes*.stp
0612313
%endif
6763b26
0ca715c
%if %{with_bash_completion}
48941c0
%{_datadir}/bash-completion/completions/virsh
0ca715c
%endif
0ca715c
b1ac7b5
b1ac7b5
%{_unitdir}/libvirt-guests.service
b1ac7b5
%config(noreplace) %{_sysconfdir}/sysconfig/libvirt-guests
b1ac7b5
%attr(0755, root, root) %{_libexecdir}/libvirt-guests.sh
b1ac7b5
b0c05ac
%files libs -f %{name}.lang
051644f
%license COPYING COPYING.LESSER
b1ac7b5
%config(noreplace) %{_sysconfdir}/libvirt/libvirt.conf
b1ac7b5
%config(noreplace) %{_sysconfdir}/libvirt/libvirt-admin.conf
b1ac7b5
%{_libdir}/libvirt.so.*
b1ac7b5
%{_libdir}/libvirt-qemu.so.*
b1ac7b5
%{_libdir}/libvirt-lxc.so.*
b1ac7b5
%{_libdir}/libvirt-admin.so.*
a3e1cc3
%dir %{_datadir}/libvirt/
a3e1cc3
%dir %{_datadir}/libvirt/schemas/
b1ac7b5
%dir %attr(0755, root, root) %{_localstatedir}/lib/libvirt/
a3e1cc3
a6831c2
%{_datadir}/libvirt/schemas/basictypes.rng
a6831c2
%{_datadir}/libvirt/schemas/capability.rng
67cfa34
%{_datadir}/libvirt/schemas/cputypes.rng
a3e1cc3
%{_datadir}/libvirt/schemas/domain.rng
79accd5
%{_datadir}/libvirt/schemas/domainbackup.rng
9f9eae3
%{_datadir}/libvirt/schemas/domaincaps.rng
7d77bf7
%{_datadir}/libvirt/schemas/domaincheckpoint.rng
a6831c2
%{_datadir}/libvirt/schemas/domaincommon.rng
7e99819
%{_datadir}/libvirt/schemas/domainsnapshot.rng
a6831c2
%{_datadir}/libvirt/schemas/interface.rng
a3e1cc3
%{_datadir}/libvirt/schemas/network.rng
a6831c2
%{_datadir}/libvirt/schemas/networkcommon.rng
d964be0
%{_datadir}/libvirt/schemas/networkport.rng
a3e1cc3
%{_datadir}/libvirt/schemas/nodedev.rng
a6831c2
%{_datadir}/libvirt/schemas/nwfilter.rng
f57ce74
%{_datadir}/libvirt/schemas/nwfilter_params.rng
f57ce74
%{_datadir}/libvirt/schemas/nwfilterbinding.rng
e4bf8ff
%{_datadir}/libvirt/schemas/secret.rng
f40b464
%{_datadir}/libvirt/schemas/storagecommon.rng
a6831c2
%{_datadir}/libvirt/schemas/storagepool.rng
98cbf39
%{_datadir}/libvirt/schemas/storagepoolcaps.rng
a6831c2
%{_datadir}/libvirt/schemas/storagevol.rng
a3e1cc3
e5fa1c0
%{_datadir}/libvirt/cpu_map/*.xml
4717aa0
2c49d1f
%{_datadir}/libvirt/test-screenshot.png
2c49d1f
b1ac7b5
%files admin
b1ac7b5
%{_mandir}/man1/virt-admin.1*
b1ac7b5
%{_bindir}/virt-admin
48941c0
%if %{with_bash_completion}
48941c0
%{_datadir}/bash-completion/completions/virt-admin
48941c0
%endif
b1ac7b5
48941c0
%if %{with_bash_completion}
48941c0
%files bash-completion
48941c0
%{_datadir}/bash-completion/completions/vsh
48941c0
%endif
b1ac7b5
1b8b756
%if %{with_wireshark}
1b8b756
%files wireshark
a888673
%{wireshark_plugindir}/libvirt.so
1b8b756
%endif
1b8b756
0debbff
%files nss
0debbff
%{_libdir}/libnss_libvirt.so.2
2c49d1f
%{_libdir}/libnss_libvirt_guest.so.2
0debbff
c5c28ba
%if %{with_lxc}
c5c28ba
%files login-shell
8c9e40d
%attr(4750, root, virtlogin) %{_bindir}/virt-login-shell
afe8184
%{_libexecdir}/virt-login-shell-helper
c5c28ba
%config(noreplace) %{_sysconfdir}/libvirt/virt-login-shell.conf
c5c28ba
%{_mandir}/man1/virt-login-shell.1*
c5c28ba
%endif
c5c28ba
e2b90f9
%files devel
f7f5099
%{_libdir}/libvirt.so
a4bf276
%{_libdir}/libvirt-admin.so
f7f5099
%{_libdir}/libvirt-qemu.so
f7f5099
%{_libdir}/libvirt-lxc.so
deefad7
%dir %{_includedir}/libvirt
f7f5099
%{_includedir}/libvirt/virterror.h
f7f5099
%{_includedir}/libvirt/libvirt.h
a4bf276
%{_includedir}/libvirt/libvirt-admin.h
4a9c74e
%{_includedir}/libvirt/libvirt-common.h
e63e204
%{_includedir}/libvirt/libvirt-domain.h
7d77bf7
%{_includedir}/libvirt/libvirt-domain-checkpoint.h
e63e204
%{_includedir}/libvirt/libvirt-domain-snapshot.h
e63e204
%{_includedir}/libvirt/libvirt-event.h
e63e204
%{_includedir}/libvirt/libvirt-host.h
e63e204
%{_includedir}/libvirt/libvirt-interface.h
e63e204
%{_includedir}/libvirt/libvirt-network.h
e63e204
%{_includedir}/libvirt/libvirt-nodedev.h
e63e204
%{_includedir}/libvirt/libvirt-nwfilter.h
e63e204
%{_includedir}/libvirt/libvirt-secret.h
e63e204
%{_includedir}/libvirt/libvirt-storage.h
e63e204
%{_includedir}/libvirt/libvirt-stream.h
f7f5099
%{_includedir}/libvirt/libvirt-qemu.h
f7f5099
%{_includedir}/libvirt/libvirt-lxc.h
e2b90f9
%{_libdir}/pkgconfig/libvirt.pc
a4bf276
%{_libdir}/pkgconfig/libvirt-admin.pc
f7f5099
%{_libdir}/pkgconfig/libvirt-qemu.pc
f7f5099
%{_libdir}/pkgconfig/libvirt-lxc.pc
e2b90f9
6398d1c
%dir %{_datadir}/libvirt/api/
6398d1c
%{_datadir}/libvirt/api/libvirt-api.xml
a4bf276
%{_datadir}/libvirt/api/libvirt-admin-api.xml
6398d1c
%{_datadir}/libvirt/api/libvirt-qemu-api.xml
350081d
%{_datadir}/libvirt/api/libvirt-lxc-api.xml
611b2ee
e2b90f9
e2b90f9
%changelog
b94fb6a
* Fri Sep  4 2020 Daniel P. Berrangé <berrange@redhat.com> - 6.7.0-2
b94fb6a
- Fix QEMU start when KVM is not loaded (rhbz#1875327)
b94fb6a
b0c05ac
* Tue Sep 01 2020 Cole Robinson <crobinso@redhat.com> - 6.7.0-1
b0c05ac
- Update to version 6.7.0
b0c05ac
15c305c
* Fri Aug 21 2020 Merlin Mathesius <mmathesi@redhat.com> - 6.6.0-3
15c305c
- Fix so no platforms depend upon ceph for 32-bit architectures
15c305c
- Include upstream patches to fix GCC 10 warnings
15c305c
bc1b3e5
* Fri Aug 21 2020 Daniel P. Berrangé <berrange@redhat.com> - 6.6.0-2
bc1b3e5
- Fix creation of pools on non-btrfs (rhbz#1870197)
bc1b3e5
fecc029
* Tue Aug 04 2020 Cole Robinson <crobinso@redhat.com> - 6.6.0-1
fecc029
- Update to version 6.6.0
fecc029
5a45cb7
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.0-2
5a45cb7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
5a45cb7
2126953
* Fri Jul 03 2020 Cole Robinson <crobinso@redhat.com> - 6.5.0-1
2126953
- Update to version 6.5.0
2126953
fc18e98
* Tue Jun 02 2020 Cole Robinson <crobinso@redhat.com> - 6.4.0-1
fc18e98
- Update to version 6.4.0
fc18e98
4a7cc74
* Tue May 05 2020 Cole Robinson <crobinso@redhat.com> - 6.3.0-1
4a7cc74
- Update to version 6.3.0
4a7cc74
4398397
* Thu Apr 02 2020 Cole Robinson <crobinso@redhat.com> - 6.2.0-1
4398397
- Update to version 6.2.0
4398397
401f908
* Tue Mar 24 2020 Felipe Borges <feborges@redhat.com> - 6.1.0-2
401f908
- Check for disk type correctly in virDomainDiskTranslateSourcePool
401f908
dd36989
* Wed Mar 04 2020 Cole Robinson <crobinso@redhat.com> - 6.1.0-1
dd36989
- Update to version 6.1.0
dd36989
3df4900
* Tue Feb 25 2020 Cole Robinson <crobinso@redhat.com> - 6.0.0-3
3df4900
- Rebuild for libiscsi soname bump
3df4900
1bf0aed
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-2
1bf0aed
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
1bf0aed
79accd5
* Wed Jan 15 2020 Cole Robinson <crobinso@redhat.com> - 6.0.0-1
79accd5
- Update to version 6.0.0
79accd5
422d548
* Thu Dec 19 2019 Adam Williamson <awilliam@redhat.com> - 5.10.0-2
422d548
- Rebuild for new xen-libs
422d548
4d15e56
* Tue Dec 03 2019 Cole Robinson <crobinso@redhat.com> - 5.10.0-1
4d15e56
- Update to version 5.10.0
4d15e56
8693111
* Mon Nov 11 2019 Cole Robinson <crobinso@redhat.com> - 5.9.0-1
8693111
- Update to version 5.9.0
8693111
8461a52
* Mon Oct 07 2019 Cole Robinson <crobinso@redhat.com> - 5.8.0-1
8461a52
- Update to version 5.8.0
8461a52
511e2c5
* Thu Sep 26 2019 Cole Robinson <crobinso@redhat.com> - 5.7.0-3
511e2c5
- Fix VM startup when legacy cgroups are defined (bz #1612383)
511e2c5
749dc3d
* Fri Sep 20 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.7.0-2
749dc3d
- Fix systemd socket activation with TLS socket
749dc3d
afe8184
* Tue Sep 03 2019 Cole Robinson <crobinso@redhat.com> - 5.7.0-1
afe8184
- Update to version 5.7.0
afe8184
7d77bf7
* Tue Aug 06 2019 Cole Robinson <crobinso@redhat.com> - 5.6.0-1
7d77bf7
- Update to version 5.6.0
7d77bf7
7f0f1b8
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.5.0-2
7f0f1b8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
7f0f1b8
d964be0
* Wed Jul 03 2019 Cole Robinson <crobinso@redhat.com> - 5.5.0-1
d964be0
- Rebased to version 5.5.0
d964be0
a2479f5
* Thu Jun 20 2019 Cole Robinson <crobinso@redhat.com> - 5.4.0-2
a2479f5
- CVE-2019-10161: arbitrary file read/exec via virDomainSaveImageGetXMLDesc
a2479f5
  API (bz #1722463, bz #1720115)
a2479f5
- CVE-2019-10166: virDomainManagedSaveDefineXML API exposed to readonly
a2479f5
  clients (bz #1722462, bz #1720114)
a2479f5
- CVE-2019-10167: arbitrary command execution via
a2479f5
  virConnectGetDomainCapabilities API (bz #1722464, bz #1720117)
a2479f5
- CVE-2019-10168: arbitrary command execution via
a2479f5
  virConnectBaselineHypervisorCPU and virConnectCompareHypervisorCPU APIs (bz
a2479f5
  #1722466, bz #1720118)
a2479f5
c2c89ec
* Wed Jun 12 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.4.0-1
c2c89ec
- Update to 5.4.0 release
c2c89ec
d61e240
* Tue May 21 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.3.0-3
d61e240
- Fix systemd socket permissions
d61e240
- Resolves: rhbz #1712498 (CVE-2019-10132)
d61e240
a2be167
* Tue May 14 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.3.0-2
a2be167
- Define md-clear CPUID bit
a2be167
- Resolves: rhbz #1709977 (CVE-2018-12126), rhbz #1709979 (CVE-2018-12127),
a2be167
  rhbz #1709997 (CVE-2018-12130), rhbz #1709984 (CVE-2019-11091)
a2be167
15ca09e
* Tue May  7 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.3.0-1
15ca09e
- Update to 5.3.0 release
15ca09e
2cc07e6
* Mon Apr 08 2019 Cole Robinson <crobinso@redhat.com> - 5.2.0-2
2cc07e6
- Rebuild for xen 4.12 soname bump
2cc07e6
98cbf39
* Wed Apr  3 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.2.0-1
98cbf39
- Update to 5.2.0 release
98cbf39
d670e24
* Wed Mar 20 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.1.0-3
d670e24
- Fix upgrades for rbd on i686 (rhbz #1688121)
d670e24
- Add missing xfsprogs-devel dep
d670e24
- Fix use of deprecated RBD features
d670e24
- Avoid using firewalld if unprivileged
d670e24
- Don't require ipv6 firewall support at startup (rhbz #1688968)
d670e24
50e7b9a
* Wed Mar 06 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.1.0-2
50e7b9a
- Remove obsolete scriptlets
50e7b9a
5cbc045
* Mon Mar  4 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.1.0-1
5cbc045
- Update to 5.1.0 release
5cbc045
b420054
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 5.0.0-3
b420054
- Rebuild for readline 8.0
b420054
143fede
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.0-2
143fede
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
143fede
88887ca
* Mon Jan 21 2019 Daniel P. Berrangé <berrange@redhat.com> - 5.0.0-1
88887ca
- Update to 5.0.0 release