3 # This spec file assumes you are building on a Fedora or RHEL version
4 # that's still supported by the vendor. It may work on other distros
5 # or versions, but no effort will be made to ensure that going forward.
9 %define arches_qemu_kvm
%{ix86} x86_64 %{power64} %{arm} aarch64 s390x
12 %define arches_qemu_kvm x86_64 aarch64 s390x
14 %define arches_qemu_kvm x86_64
%{power64} aarch64 s390x
18 %define arches_64bit x86_64
%{power64} aarch64 s390x riscv64
19 %define arches_x86
%{ix86} x86_64
21 %define arches_systemtap_64bit
%{arches_64bit}
22 %define arches_dmidecode
%{arches_x86}
23 %define arches_xen
%{arches_x86} aarch64
25 %define arches_xen x86_64 aarch64
27 %define arches_vbox
%{arches_x86}
28 %define arches_ceph
%{arches_64bit}
29 %define arches_zfs
%{arches_x86} %{power64} %{arm}
30 %define arches_numactl
%{arches_x86} %{power64} aarch64 s390x
31 %define arches_numad
%{arches_x86} %{power64} aarch64
33 # The hypervisor drivers that run in libvirtd
34 %define with_qemu
0%{!?_without_qemu:1}
35 %define with_lxc
0%{!?_without_lxc:1}
36 %define with_libxl
0%{!?_without_libxl:1}
37 %define with_vbox
0%{!?_without_vbox:1}
39 %ifarch %{arches_qemu_kvm}
40 %define with_qemu_kvm
%{with_qemu}
42 %define with_qemu_kvm
0
45 %define with_qemu_tcg
%{with_qemu}
47 # RHEL disables TCG on all architectures
49 %define with_qemu_tcg
0
52 %if ! %{with_qemu_tcg} && ! %{with_qemu_kvm}
56 # Then the hypervisor drivers that run outside libvirtd, in libvirt.so
57 %define with_openvz
0%{!?_without_openvz:1}
58 %define with_vmware
0%{!?_without_vmware:1}
59 %define with_esx
0%{!?_without_esx:1}
60 %define with_hyperv
0%{!?_without_hyperv:1}
62 # Then the secondary host drivers, which run inside libvirtd
63 %define with_storage_rbd
0%{!?_without_storage_rbd:1}
65 %define with_storage_gluster
0%{!?_without_storage_gluster:1}
67 # Glusterfs has been dropped in RHEL-9, and before that
68 # was only enabled on arches where KVM exists
70 %define with_storage_gluster
0
72 %ifnarch %{arches_qemu_kvm}
73 %define with_storage_gluster
0
80 %define with_storage_zfs
0%{!?_without_storage_zfs:1}
82 %define with_storage_zfs
0
85 %define with_storage_iscsi_direct
0%{!?_without_storage_iscsi_direct:1}
86 # libiscsi has been dropped in RHEL-9
88 %define with_storage_iscsi_direct
0
91 # Other optional features
92 %define with_numactl
0%{!?_without_numactl:1}
93 %define with_userfaultfd_sysctl
0%{!?_without_userfaultfd_sysctl:1}
95 # A few optional bits off by default, we enable later
97 %define with_sanlock
0
100 %define with_nbdkit_config_default
0
101 %define with_firewalld_zone
0
103 %define with_libssh2
0
104 %define with_wireshark
0
105 %define with_libssh
0
106 %define with_dmidecode
0
108 # Finally set the OS / architecture specific special cases
110 # Architecture-dependent features
111 %ifnarch %{arches_xen}
114 %ifnarch %{arches_vbox}
117 %ifnarch %{arches_numactl}
118 %define with_numactl
0
120 %ifnarch %{arches_zfs}
121 %define with_storage_zfs
0
123 %ifnarch %{arches_ceph}
124 %define with_storage_rbd
0
127 # RHEL doesn't ship many hypervisor drivers
129 %define with_openvz
0
131 %define with_vmware
0
133 %define with_hyperv
0
137 %define with_firewalld_zone
0%{!?_without_firewalld_zone:1}
139 %if 0%{?rhel} && 0%{?rhel} < 9
140 %define with_netcf
0%{!?_without_netcf:1}
143 # fuse is used to provide virtualized /proc for LXC
145 %define with_fuse
0%{!?_without_fuse:1}
148 # Enable sanlock library for lock management with QEMU
149 # Sanlock is available only on arches where kvm is available for RHEL
151 %define with_sanlock
0%{!?_without_sanlock:1}
154 %ifarch %{arches_qemu_kvm}
155 %define with_sanlock
0%{!?_without_sanlock:1}
159 # Enable libssh2 transport for new enough distros
161 %define with_libssh2
0%{!?_without_libssh2:1}
164 # Enable wireshark plugins for all distros
165 %define with_wireshark
0%{!?_without_wireshark:1}
166 %define wireshark_plugindir %
(pkg
-config
--variable plugindir wireshark
)/epan
168 # Enable libssh transport for all distros
169 %define with_libssh
0%{!?_without_libssh:1}
171 %if %{with_qemu} || %{with_lxc}
172 # numad is used to manage the CPU and memory placement dynamically,
173 # it's not available on many non-x86 architectures.
174 %ifarch %{arches_numad}
175 %define with_numad
0%{!?_without_numad:1}
179 # We want to build with nbdkit support, but should only enable nbdkit by
180 # default if the OS ships a SELinux policy that allows libvirt to launch it.
181 # Right now that's not the case anywhere, but things should be fine by the time
182 # Fedora 40 is released.
184 # rhel-8 lacks pidfd_open
185 %if 0%{?fedora} || 0%{?rhel} >= 9
186 %define with_nbdkit
0%{!?_without_nbdkit:1}
188 # setting 'with_nbdkit_config_default' must be done only when compiling
191 # TODO: add RHEL 9 once a minor release that contains the necessary SELinux
192 # bits exists (we only support the most recent minor release)
193 %if 0%{?fedora} >= 40
194 %define with_nbdkit_config_default
0%{!?_without_nbdkit_config_default:1}
199 %ifarch %{arches_dmidecode}
200 %define with_dmidecode
0%{!?_without_dmidecode:1}
203 %define with_modular_daemons
0
204 %if 0%{?fedora} || 0%{?rhel} >= 9
205 %define with_modular_daemons
1
208 # Prefer nftables for future OS releases but keep using iptables
210 %if 0%{?rhel} >= 10 || 0%{?fedora} >= 41
211 %define prefer_nftables
1
212 %define firewall_backend_priority nftables
,iptables
214 %define prefer_nftables
0
215 %define firewall_backend_priority iptables
,nftables
220 # Force QEMU to run as non-root
221 %define qemu_user qemu
222 %define qemu_group qemu
224 # Locations for QEMU data
225 %define qemu_moddir
%{_libdir}/qemu
226 %define qemu_datadir
%{_datadir}/qemu
228 # Native / MinGW builds
229 %define with_native
0%{!?_without_native:1}
231 %define with_mingw32
0
232 %define with_mingw64
0
235 %if 0%{!?_without_mingw:1}
236 %define with_mingw32
0%{!?_without_mingw32:1}
237 %define with_mingw64
0%{!?_without_mingw64:1}
240 # These tell the other mingw macros whether to perform or
241 # skip the 32-bit and 64-bit specific steps respectively
242 %define mingw_build_win32
%{with_mingw32}
243 %define mingw_build_win64
%{with_mingw64}
247 # Building the debugsource package apparently only works if the
248 # native build is enabled. debuginfo packages don't have this
249 # problem and setting this doesn't disable them
250 %global debug_package
%{nil}
253 # RHEL releases provide stable tool chains and so it is safe to turn
254 # compiler warning into errors without being worried about frequent
255 # changes in reported warnings
257 %define enable_werror
-Dwerror
=true
259 %define enable_werror
-Dwerror
=false
-Dgit_werror
=disabled
262 # Fedora and RHEL-9 are new enough to support /dev/userfaultfd, which
263 # does not require enabling vm.unprivileged_userfaultfd sysctl.
264 %if 0%{?fedora} || 0%{?rhel} >= 9
265 %define with_userfaultfd_sysctl
0
268 %define tls_priority "@LIBVIRT
,SYSTEM"
270 # libvirt 8.1.0 stops distributing any sysconfig files.
271 # If the user has customized their sysconfig file,
272 # the RPM upgrade path will rename it to .rpmsave
273 # because the file is no longer managed by RPM.
274 # To prevent a regression we rename it back after the
275 # transaction to preserve the user's modifications
276 %define libvirt_sysconfig_pre
() \
277 for sc
in %{?*} ; do \
278 test -f "
%{_sysconfdir}/sysconfig/${sc}.rpmsave" ||
continue ; \
279 mv
-v "
%{_sysconfdir}/sysconfig/${sc}.rpmsave" "%{_sysconfdir}/sysconfig/${sc}.rpmsave.old"
; \
282 %define libvirt_sysconfig_posttrans
() \
283 for sc
in %{?*} ; do \
284 test -f "
%{_sysconfdir}/sysconfig/${sc}.rpmsave" ||
continue ; \
285 mv
-v "
%{_sysconfdir}/sysconfig/${sc}.rpmsave" "%{_sysconfdir}/sysconfig/${sc}"
; \
289 Summary: Library providing a simple virtualization API
293 License: GPL
-2.0-or
-later AND LGPL
-2.1-only AND LGPL
-2.1-or
-later AND OFL
-1.1
294 URL: https
://libvirt.org
/
296 %if %
(echo %{version} | grep "\
.0$"
>/dev
/null
; echo $?
) == 1
297 %define mainturl stable_updates
/
299 Source: https
://download.libvirt.org
/%{?mainturl}libvirt-%{version}.tar.xz
301 Requires: libvirt
-daemon
= %{version}-%{release}
302 Requires: libvirt
-daemon
-config
-network
= %{version}-%{release}
303 Requires: libvirt
-daemon
-config
-nwfilter
= %{version}-%{release}
305 Requires: libvirt
-daemon
-driver
-libxl
= %{version}-%{release}
308 Requires: libvirt
-daemon
-driver
-lxc
= %{version}-%{release}
311 Requires: libvirt
-daemon
-driver
-qemu
= %{version}-%{release}
312 Requires: libvirt
-client
-qemu
= %{version}-%{release}
314 # We had UML driver, but we've removed it.
315 Obsoletes
: libvirt
-daemon
-driver
-uml
<= 5.0.0
316 Obsoletes
: libvirt
-daemon
-uml
<= 5.0.0
318 Requires: libvirt
-daemon
-driver
-vbox
= %{version}-%{release}
320 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
321 Requires: libvirt
-daemon
-driver
-interface
= %{version}-%{release}
322 Requires: libvirt
-daemon
-driver
-secret
= %{version}-%{release}
323 Requires: libvirt
-daemon
-driver
-storage
= %{version}-%{release}
324 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
325 Requires: libvirt
-daemon
-driver
-nodedev
= %{version}-%{release}
326 Requires: libvirt
-client
= %{version}-%{release}
327 Requires: libvirt
-libs
= %{version}-%{release}
329 # All build-time requirements. Run-time requirements are
330 # listed against each sub-RPM
331 BuildRequires
: python3
-docutils
332 BuildRequires
: meson
>= 0.56.0
333 BuildRequires
: ninja
-build
335 BuildRequires
: perl
-interpreter
336 BuildRequires
: python3
337 BuildRequires
: python3
-pytest
339 BuildRequires
: libxml2
341 BuildRequires
: libxslt
342 BuildRequires
: gettext
343 BuildRequires
: systemd
-rpm
-macros
344 # Fedora build root suckage
349 BuildRequires
: xen
-devel
351 BuildRequires
: glib2
-devel
>= 2.58
352 BuildRequires
: libxml2
-devel
353 BuildRequires
: readline
-devel
354 BuildRequires
: pkgconfig
(bash
-completion
) >= 2.0
355 BuildRequires
: libtasn1
-devel
356 BuildRequires
: gnutls
-devel
357 BuildRequires
: libattr
-devel
358 # For pool-build probing for existing pools
359 BuildRequires
: libblkid
-devel
>= 2.17
360 # for augparse, optionally used in testing
361 BuildRequires
: augeas
362 BuildRequires
: systemd
-devel
>= 185
363 BuildRequires
: libpciaccess
-devel
>= 0.10.9
364 BuildRequires
: yajl
-devel
366 BuildRequires
: sanlock
-devel
>= 2.4
368 BuildRequires
: libpcap
-devel
>= 1.5.0
369 BuildRequires
: libnl3
-devel
370 BuildRequires
: libselinux
-devel
373 BuildRequires
: cyrus
-sasl
-devel
374 BuildRequires
: polkit
>= 0.112
375 # For mount/umount in FS driver
376 BuildRequires
: util
-linux
379 BuildRequires
: libacl
-devel
380 # From QEMU RPMs, used by virstoragetest
381 BuildRequires
: /usr
/bin
/qemu
-img
383 # nbdkit support requires libnbd
385 BuildRequires
: libnbd
-devel
389 # For pool type=iscsi
390 BuildRequires
: iscsi
-initiator
-utils
391 %if %{with_storage_iscsi_direct}
392 # For pool type=iscsi-direct
393 BuildRequires
: libiscsi
-devel
396 BuildRequires
: parted
-devel
397 # For Multipath support
398 BuildRequires
: device
-mapper
-devel
399 %if %{with_storage_rbd}
400 BuildRequires
: librados
-devel
401 BuildRequires
: librbd
-devel
403 %if %{with_storage_gluster}
404 BuildRequires
: glusterfs
-api
-devel
>= 3.4.1
405 BuildRequires
: glusterfs
-devel
>= 3.4.1
408 # For QEMU/LXC numa info
409 BuildRequires
: numactl
-devel
411 BuildRequires
: libcap
-ng
-devel
>= 0.5.0
413 BuildRequires
: fuse
-devel
>= 2.8.6
416 BuildRequires
: libssh2
-devel
>= 1.3.0
419 BuildRequires
: netcf
-devel
>= 0.2.2
422 BuildRequires
: libcurl
-devel
425 BuildRequires
: libwsman
-devel
>= 2.6.3
427 BuildRequires
: audit
-libs
-devel
428 # we need /usr/sbin/dtrace
429 BuildRequires
: systemtap
-sdt
-devel
430 # For mount/umount in FS driver
431 BuildRequires
: util
-linux
432 # For showmount in FS driver (netfs discovery)
433 BuildRequires
: nfs
-utils
437 %if %{with_wireshark}
438 BuildRequires
: wireshark
-devel
441 BuildRequires
: libssh
-devel
>= 0.8.1
443 BuildRequires
: libtirpc
-devel
444 %if %{with_firewalld_zone}
445 # Needed for the firewalld_reload macro
446 BuildRequires
: firewalld
-filesystem
451 BuildRequires
: mingw32
-filesystem
452 BuildRequires
: mingw32
-gcc
453 BuildRequires
: mingw32
-binutils
454 BuildRequires
: mingw32
-glib2
>= 2.48
455 BuildRequires
: mingw32
-gnutls
456 BuildRequires
: mingw32
-gettext
457 BuildRequires
: mingw32
-libxml2
458 BuildRequires
: mingw32
-portablexdr
459 BuildRequires
: mingw32
-dlfcn
460 BuildRequires
: mingw32
-libssh2
461 BuildRequires
: mingw32
-curl
464 BuildRequires
: mingw64
-filesystem
465 BuildRequires
: mingw64
-gcc
466 BuildRequires
: mingw64
-binutils
467 BuildRequires
: mingw64
-glib2
>= 2.48
468 BuildRequires
: mingw64
-gnutls
469 BuildRequires
: mingw64
-gettext
470 BuildRequires
: mingw64
-libxml2
471 BuildRequires
: mingw64
-portablexdr
472 BuildRequires
: mingw64
-dlfcn
473 BuildRequires
: mingw64
-libssh2
474 BuildRequires
: mingw64
-curl
478 Libvirt is a C toolkit to interact with the virtualization capabilities
479 of recent versions of Linux
(and other OSes
). The main package includes
480 the libvirtd server exporting the virtualization support.
484 Summary: API reference and website documentation
487 Includes the API reference
for the libvirt C library
, and a complete
488 copy of the libvirt.org website documentation.
491 Summary: Server side daemon and supporting files
for libvirt library
493 # All runtime requirements for the libvirt package (runtime requrements
494 # for subpackages are listed later in those subpackages)
496 # The client side, i.e. shared libs are in a subpackage
497 Requires: libvirt
-libs
= %{version}-%{release}
498 Requires: libvirt
-daemon
-common
= %{version}-%{release}
499 Requires: libvirt
-daemon
-lock
= %{version}-%{release}
500 Requires: libvirt
-daemon
-plugin
-lockd
= %{version}-%{release}
501 Requires: libvirt
-daemon
-log
= %{version}-%{release}
502 Requires: libvirt
-daemon
-proxy
= %{version}-%{release}
505 Server side daemon required to manage the virtualization capabilities
506 of recent versions of Linux.
Requires a hypervisor specific sub
-RPM
507 for specific drivers.
509 %package daemon
-common
510 Summary: Files and utilities used by daemons
511 Requires: libvirt
-libs
= %{version}-%{release}
512 # The libvirt-guests.sh script requires virsh from libvirt-client subpackage,
513 # but not every deployment wants to use libvirt-guests service. Using
514 # Recommends here will install libvirt-client by default (if available), but
515 # RPM won't complain if the package is unavailable, masked, or removed later.
516 Recommends
: libvirt
-client
= %{version}-%{release}
521 Requires: polkit
>= 0.112
522 %if %{with_dmidecode}
523 # For virConnectGetSysinfo
526 # For service management
527 Requires(posttrans
): /usr
/bin
/systemctl
528 Requires(preun
): /usr
/bin
/systemctl
529 # libvirtd depends on 'messagebus' service
531 # For uid creation during pre
532 Requires(pre
): shadow
-utils
533 # Needed by /usr/libexec/libvirt-guests.sh script.
535 Requires: gettext
-runtime
540 # Ensure smooth upgrades
541 Obsoletes
: libvirt
-admin
< 7.3.0
542 Provides: libvirt
-admin
= %{version}-%{release}
543 Obsoletes
: libvirt
-bash
-completion
< 7.3.0
545 %description daemon
-common
546 Miscellaneous files and utilities used by other libvirt daemons
549 Summary: Server side daemon
for managing locks
550 Requires: libvirt
-libs
= %{version}-%{release}
552 %description daemon
-lock
553 Server side daemon used to manage locks held against virtual machine
556 %package daemon
-plugin
-lockd
557 Summary: lockd client plugin
for virtlockd
558 Requires: libvirt
-libs
= %{version}-%{release}
559 Requires: libvirt
-daemon
-lock
= %{version}-%{release}
561 %description daemon
-plugin
-lockd
562 A client
-side plugin that implements disk locking using POSIX fcntl advisory
563 locks via communication with the virtlockd daemon
566 Summary: Server side daemon
for managing logs
567 Requires: libvirt
-libs
= %{version}-%{release}
569 %description daemon
-log
570 Server side daemon used to manage logs from virtual machine consoles
572 %package daemon
-proxy
573 Summary: Server side daemon providing libvirtd proxy
574 Requires: libvirt
-libs
= %{version}-%{release}
575 # netcat is needed on the server side so that clients that have
576 # libvirt < 6.9.0 can connect, but newer versions will prefer
577 # virt-ssh-helper. Making this a Recommends means that it gets
578 # installed by default, but can still be removed if compatibility
579 # with old clients is not required
580 Recommends
: /usr
/bin
/nc
582 %description daemon
-proxy
583 Server side daemon providing functionality previously provided by
584 the monolithic libvirtd
586 %package daemon
-config
-network
587 Summary: Default configuration files
for the libvirtd daemon
589 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
591 %description daemon
-config
-network
592 Default configuration files
for setting up NAT based networking
594 %package daemon
-config
-nwfilter
595 Summary: Network filter configuration files
for the libvirtd daemon
597 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
599 %description daemon
-config
-nwfilter
600 Network filter configuration files
for cleaning guest traffic
602 %package daemon
-driver
-network
603 Summary: Network driver plugin
for the libvirtd daemon
604 Requires: libvirt
-daemon
-common
= %{version}-%{release}
605 Requires: libvirt
-libs
= %{version}-%{release}
606 Requires: dnsmasq
>= 2.41
607 %if %{prefer_nftables}
613 %description daemon
-driver
-network
614 The network driver plugin
for the libvirtd daemon
, providing
615 an implementation of the virtual network APIs using the Linux
618 %package daemon
-driver
-nwfilter
619 Summary: Nwfilter driver plugin
for the libvirtd daemon
620 Requires: libvirt
-daemon
-common
= %{version}-%{release}
621 Requires: libvirt
-libs
= %{version}-%{release}
625 %description daemon
-driver
-nwfilter
626 The nwfilter driver plugin
for the libvirtd daemon
, providing
627 an implementation of the firewall APIs using the ebtables
,
628 iptables and ip6tables capabilities
630 %package daemon
-driver
-nodedev
631 Summary: Nodedev driver plugin
for the libvirtd daemon
632 Requires: libvirt
-daemon
-common
= %{version}-%{release}
633 Requires: libvirt
-libs
= %{version}-%{release}
634 # needed for device enumeration
635 Requires: systemd
>= 185
636 # For managing persistent mediated devices
637 # Note: for nodedev-update support at least mdevctl v1.3.0 is required
639 # for modprobe of pci devices
640 Requires: module
-init
-tools
642 %description daemon
-driver
-nodedev
643 The nodedev driver plugin
for the libvirtd daemon
, providing
644 an implementation of the node device APIs using the udev
647 %package daemon
-driver
-interface
648 Summary: Interface driver plugin
for the libvirtd daemon
649 Requires: libvirt
-daemon
-common
= %{version}-%{release}
650 Requires: libvirt
-libs
= %{version}-%{release}
652 Requires: netcf
-libs
>= 0.2.2
655 %description daemon
-driver
-interface
656 The interface driver plugin
for the libvirtd daemon
, providing
657 an implementation of the host network interface APIs.
659 %package daemon
-driver
-secret
660 Summary: Secret driver plugin
for the libvirtd daemon
661 Requires: libvirt
-daemon
-common
= %{version}-%{release}
662 Requires: libvirt
-libs
= %{version}-%{release}
664 %description daemon
-driver
-secret
665 The secret driver plugin
for the libvirtd daemon
, providing
666 an implementation of the secret key APIs.
668 %package daemon
-driver
-storage
-core
669 Summary: Storage driver plugin including base backends
for the libvirtd daemon
670 Requires: libvirt
-daemon
-common
= %{version}-%{release}
671 Requires: libvirt
-libs
= %{version}-%{release}
675 # For storage wiping with different algorithms
679 Requires: /usr
/bin
/qemu
-img
681 %if !%{with_storage_rbd}
682 Obsoletes
: libvirt
-daemon
-driver
-storage
-rbd
< 5.2.0
684 Obsoletes
: libvirt
-daemon
-driver
-storage
-sheepdog
< 8.8.0
686 %description daemon
-driver
-storage
-core
687 The storage driver plugin
for the libvirtd daemon
, providing
688 an implementation of the storage APIs using files
, local disks
, LVM
, SCSI
,
689 iSCSI
, and multipath storage.
691 %package daemon
-driver
-storage
-logical
692 Summary: Storage driver plugin
for lvm volumes
693 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
694 Requires: libvirt
-libs
= %{version}-%{release}
697 %description daemon
-driver
-storage
-logical
698 The storage driver backend adding implementation of the storage APIs
for block
701 %package daemon
-driver
-storage
-disk
702 Summary: Storage driver plugin
for disk
703 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
704 Requires: libvirt
-libs
= %{version}-%{release}
706 Requires: device
-mapper
708 %description daemon
-driver
-storage
-disk
709 The storage driver backend adding implementation of the storage APIs
for block
710 volumes using the host disks.
712 %package daemon
-driver
-storage
-scsi
713 Summary: Storage driver plugin
for local scsi devices
714 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
715 Requires: libvirt
-libs
= %{version}-%{release}
717 %description daemon
-driver
-storage
-scsi
718 The storage driver backend adding implementation of the storage APIs
for scsi
721 %package daemon
-driver
-storage
-iscsi
722 Summary: Storage driver plugin
for iscsi
723 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
724 Requires: libvirt
-libs
= %{version}-%{release}
725 Requires: iscsi
-initiator
-utils
727 %description daemon
-driver
-storage
-iscsi
728 The storage driver backend adding implementation of the storage APIs
for iscsi
729 volumes using the host iscsi stack.
731 %if %{with_storage_iscsi_direct}
732 %package daemon
-driver
-storage
-iscsi
-direct
733 Summary: Storage driver plugin
for iscsi
-direct
734 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
735 Requires: libvirt
-libs
= %{version}-%{release}
737 %description daemon
-driver
-storage
-iscsi
-direct
738 The storage driver backend adding implementation of the storage APIs
for iscsi
739 volumes using libiscsi direct connection.
742 %package daemon
-driver
-storage
-mpath
743 Summary: Storage driver plugin
for multipath volumes
744 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
745 Requires: libvirt
-libs
= %{version}-%{release}
746 Requires: device
-mapper
748 %description daemon
-driver
-storage
-mpath
749 The storage driver backend adding implementation of the storage APIs
for
750 multipath storage using device mapper.
752 %if %{with_storage_gluster}
753 %package daemon
-driver
-storage
-gluster
754 Summary: Storage driver plugin
for gluster
755 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
756 Requires: libvirt
-libs
= %{version}-%{release}
758 Requires: glusterfs
-client
>= 2.0.1
760 %if 0%{?fedora} || 0%{?with_storage_gluster}
761 Requires: /usr
/sbin
/gluster
764 %description daemon
-driver
-storage
-gluster
765 The storage driver backend adding implementation of the storage APIs
for gluster
766 volumes using libgfapi.
769 %if %{with_storage_rbd}
770 %package daemon
-driver
-storage
-rbd
771 Summary: Storage driver plugin
for rbd
772 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
773 Requires: libvirt
-libs
= %{version}-%{release}
775 %description daemon
-driver
-storage
-rbd
776 The storage driver backend adding implementation of the storage APIs
for rbd
777 volumes using the ceph protocol.
780 %if %{with_storage_zfs}
781 %package daemon
-driver
-storage
-zfs
782 Summary: Storage driver plugin
for ZFS
783 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
784 Requires: libvirt
-libs
= %{version}-%{release}
785 # Support any conforming implementation of zfs
787 Requires: /sbin
/zpool
789 %description daemon
-driver
-storage
-zfs
790 The storage driver backend adding implementation of the storage APIs
for
794 %package daemon
-driver
-storage
795 Summary: Storage driver plugin including all backends
for the libvirtd daemon
796 Requires: libvirt
-daemon
-driver
-storage
-core
= %{version}-%{release}
797 Requires: libvirt
-daemon
-driver
-storage
-disk
= %{version}-%{release}
798 Requires: libvirt
-daemon
-driver
-storage
-logical
= %{version}-%{release}
799 Requires: libvirt
-daemon
-driver
-storage
-scsi
= %{version}-%{release}
800 Requires: libvirt
-daemon
-driver
-storage
-iscsi
= %{version}-%{release}
801 Requires: libvirt
-daemon
-driver
-storage
-mpath
= %{version}-%{release}
802 %if %{with_storage_iscsi_direct}
803 Requires: libvirt
-daemon
-driver
-storage
-iscsi
-direct
= %{version}-%{release}
805 %if %{with_storage_gluster}
806 Requires: libvirt
-daemon
-driver
-storage
-gluster
= %{version}-%{release}
808 %if %{with_storage_rbd}
809 Requires: libvirt
-daemon
-driver
-storage
-rbd
= %{version}-%{release}
811 %if %{with_storage_zfs}
812 Requires: libvirt
-daemon
-driver
-storage
-zfs
= %{version}-%{release}
815 %description daemon
-driver
-storage
816 The storage driver plugin
for the libvirtd daemon
, providing
817 an implementation of the storage APIs using LVM
, iSCSI
,
821 %package daemon
-driver
-qemu
822 Summary: QEMU driver plugin
for the libvirtd daemon
823 Requires: libvirt
-daemon
-common
= %{version}-%{release}
824 Requires: libvirt
-daemon
-log
= %{version}-%{release}
825 Requires: libvirt
-libs
= %{version}-%{release}
826 Requires: /usr
/bin
/qemu
-img
827 # For image compression
833 Requires: systemd
-container
834 Requires: swtpm
-tools
838 %if 0%{?fedora} || 0%{?rhel} >= 9
840 Recommends
: passt
-selinux
844 Recommends
: nbdkit
-curl
-plugin
845 Recommends
: nbdkit
-ssh
-plugin
848 %description daemon
-driver
-qemu
849 The qemu driver plugin
for the libvirtd daemon
, providing
850 an implementation of the hypervisor driver APIs using
855 %package daemon
-driver
-lxc
856 Summary: LXC driver plugin
for the libvirtd daemon
857 Requires: libvirt
-daemon
-common
= %{version}-%{release}
858 Requires: libvirt
-libs
= %{version}-%{release}
859 # There really is a hard cross-driver dependency here
860 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
861 Requires: systemd
-container
862 # for modprobe of nbd driver
863 Requires: module
-init
-tools
868 %description daemon
-driver
-lxc
869 The LXC driver plugin
for the libvirtd daemon
, providing
870 an implementation of the hypervisor driver APIs using
875 %package daemon
-driver
-vbox
876 Summary: VirtualBox driver plugin
for the libvirtd daemon
877 Requires: libvirt
-daemon
-common
= %{version}-%{release}
878 Requires: libvirt
-libs
= %{version}-%{release}
880 %description daemon
-driver
-vbox
881 The vbox driver plugin
for the libvirtd daemon
, providing
882 an implementation of the hypervisor driver APIs using
887 %package daemon
-driver
-libxl
888 Summary: Libxl driver plugin
for the libvirtd daemon
889 Requires: libvirt
-daemon
-common
= %{version}-%{release}
890 Requires: libvirt
-libs
= %{version}-%{release}
891 Obsoletes
: libvirt
-daemon
-driver
-xen
< 4.3.0
893 %description daemon
-driver
-libxl
894 The Libxl driver plugin
for the libvirtd daemon
, providing
895 an implementation of the hypervisor driver APIs using
901 Summary: Server side daemon
& driver required to run QEMU guests
903 %if %{with_modular_daemons}
904 Requires: libvirt
-daemon
-common
= %{version}-%{release}
905 Requires: libvirt
-daemon
-log
= %{version}-%{release}
906 Requires: libvirt
-daemon
-lock
= %{version}-%{release}
907 Requires: libvirt
-daemon
-plugin
-lockd
= %{version}-%{release}
908 Requires: libvirt
-daemon
-proxy
= %{version}-%{release}
909 Recommends
: libvirt
-daemon
= %{version}-%{release}
911 Requires: libvirt
-daemon
= %{version}-%{release}
913 Requires: libvirt
-daemon
-driver
-qemu
= %{version}-%{release}
914 Requires: libvirt
-daemon
-driver
-interface
= %{version}-%{release}
915 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
916 Requires: libvirt
-daemon
-driver
-nodedev
= %{version}-%{release}
917 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
918 Requires: libvirt
-daemon
-driver
-secret
= %{version}-%{release}
919 Requires: libvirt
-daemon
-driver
-storage
= %{version}-%{release}
920 Requires: libvirt
-ssh
-proxy
= %{version}-%{release}
923 %description daemon
-qemu
924 Server side daemon and driver required to manage the virtualization
925 capabilities of the QEMU TCG emulators
930 Summary: Server side daemon
& driver required to run KVM guests
932 %if %{with_modular_daemons}
933 Requires: libvirt
-daemon
-common
= %{version}-%{release}
934 Requires: libvirt
-daemon
-log
= %{version}-%{release}
935 Requires: libvirt
-daemon
-lock
= %{version}-%{release}
936 Requires: libvirt
-daemon
-plugin
-lockd
= %{version}-%{release}
937 Requires: libvirt
-daemon
-proxy
= %{version}-%{release}
938 Recommends
: libvirt
-daemon
= %{version}-%{release}
940 Requires: libvirt
-daemon
= %{version}-%{release}
942 Requires: libvirt
-daemon
-driver
-qemu
= %{version}-%{release}
943 Requires: libvirt
-daemon
-driver
-interface
= %{version}-%{release}
944 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
945 Requires: libvirt
-daemon
-driver
-nodedev
= %{version}-%{release}
946 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
947 Requires: libvirt
-daemon
-driver
-secret
= %{version}-%{release}
948 Requires: libvirt
-daemon
-driver
-storage
= %{version}-%{release}
949 Requires: libvirt
-ssh
-proxy
= %{version}-%{release}
952 %description daemon
-kvm
953 Server side daemon and driver required to manage the virtualization
954 capabilities of the KVM hypervisor
959 Summary: Server side daemon
& driver required to run LXC guests
961 %if %{with_modular_daemons}
962 Requires: libvirt
-daemon
-common
= %{version}-%{release}
963 Requires: libvirt
-daemon
-proxy
= %{version}-%{release}
964 Recommends
: libvirt
-daemon
= %{version}-%{release}
966 Requires: libvirt
-daemon
= %{version}-%{release}
968 Requires: libvirt
-daemon
-driver
-lxc
= %{version}-%{release}
969 Requires: libvirt
-daemon
-driver
-interface
= %{version}-%{release}
970 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
971 Requires: libvirt
-daemon
-driver
-nodedev
= %{version}-%{release}
972 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
973 Requires: libvirt
-daemon
-driver
-secret
= %{version}-%{release}
974 Requires: libvirt
-daemon
-driver
-storage
= %{version}-%{release}
976 %description daemon
-lxc
977 Server side daemon and driver required to manage the virtualization
983 Summary: Server side daemon
& driver required to run XEN guests
985 %if %{with_modular_daemons}
986 Requires: libvirt
-daemon
-common
= %{version}-%{release}
987 Requires: libvirt
-daemon
-lock
= %{version}-%{release}
988 Requires: libvirt
-daemon
-plugin
-lockd
= %{version}-%{release}
989 Requires: libvirt
-daemon
-proxy
= %{version}-%{release}
990 Recommends
: libvirt
-daemon
= %{version}-%{release}
992 Requires: libvirt
-daemon
= %{version}-%{release}
994 Requires: libvirt
-daemon
-driver
-libxl
= %{version}-%{release}
995 Requires: libvirt
-daemon
-driver
-interface
= %{version}-%{release}
996 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
997 Requires: libvirt
-daemon
-driver
-nodedev
= %{version}-%{release}
998 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
999 Requires: libvirt
-daemon
-driver
-secret
= %{version}-%{release}
1000 Requires: libvirt
-daemon
-driver
-storage
= %{version}-%{release}
1003 %description daemon
-xen
1004 Server side daemon and driver required to manage the virtualization
1009 %package daemon
-vbox
1010 Summary: Server side daemon
& driver required to run VirtualBox guests
1012 %if %{with_modular_daemons}
1013 Requires: libvirt
-daemon
-common
= %{version}-%{release}
1014 Requires: libvirt
-daemon
-proxy
= %{version}-%{release}
1015 Recommends
: libvirt
-daemon
= %{version}-%{release}
1017 Requires: libvirt
-daemon
= %{version}-%{release}
1019 Requires: libvirt
-daemon
-driver
-vbox
= %{version}-%{release}
1020 Requires: libvirt
-daemon
-driver
-interface
= %{version}-%{release}
1021 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
1022 Requires: libvirt
-daemon
-driver
-nodedev
= %{version}-%{release}
1023 Requires: libvirt
-daemon
-driver
-nwfilter
= %{version}-%{release}
1024 Requires: libvirt
-daemon
-driver
-secret
= %{version}-%{release}
1025 Requires: libvirt
-daemon
-driver
-storage
= %{version}-%{release}
1027 %description daemon
-vbox
1028 Server side daemon and driver required to manage the virtualization
1029 capabilities of VirtualBox
1033 Summary: Client side utilities of the libvirt library
1034 Requires: libvirt
-libs
= %{version}-%{release}
1036 # Ensure smooth upgrades
1037 Obsoletes
: libvirt
-bash
-completion
< 7.3.0
1040 The client binaries needed to access the virtualization
1041 capabilities of recent versions of Linux
(and other OSes
).
1043 %package client
-qemu
1044 Summary: Additional client side utilities
for QEMU
1045 Requires: libvirt
-libs
= %{version}-%{release}
1046 Requires: python3
-libvirt
>= 3.7.0
1047 Requires: python3
-cryptography
1048 Requires: python3
-lxml
1050 %description client
-qemu
1051 The additional client binaries are used to interact
1052 with some QEMU specific features of libvirt.
1055 Summary: Client side libraries
1056 # Needed by default sasl.conf - no onerous extra deps, since
1057 # 100's of other things on a system already pull in krb5-libs
1058 Requires: cyrus
-sasl
-gssapi
1061 Shared libraries
for accessing the libvirt daemon.
1063 %if %{with_wireshark}
1065 Summary: Wireshark dissector plugin
for libvirt RPC transactions
1067 Requires: libvirt
-libs
= %{version}-%{release}
1069 %description wireshark
1070 Wireshark dissector plugin
for better analysis of libvirt RPC traffic.
1074 %package login
-shell
1075 Summary: Login shell
for connecting users to an LXC container
1076 Requires: libvirt
-libs
= %{version}-%{release}
1078 %description login
-shell
1079 Provides the
set-uid virt
-login
-shell binary that is used to
1080 connect a user to an LXC container when they login
, by switching
1085 Summary: Libraries
, includes
, etc. to compile with the libvirt library
1086 Requires: libvirt
-libs
= %{version}-%{release}
1090 Include header files
& development libraries
for the libvirt C library.
1093 %package daemon
-plugin
-sanlock
1094 Summary: Sanlock lock manager plugin
for QEMU driver
1095 Requires: sanlock
>= 2.4
1096 #for virt-sanlock-cleanup require augeas
1098 Requires: libvirt
-libs
= %{version}-%{release}
1099 Obsoletes
: libvirt
-lock
-sanlock
< 9.1.0
1100 Provides: libvirt
-lock
-sanlock
= %{version}-%{release}
1102 %description daemon
-plugin
-sanlock
1103 Includes the Sanlock lock manager plugin
for the QEMU
1108 Summary: Libvirt plugin
for Name Service Switch
1109 Requires: libvirt
-daemon
-driver
-network
= %{version}-%{release}
1112 Libvirt plugin
for NSS
for translating domain names into IP addresses.
1116 Summary: Libvirt SSH proxy
1117 Requires: libvirt
-libs
= %{version}-%{release}
1119 %description ssh
-proxy
1120 Allows SSH into domains via VSOCK without need
for network.
1123 %package -n mingw32
-libvirt
1125 Obsoletes
: mingw32
-libvirt
-static
< 7.0.0
1128 %description -n mingw32
-libvirt
1129 MinGW Windows libvirt virtualization library.
1131 %{?mingw32_debug_package}
1135 %package -n mingw64
-libvirt
1137 Obsoletes
: mingw64
-libvirt
-static
< 7.0.0
1140 %description -n mingw64
-libvirt
1141 MinGW Windows libvirt virtualization library.
1143 %{?mingw64_debug_package}
1147 %autosetup -S git_am
1150 %if 0%{?fedora} >= %{min_fedora} || 0%{?rhel} >= %{min_rhel}
1151 %define supported_platform
1
1153 %define supported_platform
0
1156 %if ! %{supported_platform}
1157 echo "This RPM requires either Fedora
>= %{min_fedora} or RHEL >= %{min_rhel}"
1162 %define arg_qemu
-Ddriver_qemu
=enabled
1164 %define arg_qemu
-Ddriver_qemu
=disabled
1168 %define arg_openvz
-Ddriver_openvz
=enabled
1170 %define arg_openvz
-Ddriver_openvz
=disabled
1174 %define arg_lxc
-Ddriver_lxc
=enabled
1175 %define arg_login_shell
-Dlogin_shell
=enabled
1177 %define arg_lxc
-Ddriver_lxc
=disabled
1178 %define arg_login_shell
-Dlogin_shell
=disabled
1182 %define arg_vbox
-Ddriver_vbox
=enabled
1184 %define arg_vbox
-Ddriver_vbox
=disabled
1188 %define arg_libxl
-Ddriver_libxl
=enabled
1190 %define arg_libxl
-Ddriver_libxl
=disabled
1194 %define arg_esx
-Ddriver_esx
=enabled
-Dcurl
=enabled
1196 %define arg_esx
-Ddriver_esx
=disabled
-Dcurl
=disabled
1200 %define arg_hyperv
-Ddriver_hyperv
=enabled
-Dopenwsman
=enabled
1202 %define arg_hyperv
-Ddriver_hyperv
=disabled
-Dopenwsman
=disabled
1206 %define arg_vmware
-Ddriver_vmware
=enabled
1208 %define arg_vmware
-Ddriver_vmware
=disabled
1211 %if %{with_storage_rbd}
1212 %define arg_storage_rbd
-Dstorage_rbd
=enabled
1214 %define arg_storage_rbd
-Dstorage_rbd
=disabled
1217 %if %{with_storage_gluster}
1218 %define arg_storage_gluster
-Dstorage_gluster
=enabled
-Dglusterfs
=enabled
1220 %define arg_storage_gluster
-Dstorage_gluster
=disabled
-Dglusterfs
=disabled
1223 %if %{with_storage_zfs}
1224 %define arg_storage_zfs
-Dstorage_zfs
=enabled
1226 %define arg_storage_zfs
-Dstorage_zfs
=disabled
1230 %define arg_numactl
-Dnumactl
=enabled
1232 %define arg_numactl
-Dnumactl
=disabled
1236 %define arg_numad
-Dnumad
=enabled
1238 %define arg_numad
-Dnumad
=disabled
1242 %define arg_nbdkit
-Dnbdkit
=enabled
1244 %define arg_nbdkit
-Dnbdkit
=disabled
1247 %if %{with_nbdkit_config_default}
1248 %define arg_nbdkit_config_default
-Dnbdkit_config_default
=enabled
1250 %define arg_nbdkit_config_default
-Dnbdkit_config_default
=disabled
1254 %define arg_fuse
-Dfuse
=enabled
1256 %define arg_fuse
-Dfuse
=disabled
1260 %define arg_sanlock
-Dsanlock
=enabled
1262 %define arg_sanlock
-Dsanlock
=disabled
1265 %if %{with_firewalld_zone}
1266 %define arg_firewalld_zone
-Dfirewalld_zone
=enabled
1268 %define arg_firewalld_zone
-Dfirewalld_zone
=disabled
1272 %define arg_netcf
-Dnetcf
=enabled
1274 %define arg_netcf
-Dnetcf
=disabled
1277 %if %{with_wireshark}
1278 %define arg_wireshark
-Dwireshark_dissector
=enabled
1280 %define arg_wireshark
-Dwireshark_dissector
=disabled
1283 %if %{with_storage_iscsi_direct}
1284 %define arg_storage_iscsi_direct
-Dstorage_iscsi_direct
=enabled
-Dlibiscsi
=enabled
1286 %define arg_storage_iscsi_direct
-Dstorage_iscsi_direct
=disabled
-Dlibiscsi
=disabled
1290 %define arg_libssh
-Dlibssh
=enabled
1292 %define arg_libssh
-Dlibssh
=disabled
1296 %define arg_libssh2
-Dlibssh2
=enabled
1298 %define arg_libssh2
-Dlibssh2
=disabled
1301 %if %{with_modular_daemons}
1302 %define arg_remote_mode
-Dremote_default_mode
=direct
1304 %define arg_remote_mode
-Dremote_default_mode
=legacy
1307 %if %{with_userfaultfd_sysctl}
1308 %define arg_userfaultfd_sysctl
-Duserfaultfd_sysctl
=enabled
1310 %define arg_userfaultfd_sysctl
-Duserfaultfd_sysctl
=disabled
1313 %define when %
(date
+"%
%F-%
%T"
)
1314 %define where %
(hostname
)
1315 %define who
%{?packager}%{!?packager:Unknown}
1316 %define arg_packager
-Dpackager
="
%{who}, %{when}, %{where}"
1317 %define arg_packager_version
-Dpackager_version
="
%{release}"
1318 %define arg_selinux_mount
-Dselinux_mount
="
/sys
/fs
/selinux"
1320 # place macros above and build commands below this comment
1322 export SOURCE_DATE_EPOCH
=$
(stat
--printf='
%Y'
%{_specdir}/libvirt.spec
)
1326 -Drunstatedir
=%{_rundir} \
1327 -Dinitconfdir
=%{_sysconfdir}/sysconfig \
1328 -Dunitdir
=%{_unitdir} \
1329 -Dsysusersdir
=%{_sysusersdir} \
1337 -Ddriver_libvirtd
=enabled \
1338 -Ddriver_remote
=enabled \
1339 -Ddriver_test
=enabled \
1343 -Ddriver_vz
=disabled \
1344 -Ddriver_bhyve
=disabled \
1345 -Ddriver_ch
=disabled \
1346 %{?arg_remote_mode} \
1347 -Ddriver_interface
=enabled \
1348 -Ddriver_network
=enabled \
1349 -Dstorage_fs
=enabled \
1350 -Dstorage_lvm
=enabled \
1351 -Dstorage_iscsi
=enabled \
1352 %{?arg_storage_iscsi_direct} \
1353 -Dstorage_scsi
=enabled \
1354 -Dstorage_disk
=enabled \
1355 -Dstorage_mpath
=enabled \
1356 %{?arg_storage_rbd} \
1357 %{?arg_storage_gluster} \
1358 %{?arg_storage_zfs} \
1359 -Dstorage_vstorage
=disabled \
1367 %{?arg_selinux_mount} \
1368 -Dapparmor
=disabled \
1369 -Dapparmor_profiles
=disabled \
1370 -Dsecdriver_apparmor
=disabled \
1376 %{?arg_nbdkit_config_default} \
1380 -Dfirewalld
=enabled \
1381 %{?arg_firewalld_zone} \
1385 -Dpm_utils
=disabled \
1388 %{arg_packager_version} \
1389 -Dqemu_user
=%{qemu_user} \
1390 -Dqemu_group
=%{qemu_group} \
1391 -Dqemu_moddir
=%{qemu_moddir} \
1392 -Dqemu_datadir
=%{qemu_datadir} \
1393 -Dtls_priority
=%{tls_priority} \
1394 -Dsysctl_config
=enabled \
1395 %{?arg_userfaultfd_sysctl} \
1396 -Dssh_proxy
=enabled \
1398 -Dexpensive_tests
=enabled \
1399 -Dinit_script
=systemd \
1400 -Dfirewall_backend_priority
=%{firewall_backend_priority} \
1409 %if %{with_mingw32} || %{with_mingw64}
1411 --auto
-features
=enabled \
1412 -Ddriver_remote
=enabled \
1413 -Ddriver_test
=enabled \
1414 -Ddriver_esx
=enabled \
1417 -Dapparmor
=disabled \
1418 -Dapparmor_profiles
=disabled \
1421 -Dbash_completion
=disabled \
1424 -Ddriver_bhyve
=disabled \
1425 -Ddriver_hyperv
=disabled \
1426 -Ddriver_interface
=disabled \
1427 -Ddriver_libvirtd
=disabled \
1428 -Ddriver_libxl
=disabled \
1429 -Ddriver_lxc
=disabled \
1430 -Ddriver_network
=disabled \
1431 -Ddriver_openvz
=disabled \
1432 -Ddriver_qemu
=disabled \
1433 -Ddriver_secrets
=disabled \
1434 -Ddriver_vbox
=disabled \
1435 -Ddriver_vmware
=disabled \
1436 -Ddriver_vz
=disabled \
1438 -Dexpensive_tests
=disabled \
1439 -Dfirewalld
=disabled \
1440 -Dfirewalld_zone
=disabled \
1442 -Dglusterfs
=disabled \
1443 -Dhost_validate
=disabled \
1444 -Dlibiscsi
=disabled \
1446 -Dnbdkit_config_default
=disabled \
1448 -Dlibpcap
=disabled \
1449 -Dlibssh2
=disabled \
1451 -Dlogin_shell
=disabled \
1455 -Dnumactl
=disabled \
1457 -Dopenwsman
=disabled \
1458 -Dpciaccess
=disabled \
1459 -Dpm_utils
=disabled \
1461 -Dreadline
=disabled \
1463 -Dsanlock
=disabled \
1465 -Dsecdriver_apparmor
=disabled \
1466 -Dsecdriver_selinux
=disabled \
1467 -Dselinux
=disabled \
1468 -Dstorage_dir
=disabled \
1469 -Dstorage_disk
=disabled \
1470 -Dstorage_fs
=disabled \
1471 -Dstorage_gluster
=disabled \
1472 -Dstorage_iscsi_direct
=disabled \
1473 -Dstorage_iscsi
=disabled \
1474 -Dstorage_lvm
=disabled \
1475 -Dstorage_mpath
=disabled \
1476 -Dstorage_rbd
=disabled \
1477 -Dstorage_scsi
=disabled \
1478 -Dstorage_vstorage
=disabled \
1479 -Dstorage_zfs
=disabled \
1480 -Dsysctl_config
=disabled \
1481 -Duserfaultfd_sysctl
=disabled \
1482 -Dssh_proxy
=disabled \
1485 -Dwireshark_dissector
=disabled \
1494 export SOURCE_DATE_EPOCH
=$
(stat
--printf='
%Y'
%{_specdir}/libvirt.spec
)
1499 # We don't want to install /etc/libvirt/qemu/networks in the main %%files list
1500 # because if the admin wants to delete the default network completely, we don't
1501 # want to end up re-incarnating it on every RPM upgrade.
1502 install -d
-m
0755 $RPM_BUILD_ROOT
%{_datadir}/libvirt
/networks
/
1503 cp $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/qemu
/networks
/default.xml \
1504 $RPM_BUILD_ROOT
%{_datadir}/libvirt
/networks
/default.xml
1505 # libvirt saves this file with mode 0600
1506 chmod
0600 $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/qemu
/networks
/default.xml
1508 # nwfilter files are installed in /usr/share/libvirt and copied to /etc in %%post
1509 # to avoid verification errors on changed files in /etc
1510 install -d
-m
0755 $RPM_BUILD_ROOT
%{_datadir}/libvirt
/nwfilter
/
1511 cp
-a $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/nwfilter
/*.xml \
1512 $RPM_BUILD_ROOT
%{_datadir}/libvirt
/nwfilter
/
1513 # libvirt saves these files with mode 600
1514 chmod
600 $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/nwfilter
/*.xml
1517 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/libvirtd_qemu.aug
1518 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/tests
/test_libvirtd_qemu.aug
1519 rm -f $RPM_BUILD_ROOT
%{_sysusersdir}/libvirt
-qemu.conf
1523 %if ! %{with_sanlock}
1524 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/libvirt_sanlock.aug
1525 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/tests
/test_libvirt_sanlock.aug
1529 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/libvirtd_lxc.aug
1530 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/tests
/test_libvirtd_lxc.aug
1534 rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/qemu.conf
1535 rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/logrotate.d
/libvirtd.qemu
1538 rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/lxc.conf
1539 rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/logrotate.d
/libvirtd.lxc
1542 rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/libvirt
/libxl.conf
1543 rm -rf $RPM_BUILD_ROOT
%{_sysconfdir}/logrotate.d
/libvirtd.libxl
1544 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/libvirtd_libxl.aug
1545 rm -f $RPM_BUILD_ROOT
%{_datadir}/augeas
/lenses
/tests
/test_libvirtd_libxl.aug
1548 # Copied into libvirt-docs subpackage eventually
1549 mv $RPM_BUILD_ROOT
%{_datadir}/doc
/libvirt libvirt
-docs
1551 %ifarch %{arches_systemtap_64bit}
1552 mv $RPM_BUILD_ROOT
%{_datadir}/systemtap
/tapset
/libvirt_probes.stp \
1553 $RPM_BUILD_ROOT
%{_datadir}/systemtap
/tapset
/libvirt_probes
-64.stp
1556 mv $RPM_BUILD_ROOT
%{_datadir}/systemtap
/tapset
/libvirt_qemu_probes.stp \
1557 $RPM_BUILD_ROOT
%{_datadir}/systemtap
/tapset
/libvirt_qemu_probes
-64.stp
1562 %if %{with_mingw32} || %{with_mingw64}
1563 %mingw_ninja_install
1567 rm -rf $RPM_BUILD_ROOT
%{mingw32_sysconfdir}/libvirt
/nwfilter
1568 rm -rf $RPM_BUILD_ROOT
%{mingw32_datadir}/doc
/*
1569 rm -rf $RPM_BUILD_ROOT
%{mingw32_datadir}/gtk
-doc
/*
1570 rm -rf $RPM_BUILD_ROOT
%{mingw32_libexecdir}/libvirt_iohelper.exe
1571 rm -rf $RPM_BUILD_ROOT
%{mingw32_libexecdir}/libvirt
-guests.sh
1575 rm -rf $RPM_BUILD_ROOT
%{mingw64_sysconfdir}/libvirt
/nwfilter
1576 rm -rf $RPM_BUILD_ROOT
%{mingw64_datadir}/doc
/*
1577 rm -rf $RPM_BUILD_ROOT
%{mingw64_datadir}/gtk
-doc
/*
1578 rm -rf $RPM_BUILD_ROOT
%{mingw64_libexecdir}/libvirt_iohelper.exe
1579 rm -rf $RPM_BUILD_ROOT
%{mingw64_libexecdir}/libvirt
-guests.sh
1582 %if %{with_mingw32} || %{with_mingw64}
1583 %mingw_debug_install_post
1585 %mingw_find_lang %{name}
1592 # Building on slow archs, like emulated s390x in Fedora copr, requires
1593 # raising the test timeout
1594 export VIR_TEST_DEBUG
=1
1595 %meson_test --no
-suite syntax
-check
--timeout
-multiplier
10
1598 %define libvirt_rpmstatedir
%{_localstatedir}/lib
/rpm
-state
/libvirt
1600 # Mark units such that presets will later be applied to them. Meant
1601 # to be called during %pre. Units that already exist on the system
1602 # will not be marked, with the assumption that presets have already
1603 # been applied at some point in the past. This makes it safe to call
1604 # this macro for all units each time %pre runs.
1605 %define libvirt_systemd_schedule_preset
() \
1606 mkdir -p
%{libvirt_rpmstatedir} ||
: \
1607 for unit
in %{?*}; do \
1608 if ! test -e
%{_unitdir}/$unit
; then \
1609 touch
%{libvirt_rpmstatedir}/preset
-$unit ||
: \
1614 # Apply presets for units that have previously been marked. Meant to
1615 # be called during %posttrans. Note that foo.service must be passed
1616 # as the first argument, before all the various foo*.socket
1617 # associated with it, for things to work correctly. This is necessary
1618 # because Also=foo.socket is usually present in foo.service's
1619 # [Install] section, and we want that configuration to take
1620 # precedence over foo.socket's own presets.
1621 %define libvirt_systemd_perform_preset
() \
1622 %{?7:%{error:Too many arguments}} \
1623 for unit
in %{?2} %{?3} %{?4} %{?5} %{?6} %1; do \
1624 if test -e
%{libvirt_rpmstatedir}/preset
-$unit
; then \
1625 /usr
/bin
/systemctl
--no
-reload preset $unit ||
: \
1627 rm -f
%{libvirt_rpmstatedir}/preset
-$unit \
1629 rmdir %{libvirt_rpmstatedir} 2>/dev
/null ||
: \
1632 # Mark a single unit for restart. Meant to be called during %pre.
1633 %define libvirt_systemd_schedule_restart
() \
1634 mkdir -p
%{libvirt_rpmstatedir} ||
: \
1635 touch
%{libvirt_rpmstatedir}/restart
-%1 ||
: \
1638 # Restart a unit that was previously marked. Meant to be called
1639 # during %posttrans. If systemd is not running, no action will be
1641 %define libvirt_systemd_perform_restart
() \
1642 if test -d
/run
/systemd
/system
&& \
1643 test -e
%{libvirt_rpmstatedir}/restart
-%1; then \
1644 /usr
/bin
/systemctl try
-restart
%1 >/dev
/null
2>&1 ||
: \
1646 rm -f
%{libvirt_rpmstatedir}/restart
-%1 \
1647 rmdir %{libvirt_rpmstatedir} 2>/dev
/null ||
: \
1650 # Mark a single unit for reload. Meant to be called during %pre.
1651 %define libvirt_systemd_schedule_reload
() \
1652 mkdir -p
%{libvirt_rpmstatedir} ||
: \
1653 touch
%{libvirt_rpmstatedir}/reload
-%1 ||
: \
1656 # Reload a unit that was previously marked. Meant to be called during
1657 # %posttrans. If systemd is not running, no action will be performed.
1658 %define libvirt_systemd_perform_reload
() \
1659 if test -d
/run
/systemd
/system
&& \
1660 test -e
%{libvirt_rpmstatedir}/reload
-%1; then \
1661 /usr
/bin
/systemctl try
-reload
-or
-restart
%1 >/dev
/null
2>&1 ||
: \
1663 rm -f
%{libvirt_rpmstatedir}/reload
-%1 \
1664 rmdir %{libvirt_rpmstatedir} 2>/dev
/null ||
: \
1667 # Disable a single unit, optionally stopping it if systemd is
1668 # running. Meant to be called during %preun.
1669 %define libvirt_systemd_disable
() \
1670 if test -d
/run
/systemd
/system
; then \
1671 /usr
/bin
/systemctl
--no
-reload disable
--now
%{?*} ||
: \
1673 /usr
/bin
/systemctl
--no
-reload disable
%{?*} ||
: \
1677 # %pre implementation for services that should be restarted on
1678 # upgrade. Note that foo.service must be passed as the first
1679 # argument, before all the various foo*.socket associated with it.
1680 %define libvirt_systemd_restart_pre
() \
1681 %libvirt_systemd_schedule_preset %{?*} \
1682 %libvirt_systemd_schedule_restart %1 \
1685 # %pre implementation for services that should be reloaded on
1686 # upgrade. Note that foo.service must be passed as the first
1687 # argument, before all the various foo*.socket associated with it.
1688 %define libvirt_systemd_reload_pre
() \
1689 %libvirt_systemd_schedule_preset %{?*} \
1690 %libvirt_systemd_schedule_reload %1 \
1693 # %pre implementation for services that should be neither restarted
1694 # nor reloaded on upgrade.
1695 %define libvirt_systemd_noaction_pre
() \
1696 %libvirt_systemd_schedule_preset %{?*} \
1699 # %posttrans implementation for all services. We can use a single
1700 # macro to cover all scenarios, because each operation will only be
1701 # performed if it had previously been scheduled. Note that
1702 # foo.service must be passed as the first argument, before all the
1703 # various foo*.socket associated with it.
1704 %define libvirt_systemd_posttrans
() \
1705 %libvirt_systemd_perform_preset %{?*} \
1706 %libvirt_systemd_perform_reload %1 \
1707 %libvirt_systemd_perform_restart %1 \
1710 # %preun implementation for all services.
1711 %define libvirt_systemd_preun
() \
1712 if [ $
1 -lt
1 ]; then \
1713 %libvirt_systemd_disable %{?*} \
1717 # For daemons with only UNIX sockets
1719 %define libvirt_systemd_unix_pre
() %libvirt_systemd_restart_pre %1.service
%1.socket
%1-ro.socket
%1-admin.socket
1720 %define libvirt_systemd_unix_posttrans
() %libvirt_systemd_posttrans %1.service
%1.socket
%1-ro.socket
%1-admin.socket
1721 %define libvirt_systemd_unix_preun
() %libvirt_systemd_preun %1.service
%1.socket
%1-ro.socket
%1-admin.socket
1723 # For daemons with UNIX and INET sockets
1724 %define libvirt_systemd_inet_pre
() %libvirt_systemd_restart_pre %1.service
%1.socket
%1-ro.socket
%1-admin.socket
%1-tls.socket
%1-tcp.socket
1725 %define libvirt_systemd_inet_posttrans
() %libvirt_systemd_posttrans %1.service
%1.socket
%1-ro.socket
%1-admin.socket
%1-tls.socket
%1-tcp.socket
1726 %define libvirt_systemd_inet_preun
() %libvirt_systemd_preun %1.service
%1.socket
%1-ro.socket
%1-admin.socket
%1-tls.socket
%1-tcp.socket
1728 # For daemons with only UNIX sockets and no unprivileged read-only access
1729 %define libvirt_systemd_privileged_pre
() %libvirt_systemd_reload_pre %1.service
%1.socket
%1-admin.socket
1730 %define libvirt_systemd_privileged_posttrans
() %libvirt_systemd_posttrans %1.service
%1.socket
%1-admin.socket
1731 %define libvirt_systemd_privileged_preun
() %libvirt_systemd_preun %1.service
%1.socket
%1-admin.socket
1733 # For one-shot daemons that have no associated sockets and should never be restarted
1734 %define libvirt_systemd_oneshot_pre
() %libvirt_systemd_noaction_pre %1.service
1735 %define libvirt_systemd_oneshot_posttrans
() %libvirt_systemd_posttrans %1.service
1736 %define libvirt_systemd_oneshot_preun
() %libvirt_systemd_preun %1.service
1738 # For packages that install configuration for other daemons
1739 %define libvirt_systemd_config_pre
() %libvirt_systemd_schedule_restart %1.service
1740 %define libvirt_systemd_config_posttrans
() %libvirt_systemd_perform_restart %1.service
1744 %libvirt_sysconfig_pre libvirtd
1745 %libvirt_systemd_inet_pre libvirtd
1748 %libvirt_sysconfig_posttrans libvirtd
1749 %libvirt_systemd_inet_posttrans libvirtd
1752 %libvirt_systemd_inet_preun libvirtd
1755 %libvirt_sysconfig_pre libvirt
-guests
1756 %libvirt_systemd_oneshot_pre libvirt
-guests
1757 # 'libvirt' group is just to allow password-less polkit access to libvirt
1758 # daemons. The uid number is irrelevant, so we use dynamic allocation.
1759 getent group libvirt
>/dev
/null || groupadd
-r libvirt
1762 %posttrans daemon
-common
1763 %libvirt_sysconfig_posttrans libvirt
-guests
1764 %libvirt_systemd_oneshot_posttrans libvirt
-guests
1766 %preun daemon
-common
1767 %libvirt_systemd_oneshot_preun libvirt
-guests
1770 %libvirt_sysconfig_pre virtlockd
1771 %libvirt_systemd_privileged_pre virtlockd
1773 %posttrans daemon
-lock
1774 %libvirt_sysconfig_posttrans virtlockd
1775 %libvirt_systemd_privileged_posttrans virtlockd
1778 %libvirt_systemd_privileged_preun virtlockd
1781 %libvirt_sysconfig_pre virtlogd
1782 %libvirt_systemd_privileged_pre virtlogd
1784 %posttrans daemon
-log
1785 %libvirt_sysconfig_posttrans virtlogd
1786 %libvirt_systemd_privileged_posttrans virtlogd
1789 %libvirt_systemd_privileged_preun virtlogd
1792 %libvirt_sysconfig_pre virtproxyd
1793 %libvirt_systemd_inet_pre virtproxyd
1795 %posttrans daemon
-proxy
1796 %libvirt_sysconfig_posttrans virtproxyd
1797 %libvirt_systemd_inet_posttrans virtproxyd
1800 %libvirt_systemd_inet_preun virtproxyd
1802 %pre daemon
-driver
-network
1803 %libvirt_sysconfig_pre virtnetworkd
1804 %libvirt_systemd_unix_pre virtnetworkd
1806 %post daemon
-driver
-network
1807 %if %{with_firewalld_zone}
1811 %posttrans daemon
-driver
-network
1812 %libvirt_sysconfig_posttrans virtnetworkd
1813 %libvirt_systemd_unix_posttrans virtnetworkd
1815 %preun daemon
-driver
-network
1816 %libvirt_systemd_unix_preun virtnetworkd
1818 %postun daemon
-driver
-network
1819 %if %{with_firewalld_zone}
1823 %pre daemon
-driver
-nwfilter
1824 %libvirt_sysconfig_pre virtnwfilterd
1825 %libvirt_systemd_unix_pre virtnwfilterd
1827 %posttrans daemon
-driver
-nwfilter
1828 %libvirt_sysconfig_posttrans virtnwfilterd
1829 %libvirt_systemd_unix_posttrans virtnwfilterd
1831 %preun daemon
-driver
-nwfilter
1832 %libvirt_systemd_unix_preun virtnwfilterd
1834 %pre daemon
-driver
-nodedev
1835 %libvirt_sysconfig_pre virtnodedevd
1836 %libvirt_systemd_unix_pre virtnodedevd
1838 %posttrans daemon
-driver
-nodedev
1839 %libvirt_sysconfig_posttrans virtnodedevd
1840 %libvirt_systemd_unix_posttrans virtnodedevd
1842 %preun daemon
-driver
-nodedev
1843 %libvirt_systemd_unix_preun virtnodedevd
1845 %pre daemon
-driver
-interface
1846 %libvirt_sysconfig_pre virtinterfaced
1847 %libvirt_systemd_unix_pre virtinterfaced
1849 %posttrans daemon
-driver
-interface
1850 %libvirt_sysconfig_posttrans virtinterfaced
1851 %libvirt_systemd_unix_posttrans virtinterfaced
1853 %preun daemon
-driver
-interface
1854 %libvirt_systemd_unix_preun virtinterfaced
1856 %pre daemon
-driver
-secret
1857 %libvirt_sysconfig_pre virtsecretd
1858 %libvirt_systemd_unix_pre virtsecretd
1860 %posttrans daemon
-driver
-secret
1861 %libvirt_sysconfig_posttrans virtsecretd
1862 %libvirt_systemd_unix_posttrans virtsecretd
1864 %preun daemon
-driver
-secret
1865 %libvirt_systemd_unix_preun virtsecretd
1867 %pre daemon
-driver
-storage
-core
1868 %libvirt_sysconfig_pre virtstoraged
1869 %libvirt_systemd_unix_pre virtstoraged
1871 %posttrans daemon
-driver
-storage
-core
1872 %libvirt_sysconfig_posttrans virtstoraged
1873 %libvirt_systemd_unix_posttrans virtstoraged
1875 %preun daemon
-driver
-storage
-core
1876 %libvirt_systemd_unix_preun virtstoraged
1879 %pre daemon
-driver
-qemu
1880 %libvirt_sysconfig_pre virtqemud
1881 %libvirt_systemd_unix_pre virtqemud
1883 # We want soft static allocation of well-known ids, as disk images
1884 # are commonly shared across NFS mounts by id rather than name.
1885 # See https://docs.fedoraproject.org/en-US/packaging-guidelines/UsersAndGroups/
1886 # We can not use the sysusers_create_compat macro here as we want to keep the
1887 # specfile standalone and not relying on additionnal files.
1888 getent group 'kvm'
>/dev
/null || groupadd
-f
-g '
36'
-r 'kvm' ||
:
1889 getent group 'qemu'
>/dev
/null || groupadd
-f
-g '
107'
-r 'qemu' ||
:
1890 if ! getent passwd 'qemu'
>/dev
/null
; then
1891 if ! getent passwd '
107'
>/dev
/null
; then
1892 useradd
-r
-u '
107'
-g 'qemu'
-G 'kvm'
-d '
/'
-s '
/sbin
/nologin'
-c 'qemu user' 'qemu' ||
:
1894 useradd
-r
-g 'qemu'
-G 'kvm'
-d '
/'
-s '
/sbin
/nologin'
-c 'qemu user' 'qemu' ||
:
1899 %posttrans daemon
-driver
-qemu
1900 %libvirt_sysconfig_posttrans virtqemud
1901 %libvirt_systemd_unix_posttrans virtqemud
1903 %preun daemon
-driver
-qemu
1904 %libvirt_systemd_unix_preun virtqemud
1908 %pre daemon
-driver
-lxc
1909 %libvirt_sysconfig_pre virtlxcd
1910 %libvirt_systemd_unix_pre virtlxcd
1912 %posttrans daemon
-driver
-lxc
1913 %libvirt_sysconfig_posttrans virtlxcd
1914 %libvirt_systemd_unix_posttrans virtlxcd
1916 %preun daemon
-driver
-lxc
1917 %libvirt_systemd_unix_preun virtlxcd
1921 %pre daemon
-driver
-vbox
1922 %libvirt_sysconfig_pre virtvboxd
1923 %libvirt_systemd_unix_pre virtvboxd
1925 %posttrans daemon
-driver
-vbox
1926 %libvirt_sysconfig_posttrans virtvboxd
1927 %libvirt_systemd_unix_posttrans virtvboxd
1929 %preun daemon
-driver
-vbox
1930 %libvirt_systemd_unix_preun virtvboxd
1934 %pre daemon
-driver
-libxl
1935 %libvirt_sysconfig_pre virtxend
1936 %libvirt_systemd_unix_pre virtxend
1938 %posttrans daemon
-driver
-libxl
1939 %libvirt_sysconfig_posttrans virtxend
1940 %libvirt_systemd_unix_posttrans virtxend
1942 %preun daemon
-driver
-libxl
1943 %libvirt_systemd_unix_preun virtxend
1946 %pre daemon
-config
-network
1947 %libvirt_systemd_config_pre libvirtd
1948 %libvirt_systemd_config_pre virtnetworkd
1950 %post daemon
-config
-network
1951 if test $
1 -eq
1 && test ! -f
%{_sysconfdir}/libvirt
/qemu
/networks
/default.xml
; then
1952 # see if the network used by default network creates a conflict,
1953 # and try to resolve it
1954 # NB: 192.168.122.0/24 is used in the default.xml template file;
1955 # do not modify any of those values here without also modifying
1956 # them in the template.
1961 routes
="$
{nl
}$
(ip route show | cut
-d' '
-f1
)$
{nl
}"
1963 *"$
{nl
}192.168.$
{orig_sub
}.0/24$
{nl
}"
*)
1964 # there was a match, so we need to look for an unused subnet
1965 for new_sub
in $
(seq
124 254); do
1967 *"$
{nl
}192.168.$
{new_sub
}.0/24$
{nl
}"
*)
1980 sed
-e "s
/$
{orig_sub
}/$
{sub
}/g" \
1981 < %{_datadir}/libvirt
/networks
/default.xml \
1982 > %{_sysconfdir}/libvirt
/qemu
/networks
/default.xml
1983 ln
-s ..
/default.xml
%{_sysconfdir}/libvirt
/qemu
/networks
/autostart
/default.xml
1984 # libvirt saves this file with mode 0600
1985 chmod
0600 %{_sysconfdir}/libvirt
/qemu
/networks
/default.xml
1988 %posttrans daemon
-config
-network
1989 %libvirt_systemd_config_posttrans libvirtd
1990 %libvirt_systemd_config_posttrans virtnetworkd
1992 %pre daemon
-config
-nwfilter
1993 %libvirt_systemd_config_pre libvirtd
1994 %libvirt_systemd_config_pre virtnwfilterd
1996 %post daemon
-config
-nwfilter
1997 for datadir_file
in %{_datadir}/libvirt
/nwfilter
/*.xml
; do
1998 sysconfdir_file
=%{_sysconfdir}/libvirt
/nwfilter
/$
(basename "$datadir_file"
)
1999 if [ ! -f "$sysconfdir_file"
]; then
2000 # libvirt saves these files with mode 600
2001 install -m
0600 "$datadir_file" "$sysconfdir_file"
2005 %posttrans daemon
-config
-nwfilter
2006 %libvirt_systemd_config_posttrans libvirtd
2007 %libvirt_systemd_config_posttrans virtnwfilterd
2011 getent group virtlogin
>/dev
/null || groupadd
-r virtlogin
2020 %doc AUTHORS.rst NEWS.rst README.rst
2024 %{_unitdir}/libvirtd.service
2025 %{_unitdir}/libvirtd.socket
2026 %{_unitdir}/libvirtd
-ro.socket
2027 %{_unitdir}/libvirtd
-admin.socket
2028 %{_unitdir}/libvirtd
-tcp.socket
2029 %{_unitdir}/libvirtd
-tls.socket
2030 %config(noreplace
) %{_sysconfdir}/libvirt
/libvirtd.conf
2031 %config(noreplace
) %{_prefix}/lib
/sysctl.d
/60-libvirtd.conf
2032 %config(noreplace
) %{_sysconfdir}/logrotate.d
/libvirtd
2033 %{_datadir}/augeas
/lenses
/libvirtd.aug
2034 %{_datadir}/augeas
/lenses
/tests
/test_libvirtd.aug
2035 %attr(0755, root
, root
) %{_sbindir}/libvirtd
2036 %{_mandir}/man8
/libvirtd
.8*
2038 %files daemon
-common
2039 %{_unitdir}/virt
-guest
-shutdown.target
2040 %{_unitdir}/libvirt
-guests.service
2041 %config(noreplace
) %{_sysconfdir}/sasl2
/libvirt.conf
2042 %dir %{_datadir}/libvirt
/
2043 %ghost %dir %{_rundir}/libvirt
/
2044 %ghost %dir %{_rundir}/libvirt
/common
/
2045 %dir %attr(0755, root
, root
) %{_localstatedir}/lib
/libvirt
/
2046 %dir %attr(0711, root
, root
) %{_localstatedir}/lib
/libvirt
/images
/
2047 %dir %attr(0711, root
, root
) %{_localstatedir}/lib
/libvirt
/filesystems
/
2048 %dir %attr(0711, root
, root
) %{_localstatedir}/lib
/libvirt
/boot
/
2049 %dir %attr(0711, root
, root
) %{_localstatedir}/cache
/libvirt
/
2050 %dir %attr(0755, root
, root
) %{_libdir}/libvirt
/
2051 %dir %attr(0755, root
, root
) %{_libdir}/libvirt
/connection
-driver
/
2052 %dir %attr(0755, root
, root
) %{_libdir}/libvirt
/storage
-backend
/
2053 %dir %attr(0755, root
, root
) %{_libdir}/libvirt
/storage
-file
/
2054 %{_datadir}/polkit
-1/actions
/org.libvirt.unix.policy
2055 %{_datadir}/polkit
-1/actions
/org.libvirt.api.policy
2056 %{_datadir}/polkit
-1/rules.d
/50-libvirt.rules
2057 %dir %attr(0700, root
, root
) %{_localstatedir}/log
/libvirt
/
2058 %attr(0755, root
, root
) %{_libexecdir}/libvirt_iohelper
2059 %attr(0755, root
, root
) %{_bindir}/virt
-ssh
-helper
2060 %attr(0755, root
, root
) %{_libexecdir}/libvirt
-guests.sh
2061 %{_mandir}/man1
/virt
-admin
.1*
2062 %{_mandir}/man1
/virt
-host
-validate
.1*
2063 %{_mandir}/man8
/virt
-ssh
-helper
.8*
2064 %{_mandir}/man8
/libvirt
-guests
.8*
2065 %{_bindir}/virt
-host
-validate
2066 %{_bindir}/virt
-admin
2067 %{_datadir}/bash
-completion
/completions
/virt
-admin
2070 %{_unitdir}/virtlockd.service
2071 %{_unitdir}/virtlockd.socket
2072 %{_unitdir}/virtlockd
-admin.socket
2073 %config(noreplace
) %{_sysconfdir}/libvirt
/virtlockd.conf
2074 %{_datadir}/augeas
/lenses
/virtlockd.aug
2075 %{_datadir}/augeas
/lenses
/tests
/test_virtlockd.aug
2076 %{_datadir}/augeas
/lenses
/libvirt_lockd.aug
2078 %{_datadir}/augeas
/lenses
/tests
/test_libvirt_lockd.aug
2080 %attr(0755, root
, root
) %{_sbindir}/virtlockd
2081 %{_mandir}/man8
/virtlockd
.8*
2083 %files daemon
-plugin
-lockd
2084 %dir %attr(0755, root
, root
) %{_libdir}/libvirt
/lock
-driver
/
2085 %attr(0755, root
, root
) %{_libdir}/libvirt
/lock
-driver
/lockd.so
2088 %{_unitdir}/virtlogd.service
2089 %{_unitdir}/virtlogd.socket
2090 %{_unitdir}/virtlogd
-admin.socket
2091 %config(noreplace
) %{_sysconfdir}/libvirt
/virtlogd.conf
2092 %{_datadir}/augeas
/lenses
/virtlogd.aug
2093 %{_datadir}/augeas
/lenses
/tests
/test_virtlogd.aug
2094 %attr(0755, root
, root
) %{_sbindir}/virtlogd
2095 %{_mandir}/man8
/virtlogd
.8*
2098 %{_unitdir}/virtproxyd.service
2099 %{_unitdir}/virtproxyd.socket
2100 %{_unitdir}/virtproxyd
-ro.socket
2101 %{_unitdir}/virtproxyd
-admin.socket
2102 %{_unitdir}/virtproxyd
-tcp.socket
2103 %{_unitdir}/virtproxyd
-tls.socket
2104 %config(noreplace
) %{_sysconfdir}/libvirt
/virtproxyd.conf
2105 %{_datadir}/augeas
/lenses
/virtproxyd.aug
2106 %{_datadir}/augeas
/lenses
/tests
/test_virtproxyd.aug
2107 %attr(0755, root
, root
) %{_sbindir}/virtproxyd
2108 %{_mandir}/man8
/virtproxyd
.8*
2110 %files daemon
-config
-network
2111 %dir %{_datadir}/libvirt
/networks
/
2112 %{_datadir}/libvirt
/networks
/default.xml
2113 %ghost %{_sysconfdir}/libvirt
/qemu
/networks
/default.xml
2114 %ghost %{_sysconfdir}/libvirt
/qemu
/networks
/autostart
/default.xml
2116 %files daemon
-config
-nwfilter
2117 %dir %{_datadir}/libvirt
/nwfilter
/
2118 %{_datadir}/libvirt
/nwfilter
/*.xml
2119 %ghost %{_sysconfdir}/libvirt
/nwfilter
/*.xml
2121 %files daemon
-driver
-interface
2122 %config(noreplace
) %{_sysconfdir}/libvirt
/virtinterfaced.conf
2123 %{_datadir}/augeas
/lenses
/virtinterfaced.aug
2124 %{_datadir}/augeas
/lenses
/tests
/test_virtinterfaced.aug
2125 %{_unitdir}/virtinterfaced.service
2126 %{_unitdir}/virtinterfaced.socket
2127 %{_unitdir}/virtinterfaced
-ro.socket
2128 %{_unitdir}/virtinterfaced
-admin.socket
2129 %attr(0755, root
, root
) %{_sbindir}/virtinterfaced
2130 %ghost %dir %{_rundir}/libvirt
/interface
/
2131 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_interface.so
2132 %{_mandir}/man8
/virtinterfaced
.8*
2134 %files daemon
-driver
-network
2135 %config(noreplace
) %{_sysconfdir}/libvirt
/virtnetworkd.conf
2136 %{_datadir}/augeas
/lenses
/virtnetworkd.aug
2137 %{_datadir}/augeas
/lenses
/tests
/test_virtnetworkd.aug
2138 %config(noreplace
) %{_sysconfdir}/libvirt
/network.conf
2139 %{_datadir}/augeas
/lenses
/libvirtd_network.aug
2140 %{_datadir}/augeas
/lenses
/tests
/test_libvirtd_network.aug
2141 %{_unitdir}/virtnetworkd.service
2142 %{_unitdir}/virtnetworkd.socket
2143 %{_unitdir}/virtnetworkd
-ro.socket
2144 %{_unitdir}/virtnetworkd
-admin.socket
2145 %attr(0755, root
, root
) %{_sbindir}/virtnetworkd
2146 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/qemu
/
2147 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/qemu
/networks
/
2148 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/qemu
/networks
/autostart
2149 %ghost %dir %{_rundir}/libvirt
/network
/
2150 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/network
/
2151 %dir %attr(0755, root
, root
) %{_localstatedir}/lib
/libvirt
/dnsmasq
/
2152 %attr(0755, root
, root
) %{_libexecdir}/libvirt_leaseshelper
2153 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_network.so
2154 %{_mandir}/man8
/virtnetworkd
.8*
2155 %if %{with_firewalld_zone}
2156 %{_prefix}/lib
/firewalld
/zones
/libvirt.xml
2157 %{_prefix}/lib
/firewalld
/zones
/libvirt
-routed.xml
2158 %{_prefix}/lib
/firewalld
/policies
/libvirt
-routed
-in.xml
2159 %{_prefix}/lib
/firewalld
/policies
/libvirt
-routed
-out.xml
2160 %{_prefix}/lib
/firewalld
/policies
/libvirt
-to
-host.xml
2163 %files daemon
-driver
-nodedev
2164 %config(noreplace
) %{_sysconfdir}/libvirt
/virtnodedevd.conf
2165 %{_datadir}/augeas
/lenses
/virtnodedevd.aug
2166 %{_datadir}/augeas
/lenses
/tests
/test_virtnodedevd.aug
2167 %{_unitdir}/virtnodedevd.service
2168 %{_unitdir}/virtnodedevd.socket
2169 %{_unitdir}/virtnodedevd
-ro.socket
2170 %{_unitdir}/virtnodedevd
-admin.socket
2171 %attr(0755, root
, root
) %{_sbindir}/virtnodedevd
2172 %ghost %dir %{_rundir}/libvirt
/nodedev
/
2173 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_nodedev.so
2174 %{_mandir}/man8
/virtnodedevd
.8*
2176 %files daemon
-driver
-nwfilter
2177 %config(noreplace
) %{_sysconfdir}/libvirt
/virtnwfilterd.conf
2178 %{_datadir}/augeas
/lenses
/virtnwfilterd.aug
2179 %{_datadir}/augeas
/lenses
/tests
/test_virtnwfilterd.aug
2180 %{_unitdir}/virtnwfilterd.service
2181 %{_unitdir}/virtnwfilterd.socket
2182 %{_unitdir}/virtnwfilterd
-ro.socket
2183 %{_unitdir}/virtnwfilterd
-admin.socket
2184 %attr(0755, root
, root
) %{_sbindir}/virtnwfilterd
2185 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/nwfilter
/
2186 %ghost %dir %{_rundir}/libvirt
/network
/
2187 %ghost %dir %{_rundir}/libvirt
/nwfilter
-binding
/
2188 %ghost %dir %{_rundir}/libvirt
/nwfilter
/
2189 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_nwfilter.so
2190 %{_mandir}/man8
/virtnwfilterd
.8*
2192 %files daemon
-driver
-secret
2193 %config(noreplace
) %{_sysconfdir}/libvirt
/virtsecretd.conf
2194 %{_datadir}/augeas
/lenses
/virtsecretd.aug
2195 %{_datadir}/augeas
/lenses
/tests
/test_virtsecretd.aug
2196 %{_unitdir}/virtsecretd.service
2197 %{_unitdir}/virtsecretd.socket
2198 %{_unitdir}/virtsecretd
-ro.socket
2199 %{_unitdir}/virtsecretd
-admin.socket
2200 %attr(0755, root
, root
) %{_sbindir}/virtsecretd
2201 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/secrets
/
2202 %ghost %dir %{_rundir}/libvirt
/secrets
/
2203 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_secret.so
2204 %{_mandir}/man8
/virtsecretd
.8*
2206 %files daemon
-driver
-storage
2208 %files daemon
-driver
-storage
-core
2209 %config(noreplace
) %{_sysconfdir}/libvirt
/virtstoraged.conf
2210 %{_datadir}/augeas
/lenses
/virtstoraged.aug
2211 %{_datadir}/augeas
/lenses
/tests
/test_virtstoraged.aug
2212 %{_unitdir}/virtstoraged.service
2213 %{_unitdir}/virtstoraged.socket
2214 %{_unitdir}/virtstoraged
-ro.socket
2215 %{_unitdir}/virtstoraged
-admin.socket
2216 %attr(0755, root
, root
) %{_sbindir}/virtstoraged
2217 %attr(0755, root
, root
) %{_libexecdir}/libvirt_parthelper
2218 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/storage
/
2219 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/storage
/autostart
/
2220 %ghost %dir %{_rundir}/libvirt
/storage
/
2221 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_storage.so
2222 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_fs.so
2223 %{_libdir}/libvirt
/storage
-file
/libvirt_storage_file_fs.so
2224 %{_mandir}/man8
/virtstoraged
.8*
2226 %files daemon
-driver
-storage
-disk
2227 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_disk.so
2229 %files daemon
-driver
-storage
-logical
2230 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_logical.so
2232 %files daemon
-driver
-storage
-scsi
2233 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_scsi.so
2235 %files daemon
-driver
-storage
-iscsi
2236 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_iscsi.so
2238 %if %{with_storage_iscsi_direct}
2239 %files daemon
-driver
-storage
-iscsi
-direct
2240 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_iscsi
-direct.so
2243 %files daemon
-driver
-storage
-mpath
2244 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_mpath.so
2246 %if %{with_storage_gluster}
2247 %files daemon
-driver
-storage
-gluster
2248 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_gluster.so
2249 %{_libdir}/libvirt
/storage
-file
/libvirt_storage_file_gluster.so
2252 %if %{with_storage_rbd}
2253 %files daemon
-driver
-storage
-rbd
2254 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_rbd.so
2257 %if %{with_storage_zfs}
2258 %files daemon
-driver
-storage
-zfs
2259 %{_libdir}/libvirt
/storage
-backend
/libvirt_storage_backend_zfs.so
2263 %files daemon
-driver
-qemu
2264 %config(noreplace
) %{_sysconfdir}/libvirt
/virtqemud.conf
2265 %if %{with_userfaultfd_sysctl}
2266 %config(noreplace
) %{_prefix}/lib
/sysctl.d
/60-qemu
-postcopy
-migration.conf
2268 %{_datadir}/augeas
/lenses
/virtqemud.aug
2269 %{_datadir}/augeas
/lenses
/tests
/test_virtqemud.aug
2270 %{_unitdir}/virtqemud.service
2271 %{_unitdir}/virtqemud.socket
2272 %{_unitdir}/virtqemud
-ro.socket
2273 %{_unitdir}/virtqemud
-admin.socket
2274 %attr(0755, root
, root
) %{_sbindir}/virtqemud
2275 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/qemu
/
2276 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/qemu
/autostart
/
2277 %dir %attr(0700, root
, root
) %{_localstatedir}/log
/libvirt
/qemu
/
2278 %config(noreplace
) %{_sysconfdir}/libvirt
/qemu.conf
2279 %config(noreplace
) %{_sysconfdir}/libvirt
/qemu
-lockd.conf
2280 %config(noreplace
) %{_sysconfdir}/logrotate.d
/libvirtd.qemu
2281 %ghost %dir %{_rundir}/libvirt
/qemu
/
2282 %ghost %dir %{_rundir}/libvirt
/qemu
/dbus
/
2283 %ghost %dir %{_rundir}/libvirt
/qemu
/passt
/
2284 %ghost %dir %{_rundir}/libvirt
/qemu
/slirp
/
2285 %ghost %dir %{_rundir}/libvirt
/qemu
/swtpm
/
2286 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/
2287 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/checkpoint
/
2288 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/dump
/
2289 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/nvram
/
2290 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/ram
/
2291 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/save
/
2292 %dir %attr(0751, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib
/libvirt
/qemu
/snapshot
/
2293 %dir %attr(0750, root
, root
) %{_localstatedir}/cache
/libvirt
/qemu
/
2294 %{_datadir}/augeas
/lenses
/libvirtd_qemu.aug
2295 %{_datadir}/augeas
/lenses
/tests
/test_libvirtd_qemu.aug
2296 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_qemu.so
2297 %dir %attr(0711, root
, root
) %{_localstatedir}/lib
/libvirt
/swtpm
/
2298 %dir %attr(0730, tss
, tss
) %{_localstatedir}/log
/swtpm
/libvirt
/qemu
/
2299 %{_bindir}/virt
-qemu
-run
2300 %{_mandir}/man1
/virt
-qemu
-run
.1*
2301 %{_mandir}/man8
/virtqemud
.8*
2302 %{_sysusersdir}/libvirt
-qemu.conf
2306 %files daemon
-driver
-lxc
2307 %config(noreplace
) %{_sysconfdir}/libvirt
/virtlxcd.conf
2308 %{_datadir}/augeas
/lenses
/virtlxcd.aug
2309 %{_datadir}/augeas
/lenses
/tests
/test_virtlxcd.aug
2310 %{_unitdir}/virtlxcd.service
2311 %{_unitdir}/virtlxcd.socket
2312 %{_unitdir}/virtlxcd
-ro.socket
2313 %{_unitdir}/virtlxcd
-admin.socket
2314 %attr(0755, root
, root
) %{_sbindir}/virtlxcd
2315 %dir %attr(0700, root
, root
) %{_localstatedir}/log
/libvirt
/lxc
/
2316 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/lxc
/
2317 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/lxc
/autostart
/
2318 %config(noreplace
) %{_sysconfdir}/libvirt
/lxc.conf
2319 %config(noreplace
) %{_sysconfdir}/logrotate.d
/libvirtd.lxc
2320 %ghost %dir %{_rundir}/libvirt
/lxc
/
2321 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/lxc
/
2322 %{_datadir}/augeas
/lenses
/libvirtd_lxc.aug
2323 %{_datadir}/augeas
/lenses
/tests
/test_libvirtd_lxc.aug
2324 %attr(0755, root
, root
) %{_libexecdir}/libvirt_lxc
2325 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_lxc.so
2326 %{_mandir}/man8
/virtlxcd
.8*
2330 %files daemon
-driver
-libxl
2331 %config(noreplace
) %{_sysconfdir}/libvirt
/virtxend.conf
2332 %{_datadir}/augeas
/lenses
/virtxend.aug
2333 %{_datadir}/augeas
/lenses
/tests
/test_virtxend.aug
2334 %{_unitdir}/virtxend.service
2335 %{_unitdir}/virtxend.socket
2336 %{_unitdir}/virtxend
-ro.socket
2337 %{_unitdir}/virtxend
-admin.socket
2338 %attr(0755, root
, root
) %{_sbindir}/virtxend
2339 %config(noreplace
) %{_sysconfdir}/libvirt
/libxl.conf
2340 %config(noreplace
) %{_sysconfdir}/logrotate.d
/libvirtd.libxl
2341 %config(noreplace
) %{_sysconfdir}/libvirt
/libxl
-lockd.conf
2342 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/libxl
/
2343 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/libxl
/autostart
/
2344 %{_datadir}/augeas
/lenses
/libvirtd_libxl.aug
2345 %{_datadir}/augeas
/lenses
/tests
/test_libvirtd_libxl.aug
2346 %dir %attr(0700, root
, root
) %{_localstatedir}/log
/libvirt
/libxl
/
2347 %ghost %dir %{_rundir}/libvirt
/libxl
/
2348 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/libxl
/
2349 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/libxl
/channel
/
2350 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/libxl
/channel
/target
/
2351 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/libxl
/dump
/
2352 %dir %attr(0700, root
, root
) %{_localstatedir}/lib
/libvirt
/libxl
/save
/
2353 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_libxl.so
2354 %{_mandir}/man8
/virtxend
.8*
2358 %files daemon
-driver
-vbox
2359 %config(noreplace
) %{_sysconfdir}/libvirt
/virtvboxd.conf
2360 %{_datadir}/augeas
/lenses
/virtvboxd.aug
2361 %{_datadir}/augeas
/lenses
/tests
/test_virtvboxd.aug
2362 %{_unitdir}/virtvboxd.service
2363 %{_unitdir}/virtvboxd.socket
2364 %{_unitdir}/virtvboxd
-ro.socket
2365 %{_unitdir}/virtvboxd
-admin.socket
2366 %attr(0755, root
, root
) %{_sbindir}/virtvboxd
2367 %{_libdir}/libvirt
/connection
-driver
/libvirt_driver_vbox.so
2368 %{_mandir}/man8
/virtvboxd
.8*
2371 %if %{with_qemu_tcg}
2375 %if %{with_qemu_kvm}
2392 %files daemon
-plugin
-sanlock
2394 %config(noreplace
) %{_sysconfdir}/libvirt
/qemu
-sanlock.conf
2397 %config(noreplace
) %{_sysconfdir}/libvirt
/libxl
-sanlock.conf
2399 %dir %attr(0755, root
, root
) %{_libdir}/libvirt
/lock
-driver
/
2400 %attr(0755, root
, root
) %{_libdir}/libvirt
/lock
-driver
/sanlock.so
2401 %{_datadir}/augeas
/lenses
/libvirt_sanlock.aug
2402 %{_datadir}/augeas
/lenses
/tests
/test_libvirt_sanlock.aug
2403 %dir %attr(0770, root
, sanlock
) %{_localstatedir}/lib
/libvirt
/sanlock
2404 %{_sbindir}/virt
-sanlock
-cleanup
2405 %{_mandir}/man8
/virt
-sanlock
-cleanup
.8*
2406 %attr(0755, root
, root
) %{_libexecdir}/libvirt_sanlock_helper
2410 %{_mandir}/man1
/virsh
.1*
2411 %{_mandir}/man1
/virt
-xml
-validate
.1*
2412 %{_mandir}/man1
/virt
-pki
-query
-dn
.1*
2413 %{_mandir}/man1
/virt
-pki
-validate
.1*
2414 %{_mandir}/man7
/virkey
*.7*
2416 %{_bindir}/virt
-xml
-validate
2417 %{_bindir}/virt
-pki
-query
-dn
2418 %{_bindir}/virt
-pki
-validate
2419 %{_datadir}/bash
-completion
/completions
/virsh
2423 %{_mandir}/man1
/virt
-qemu
-qmp
-proxy
.1*
2424 %{_mandir}/man1
/virt
-qemu
-sev
-validate
.1*
2425 %{_bindir}/virt
-qemu
-qmp
-proxy
2426 %{_bindir}/virt
-qemu
-sev
-validate
2429 %files libs
-f
%{name}.lang
2430 %license COPYING COPYING.LESSER
2431 %dir %attr(0700, root
, root
) %{_sysconfdir}/libvirt
/
2432 %config(noreplace
) %{_sysconfdir}/libvirt
/libvirt.conf
2433 %config(noreplace
) %{_sysconfdir}/libvirt
/libvirt
-admin.conf
2434 %{_libdir}/libvirt.so.
*
2435 %{_libdir}/libvirt
-qemu.so.
*
2436 %{_libdir}/libvirt
-lxc.so.
*
2437 %{_libdir}/libvirt
-admin.so.
*
2438 %dir %{_datadir}/libvirt
/
2439 %dir %{_datadir}/libvirt
/schemas
/
2440 %{_datadir}/systemtap
/tapset
/libvirt_probes
*.stp
2441 %{_datadir}/systemtap
/tapset
/libvirt_functions.stp
2443 %{_datadir}/systemtap
/tapset
/libvirt_qemu_probes
*.stp
2445 %{_datadir}/libvirt
/schemas
/*.rng
2446 %{_datadir}/libvirt
/cpu_map
/*.xml
2447 %{_datadir}/libvirt
/test-screenshot.png
2449 %if %{with_wireshark}
2451 %{wireshark_plugindir}/libvirt.so
2455 %{_libdir}/libnss_libvirt.so
.2
2456 %{_libdir}/libnss_libvirt_guest.so
.2
2459 %config(noreplace
) %{_sysconfdir}/ssh
/ssh_config.d
/30-libvirt
-ssh
-proxy.conf
2460 %{_libexecdir}/libvirt
-ssh
-proxy
2464 %attr(4750, root
, virtlogin
) %{_bindir}/virt
-login
-shell
2465 %{_libexecdir}/virt
-login
-shell
-helper
2466 %config(noreplace
) %{_sysconfdir}/libvirt
/virt
-login
-shell.conf
2467 %{_mandir}/man1
/virt
-login
-shell
.1*
2471 %{_libdir}/libvirt.so
2472 %{_libdir}/libvirt
-admin.so
2473 %{_libdir}/libvirt
-qemu.so
2474 %{_libdir}/libvirt
-lxc.so
2475 %dir %{_includedir}/libvirt
2476 %{_includedir}/libvirt
/virterror.h
2477 %{_includedir}/libvirt
/libvirt.h
2478 %{_includedir}/libvirt
/libvirt
-admin.h
2479 %{_includedir}/libvirt
/libvirt
-common.h
2480 %{_includedir}/libvirt
/libvirt
-domain.h
2481 %{_includedir}/libvirt
/libvirt
-domain
-checkpoint.h
2482 %{_includedir}/libvirt
/libvirt
-domain
-snapshot.h
2483 %{_includedir}/libvirt
/libvirt
-event.h
2484 %{_includedir}/libvirt
/libvirt
-host.h
2485 %{_includedir}/libvirt
/libvirt
-interface.h
2486 %{_includedir}/libvirt
/libvirt
-network.h
2487 %{_includedir}/libvirt
/libvirt
-nodedev.h
2488 %{_includedir}/libvirt
/libvirt
-nwfilter.h
2489 %{_includedir}/libvirt
/libvirt
-secret.h
2490 %{_includedir}/libvirt
/libvirt
-storage.h
2491 %{_includedir}/libvirt
/libvirt
-stream.h
2492 %{_includedir}/libvirt
/libvirt
-qemu.h
2493 %{_includedir}/libvirt
/libvirt
-lxc.h
2494 %{_libdir}/pkgconfig
/libvirt.pc
2495 %{_libdir}/pkgconfig
/libvirt
-admin.pc
2496 %{_libdir}/pkgconfig
/libvirt
-qemu.pc
2497 %{_libdir}/pkgconfig
/libvirt
-lxc.pc
2498 %dir %{_datadir}/libvirt
/api
/
2499 %{_datadir}/libvirt
/api
/libvirt
-api.xml
2500 %{_datadir}/libvirt
/api
/libvirt
-admin
-api.xml
2501 %{_datadir}/libvirt
/api
/libvirt
-qemu
-api.xml
2502 %{_datadir}/libvirt
/api
/libvirt
-lxc
-api.xml
2506 %files -n mingw32
-libvirt
-f mingw32
-libvirt.lang
2507 %dir %{mingw32_sysconfdir}/libvirt
/
2508 %config(noreplace
) %{mingw32_sysconfdir}/libvirt
/libvirt.conf
2509 %config(noreplace
) %{mingw32_sysconfdir}/libvirt
/libvirt
-admin.conf
2510 %{mingw32_bindir}/libvirt
-0.dll
2511 %{mingw32_bindir}/virsh.exe
2512 %{mingw32_bindir}/virt
-admin.exe
2513 %{mingw32_bindir}/virt
-xml
-validate
2514 %{mingw32_bindir}/virt
-pki
-query
-dn.exe
2515 %{mingw32_bindir}/virt
-pki
-validate.exe
2516 %{mingw32_bindir}/libvirt
-lxc
-0.dll
2517 %{mingw32_bindir}/libvirt
-qemu
-0.dll
2518 %{mingw32_bindir}/libvirt
-admin
-0.dll
2519 %{mingw32_libdir}/libvirt.dll.a
2520 %{mingw32_libdir}/pkgconfig
/libvirt.pc
2521 %{mingw32_libdir}/pkgconfig
/libvirt
-qemu.pc
2522 %{mingw32_libdir}/pkgconfig
/libvirt
-lxc.pc
2523 %{mingw32_libdir}/pkgconfig
/libvirt
-admin.pc
2524 %{mingw32_libdir}/libvirt
-lxc.dll.a
2525 %{mingw32_libdir}/libvirt
-qemu.dll.a
2526 %{mingw32_libdir}/libvirt
-admin.dll.a
2527 %dir %{mingw32_datadir}/libvirt
/
2528 %dir %{mingw32_datadir}/libvirt
/schemas
/
2529 %{mingw32_datadir}/libvirt
/schemas
/*.rng
2530 %dir %{mingw32_datadir}/libvirt
/api
/
2531 %{mingw32_datadir}/libvirt
/api
/libvirt
-api.xml
2532 %{mingw32_datadir}/libvirt
/api
/libvirt
-lxc
-api.xml
2533 %{mingw32_datadir}/libvirt
/api
/libvirt
-qemu
-api.xml
2534 %{mingw32_datadir}/libvirt
/api
/libvirt
-admin
-api.xml
2535 %{mingw32_datadir}/libvirt
/cpu_map
/*.xml
2536 %{mingw32_datadir}/libvirt
/test-screenshot.png
2537 %dir %{mingw32_includedir}/libvirt
2538 %{mingw32_includedir}/libvirt
/libvirt.h
2539 %{mingw32_includedir}/libvirt
/libvirt
-common.h
2540 %{mingw32_includedir}/libvirt
/libvirt
-domain.h
2541 %{mingw32_includedir}/libvirt
/libvirt
-domain
-checkpoint.h
2542 %{mingw32_includedir}/libvirt
/libvirt
-domain
-snapshot.h
2543 %{mingw32_includedir}/libvirt
/libvirt
-event.h
2544 %{mingw32_includedir}/libvirt
/libvirt
-host.h
2545 %{mingw32_includedir}/libvirt
/libvirt
-interface.h
2546 %{mingw32_includedir}/libvirt
/libvirt
-network.h
2547 %{mingw32_includedir}/libvirt
/libvirt
-nodedev.h
2548 %{mingw32_includedir}/libvirt
/libvirt
-nwfilter.h
2549 %{mingw32_includedir}/libvirt
/libvirt
-secret.h
2550 %{mingw32_includedir}/libvirt
/libvirt
-storage.h
2551 %{mingw32_includedir}/libvirt
/libvirt
-stream.h
2552 %{mingw32_includedir}/libvirt
/virterror.h
2553 %{mingw32_includedir}/libvirt
/libvirt
-lxc.h
2554 %{mingw32_includedir}/libvirt
/libvirt
-qemu.h
2555 %{mingw32_includedir}/libvirt
/libvirt
-admin.h
2556 %{mingw32_mandir}/man1
/virsh
.1*
2557 %{mingw32_mandir}/man1
/virt
-admin
.1*
2558 %{mingw32_mandir}/man1
/virt
-xml
-validate
.1*
2559 %{mingw32_mandir}/man1
/virt
-pki
-query
-dn
.1*
2560 %{mingw32_mandir}/man1
/virt
-pki
-validate
.1*
2561 %{mingw32_mandir}/man7
/virkey
*.7*
2565 %files -n mingw64
-libvirt
-f mingw64
-libvirt.lang
2566 %dir %{mingw64_sysconfdir}/libvirt
/
2567 %config(noreplace
) %{mingw64_sysconfdir}/libvirt
/libvirt.conf
2568 %config(noreplace
) %{mingw64_sysconfdir}/libvirt
/libvirt
-admin.conf
2569 %{mingw64_bindir}/libvirt
-0.dll
2570 %{mingw64_bindir}/virsh.exe
2571 %{mingw64_bindir}/virt
-admin.exe
2572 %{mingw64_bindir}/virt
-xml
-validate
2573 %{mingw64_bindir}/virt
-pki
-query
-dn.exe
2574 %{mingw64_bindir}/virt
-pki
-validate.exe
2575 %{mingw64_bindir}/libvirt
-lxc
-0.dll
2576 %{mingw64_bindir}/libvirt
-qemu
-0.dll
2577 %{mingw64_bindir}/libvirt
-admin
-0.dll
2578 %{mingw64_libdir}/libvirt.dll.a
2579 %{mingw64_libdir}/pkgconfig
/libvirt.pc
2580 %{mingw64_libdir}/pkgconfig
/libvirt
-qemu.pc
2581 %{mingw64_libdir}/pkgconfig
/libvirt
-lxc.pc
2582 %{mingw64_libdir}/pkgconfig
/libvirt
-admin.pc
2583 %{mingw64_libdir}/libvirt
-lxc.dll.a
2584 %{mingw64_libdir}/libvirt
-qemu.dll.a
2585 %{mingw64_libdir}/libvirt
-admin.dll.a
2586 %dir %{mingw64_datadir}/libvirt
/
2587 %dir %{mingw64_datadir}/libvirt
/schemas
/
2588 %{mingw64_datadir}/libvirt
/schemas
/*.rng
2589 %dir %{mingw64_datadir}/libvirt
/api
/
2590 %{mingw64_datadir}/libvirt
/api
/libvirt
-api.xml
2591 %{mingw64_datadir}/libvirt
/api
/libvirt
-lxc
-api.xml
2592 %{mingw64_datadir}/libvirt
/api
/libvirt
-qemu
-api.xml
2593 %{mingw64_datadir}/libvirt
/api
/libvirt
-admin
-api.xml
2594 %{mingw64_datadir}/libvirt
/cpu_map
/*.xml
2595 %{mingw64_datadir}/libvirt
/test-screenshot.png
2596 %dir %{mingw64_includedir}/libvirt
2597 %{mingw64_includedir}/libvirt
/libvirt.h
2598 %{mingw64_includedir}/libvirt
/libvirt
-common.h
2599 %{mingw64_includedir}/libvirt
/libvirt
-domain.h
2600 %{mingw64_includedir}/libvirt
/libvirt
-domain
-checkpoint.h
2601 %{mingw64_includedir}/libvirt
/libvirt
-domain
-snapshot.h
2602 %{mingw64_includedir}/libvirt
/libvirt
-event.h
2603 %{mingw64_includedir}/libvirt
/libvirt
-host.h
2604 %{mingw64_includedir}/libvirt
/libvirt
-interface.h
2605 %{mingw64_includedir}/libvirt
/libvirt
-network.h
2606 %{mingw64_includedir}/libvirt
/libvirt
-nodedev.h
2607 %{mingw64_includedir}/libvirt
/libvirt
-nwfilter.h
2608 %{mingw64_includedir}/libvirt
/libvirt
-secret.h
2609 %{mingw64_includedir}/libvirt
/libvirt
-storage.h
2610 %{mingw64_includedir}/libvirt
/libvirt
-stream.h
2611 %{mingw64_includedir}/libvirt
/virterror.h
2612 %{mingw64_includedir}/libvirt
/libvirt
-lxc.h
2613 %{mingw64_includedir}/libvirt
/libvirt
-qemu.h
2614 %{mingw64_includedir}/libvirt
/libvirt
-admin.h
2615 %{mingw64_mandir}/man1
/virsh
.1*
2616 %{mingw64_mandir}/man1
/virt
-admin
.1*
2617 %{mingw64_mandir}/man1
/virt
-xml
-validate
.1*
2618 %{mingw64_mandir}/man1
/virt
-pki
-query
-dn
.1*
2619 %{mingw64_mandir}/man1
/virt
-pki
-validate
.1*
2620 %{mingw64_mandir}/man7
/virkey
*.7*