]> TLD Linux GIT Repositories - packages/libvirt.git/blob - libvirt.spec
c7dedb92a49b778ff42bacb6ddc40d796a565f49
[packages/libvirt.git] / libvirt.spec
1 # TODO:
2 # - parallels-sdk >= 7.0.22?
3 # - virtuozzo storage?
4 # - mdevctl
5 # - mm-ctl (https://github.com/tfukushima/mm-ctl ?)
6 # - numad (https://pagure.io/numad/ or https://github.com/yhaenggi/numad/releases ?)
7 # - vstorage, vstorage-mount
8 # - package firewalld zone definition (see files)
9 #
10 # Conditional build:
11 # - virtualization
12 %bcond_without  ch              # Cloud-Hypervisor support
13 %bcond_without  esx             # VMware ESX support
14 %bcond_without  hyperv          # Hyper-V support
15 %bcond_without  libxl           # libxenlight support
16 %bcond_without  lxc             # LXC support
17 %bcond_without  openvz          # OpenVZ support
18 %bcond_without  phyp            # PHYP support
19 %bcond_without  qemu            # Qemu support
20 %bcond_without  vbox            # VirtualBox support
21 %bcond_without  vmware          # VMware Workstation/Player support
22 # - storage
23 %bcond_with     ceph            # RADOS BD (Ceph) storage support
24 %bcond_without  glusterfs       # GlusterFS storage support
25 # - storage locking
26 %bcond_without  sanlock         # sanlock storage lock manager
27 # - other
28 %bcond_without  apparmor        # apparmor support
29 %bcond_without  netcf           # host interfaces support
30 %bcond_without  polkit          # PolicyKit support
31 %bcond_without  systemtap       # systemtap/dtrace probes
32 %bcond_with     wireshark       # wireshark dissector module
33 %bcond_without  zfs             # ZFS storage support
34 %bcond_without  static_libs     # static libraries build
35
36 # qemu available only on x86, arm and ppc
37 %ifnarch %{ix86} %{x8664} x32 aarch64 ppc
38 %undefine       with_qemu
39 %endif
40
41 # Xen supported architectures
42 %ifnarch %{ix86} %{x8664} %{arm} aarch64
43 %undefine       with_libxl
44 %endif
45
46 # Cloud-Hypervisor is available only on x86_64
47 %ifnarch %{x8664}
48 %undefine       with_ch
49 %endif
50
51 # ceph >= 14.0 no longer support 32-bit archs
52 %ifarch %{ix86}
53 %undefine       with_ceph
54 %endif
55
56 Summary:        Toolkit to interact with virtualization capabilities
57 Summary(pl.UTF-8):      Narzędzia współpracujące z funkcjami wirtualizacji
58 Name:           libvirt
59 Version:        10.4.0
60 Release:        1
61 License:        LGPL v2.1+
62 Group:          Libraries
63 Source0:        https://download.libvirt.org/libvirt-%{version}.tar.xz
64 # Source0-md5:  446cbe5e81c8cce8b6830b93a0c7b2ee
65 Source1:        libvirtd.init
66 Source2:        virtlockd.init
67 Source3:        virtlogd.init
68 Source4:        libvirt-guests.init
69 Source5:        libvirtd.sysconfig
70 Source6:        virtlockd.sysconfig
71 Source7:        virtlogd.sysconfig
72 Source8:        libvirt-guests.sysconfig
73 Patch0:         %{name}-sasl.patch
74 Patch1:         %{name}-qemu-acl.patch
75 Patch2:         %{name}-udevadm-settle.patch
76 Patch3:         bashisms.patch
77 Patch4:         %{name}-sysctl-dir.patch
78 URL:            https://www.libvirt.org/
79 BuildRequires:  acl-devel
80 BuildRequires:  attr-devel
81 BuildRequires:  audit-libs-devel
82 BuildRequires:  augeas-devel
83 BuildRequires:  autoconf >= 2.50
84 BuildRequires:  automake
85 BuildRequires:  bash-completion-devel >= 1:2.0
86 %{?with_ceph:BuildRequires:     ceph-devel}
87 BuildRequires:  curl-devel >= 7.19.1
88 BuildRequires:  cyrus-sasl-devel >= 2.1.26
89 BuildRequires:  dbus-devel >= 1.0.0
90 BuildRequires:  device-mapper-devel >= 1.0.0
91 # rst2html5 rst2man
92 BuildRequires:  docutils
93 BuildRequires:  gawk
94 BuildRequires:  gcc >= 6:4.4
95 BuildRequires:  gettext-tools >= 0.17
96 BuildRequires:  glib2-devel >= 1:2.56.0
97 %{?with_glusterfs:BuildRequires:        glusterfs-devel >= 3.4.1}
98 BuildRequires:  gnutls-devel >= 3.6.0
99 %{?with_apparmor:BuildRequires: libapparmor-devel >= 3.0.0}
100 BuildRequires:  libblkid-devel >= 2.17
101 BuildRequires:  libcap-ng-devel >= 0.4.0
102 BuildRequires:  libfuse3-devel >= 3.1.0
103 BuildRequires:  libgcrypt-devel
104 BuildRequires:  libiscsi-devel >= 1.18.0
105 BuildRequires:  libnbd-devel >= 1.0
106 BuildRequires:  libnl-devel >= 3.2
107 BuildRequires:  libpcap-devel >= 1.5.0
108 BuildRequires:  libselinux-devel >= 2.5
109 BuildRequires:  libssh-devel >= 0.8.1
110 BuildRequires:  libssh2-devel >= 1.3
111 BuildRequires:  libtool
112 BuildRequires:  libxml2-devel >= 1:2.9.1
113 BuildRequires:  libxml2-progs >= 1:2.9.1
114 BuildRequires:  libxslt-devel
115 BuildRequires:  libxslt-progs
116 BuildRequires:  lvm2
117 BuildRequires:  meson >= 0.56.0
118 BuildRequires:  ncurses-devel
119 %{?with_netcf:BuildRequires:    netcf-devel >= 0.2.0}
120 BuildRequires:  ninja >= 1.5
121 BuildRequires:  nss-devel >= 3
122 BuildRequires:  numactl-devel >= 2.0.6
123 BuildRequires:  open-iscsi
124 %{?with_hyperv:BuildRequires:   openwsman-devel >= 2.6.3}
125 BuildRequires:  parted-devel >= 1.8.0
126 BuildRequires:  pkgconfig
127 %{?with_polkit:BuildRequires:   polkit}
128 %{?with_polkit:BuildRequires:   polkit-devel >= 0.90}
129 BuildRequires:  python3 >= 1:3.0
130 BuildRequires:  readline-devel >= 7.0
131 BuildRequires:  rpcsvc-proto
132 BuildRequires:  rpm-build >= 4.6
133 BuildRequires:  rpmbuild(macros) >= 1.753-5
134 %{?with_sanlock:BuildRequires:  sanlock-devel >= 3.5.0}
135 BuildRequires:  sed >= 4.0
136 %{?with_systemtap:BuildRequires:        systemtap-sdt-devel}
137 BuildRequires:  tar >= 1:1.22
138 BuildRequires:  udev-devel >= 1:219
139 %{?with_wireshark:BuildRequires:        wireshark-devel >= 2.6.0}
140 %{?with_libxl:BuildRequires:    xen-devel >= 4.13}
141 # For disk driver
142 BuildRequires:  xorg-lib-libpciaccess-devel >= 0.10.0
143 BuildRequires:  xz
144 BuildRequires:  yajl-devel >= 2.0.3
145 %{?with_zfs:BuildRequires:      zfs}
146 %{?with_zfs:BuildRequires:      zfs-devel}
147 Requires:       curl-libs >= 7.19.1
148 Requires:       cyrus-sasl-libs >= 2.1.26
149 Requires:       device-mapper-libs >= 1.0.0
150 Requires:       glib2 >= 1:2.56.0
151 Requires:       gnutls-libs >= 3.6.0
152 %{?with_apparmor:Requires:      libapparmor >= 3.0.0}
153 Requires:       libcap-ng >= 0.4.0
154 Requires:       libnl >= 3.2
155 Requires:       libpcap >= 1.5.0
156 Requires:       libselinux >= 2.5
157 Requires:       libssh >= 0.8.1
158 Requires:       libssh2 >= 1.3
159 Requires:       libxml2 >= 1:2.9.1
160 %{?with_hyperv:Requires:        openwsman-libs >= 2.6.3}
161 Requires:       yajl >= 2.0.3
162 Obsoletes:      libvirt-daemon-esx < 0.9.13
163 Obsoletes:      libvirt-daemon-hyperv < 0.9.13
164 Obsoletes:      libvirt-daemon-openvz < 0.9.13
165 Obsoletes:      libvirt-daemon-phyp < 6.0.0
166 Obsoletes:      libvirt-daemon-uml < 5.0.0
167 Obsoletes:      libvirt-daemon-vmware < 0.9.13
168 Obsoletes:      libvirt-daemon-xen < 0.9.13
169 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
170
171 %description
172 Libvirt is a C toolkit to interact with the virtualization
173 capabilities of recent versions of Linux.
174
175 Virtualization of the Linux Operating System means the ability to run
176 multiple instances of Operating Systems concurently on a single
177 hardware system where the basic resources are driven by a Linux
178 instance. The library aim at providing long term stable C API
179 initially for the Xen paravirtualization but should be able to
180 integrate other virtualization mechanisms if needed.
181
182 This package contains the base libraries and configuration file.
183
184 %description -l pl.UTF-8
185 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
186 obecnych wersji Linuksa.
187
188 Wirtualizacja w systemie operacyjnym Linux oznacza możliwość
189 jednoczesnego uruchamiania wielu instancji systemu operacyjnego na
190 pojedynczym systemie sprzętowym, którego podstawowe zasoby są
191 zarządzane przez instancję Linuksa. Celem biblioteki jest zapewnienie
192 długotrwale stabilnego API C, początkowo do parawirtualizacji Xen, ale
193 dającej się zintegrować w razie potrzeby z innymi mechanizmami
194 wirtualizacji.
195
196 Ten pakiet zawiera podstawowe biblioteki oraz plik konfiguracyjny.
197
198 %package -n bash-completion-%{name}
199 Summary:        bash-completion for libvirt
200 Summary(pl.UTF-8):      Bashowe dopełnianie składni poleceń libvirt
201 Group:          Applications/Shells
202 Requires:       bash-completion >= 1:2.0
203 BuildArch:      noarch
204
205 %description -n bash-completion-%{name}
206 This package provides bash-completion for libvirt.
207
208 %description -n bash-completion-%{name} -l pl.UTF-8
209 Ten pakiet zapewnia bashowe dopełnianie składni dla poleceń libvirt.
210
211 %package devel
212 Summary:        Development files for programs using libvirt
213 Summary(pl.UTF-8):      Pliki programistyczne do programów wykorzystujących libvirt
214 Group:          Development/Libraries
215 Requires:       %{name} = %{version}-%{release}
216
217 %description devel
218 Libvirt is a C toolkit to interact with the virtualization
219 capabilities of recent versions of Linux.
220
221 This package contains the header files needed for developing programs
222 using the libvirt library.
223
224 %description devel -l pl.UTF-8
225 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
226 obecnych wersji Linuksa.
227
228 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
229 wykorzystujących bibliotekę libvirt.
230
231 %package static
232 Summary:        Development static libraries for programs using libvirt
233 Summary(pl.UTF-8):      Statyczne biblioteki programistyczne do programów wykorzystujących libvirt
234 Group:          Development/Libraries
235 Requires:       %{name}-devel = %{version}-%{release}
236
237 %description static
238 Libvirt is a C toolkit to interact with the virtualization
239 capabilities of recent versions of Linux.
240
241 This package contains the static libraries for developing programs
242 using the libvirt library.
243
244 %description static -l pl.UTF-8
245 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
246 obecnych wersji Linuksa.
247
248 Ten pakiet zawiera biblioteki statyczne do tworzenia programów
249 wykorzystujących bibliotekę libvirt.
250
251 %package doc
252 Summary:        Documentation for libvirt
253 Summary(pl.UTF-8):      Dokumentacja do libvirt
254 Group:          Documentation
255 BuildArch:      noarch
256
257 %description doc
258 Documentation for libvirt.
259
260 %description doc -l pl.UTF-8
261 Dokumentacja do libvirt.
262
263 %package lock-sanlock
264 Summary:        Sanlock lock manager plugin for libvirt
265 Summary(pl.UTF-8):      Zarządca blokad sanlock dla biblioteki libvirt
266 Group:          Libraries
267 Requires:       %{name}-daemon = %{version}-%{release}
268 Requires:       sanlock-libs >= 3.5.0
269
270 %description lock-sanlock
271 Sanlock lock manager plugin for libvirt.
272
273 %description lock-sanlock -l pl.UTF-8
274 Zarządca blokad sanlock dla biblioteki libvirt.
275
276 %package daemon
277 Summary:        Server side daemon and supporting files for libvirt library
278 Summary(pl.UTF-8):      Demon działający po stronie serwera oraz pliki wspierające dla biblioteki libvirt
279 Group:          Applications/System
280 Requires(post,preun):   /sbin/chkconfig
281 Requires:       %{name} = %{version}-%{release}
282 Requires:       device-mapper >= 1.0.0
283 Requires:       iproute2
284 Requires:       libblkid >= 2.17
285 # iscsi-direct driver
286 Requires:       libiscsi >= 1.18.0
287 %{?with_netcf:Requires: netcf >= 0.2.0}
288 Requires:       parted-libs >= 1.8.0
289 Requires:       rc-scripts
290 # Needed for probing the power management features of the host.
291 Requires:       pm-utils
292 Requires:       udev-libs >= 1:219
293 Requires:       util-linux
294 Requires:       virtual(module-tools)
295 Requires:       xorg-lib-libpciaccess >= 0.10.0
296 Suggests:       bridge-utils
297 Suggests:       cyrus-sasl >= 2.1.26
298 Suggests:       cyrus-sasl-digest-md5 >= 2.1.26
299 Suggests:       dmidecode
300 Suggests:       dnsmasq >= 2.41
301 Suggests:       ebtables
302 Suggests:       gawk
303 Suggests:       glusterfs-client >= 3.4.1
304 Suggests:       iptables
305 Suggests:       iptables
306 Suggests:       libcgroup
307 Suggests:       lvm2
308 Suggests:       numad
309 Suggests:       open-iscsi
310 Suggests:       parted >= 1.8.0
311 Suggests:       polkit >= 0.93
312 #Suggests:      radvd
313 Suggests:       scrub
314 Provides:       libvirt(hypervisor)
315
316 %description daemon
317 Server side daemon required to manage the virtualization capabilities
318 of recent versions of Linux. Requires a hypervisor specific sub-RPM
319 for specific drivers.
320
321 %description daemon -l pl.UTF-8
322 Demon działający po stronie serwera wymagany do zarządzania funkcjami
323 wirtualizacji nowych wersji Linuksa. Wymaga podpakietu specyficznego
324 dla hipernadzorcy.
325
326 %package daemon-storage-gluster
327 Summary:        Storage driver plugin for GlusterFS
328 Summary(pl.UTF-8):      Wtyczka składowania danych wykorzystująca GlusterFS
329 Group:          Libraries
330 Requires:       %{name}-daemon = %{version}-%{release}
331 Requires:       glusterfs-libs >= 3.4.1
332
333 %description daemon-storage-gluster
334 Storage driver plugin for GlusterFS.
335
336 %description daemon-storage-gluster -l pl.UTF-8
337 Wtyczka składowania danych wykorzystująca system plików GlusterFS.
338
339 %package daemon-storage-rbd
340 Summary:        Storage driver plugin for Ceph RADOS Block Device
341 Summary(pl.UTF-8):      Wtyczka składowania danych wykorzystująca urządzenie blokowe RADOS (Ceph)
342 Group:          Libraries
343 Requires:       %{name}-daemon = %{version}-%{release}
344
345 %description daemon-storage-rbd
346 Storage driver plugin for Ceph RADOS Block Device.
347
348 %description daemon-storage-rbd -l pl.UTF-8
349 Wtyczka składowania danych wykorzystująca urządzenie blokowe RADOS
350 (system plików Ceph).
351
352 %package daemon-ch
353 Summary:        Cloud Hypervisor server side driver
354 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości Cloud Hypervisor
355 Group:          Libraries
356 Requires:       %{name}-daemon = %{version}-%{release}
357 Provides:       libvirt(hypervisor)
358
359 %description daemon-ch
360 Cloud Hypervisor is an open source Virtual Machine Monitor (VMM) that
361 runs on top of KVM. The project focuses on exclusively running modern,
362 cloud workloads, on top of a limited set of hardware architectures and
363 platforms. Cloud workloads refers to those that are usually run by
364 customers inside a cloud provider. For our purposes this means modern
365 operating systems with most I/O handled by paravirtualised devices
366 (i.e. virtio), no requirement for legacy devices, and 64-bit CPUs.
367
368 %description daemon-ch -l pl.UTF-8
369 Cloud Hypervisor to mający otwarte źródła monitor maszyn wirtualnych
370 (VMM), działający powyżej KVM. Projekt skupia się wyłącznie na
371 uruchamianiu nowoczesnych, chmurowych zadań na ograniczonym zbiorze
372 architektur i platform sprzętowych. Zadania chmurowe to te, które
373 zwykle są uruchamiane przez klientów u dostawców chmurowych. W tym
374 przypadku oznacza to nowoczesne systemy operacyjne z większością
375 we/wy obsługiwaną przez urządzenia parawirtualizowane (np. virtio),
376 bez wymogu tradycyjnych urządzeń, oraz 64-bitowe procesory.
377
378 %package daemon-libxl
379 Summary:        Server side driver required to run XEN guests (xenlight)
380 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości XEN (xenlight)
381 Group:          Libraries
382 Requires:       %{name}-daemon = %{version}-%{release}
383 Requires:       xen >= 4.13
384 Provides:       libvirt(hypervisor)
385 Obsoletes:      libvirt-daemon-xen < 4.3.0
386
387 %description daemon-libxl
388 Server side driver required to manage the virtualization capabilities
389 of XEN via xenlight interface.
390
391 %description daemon-libxl -l pl.UTF-8
392 Sterownik wymagany po stronie serwera do zarządzania funkcjami
393 wirtualizacji XEN poprzez interfejs xenlight.
394
395 %package daemon-lxc
396 Summary:        Server side driver required to run LXC guests
397 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości LXC
398 Group:          Libraries
399 Requires:       %{name}-daemon = %{version}-%{release}
400 Requires:       libfuse3 >= 3.1.0
401 Provides:       libvirt(hypervisor)
402
403 %description daemon-lxc
404 Server side driver required to manage the virtualization capabilities
405 of LXC.
406
407 %description daemon-lxc -l pl.UTF-8
408 Sterownik wymagany po stronie serwera do zarządzania funkcjami
409 wirtualizacji LXC.
410
411 %package daemon-qemu
412 Summary:        Server side driver required to run QEMU guests
413 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości QEMU
414 Group:          Libraries
415 Requires:       %{name}-daemon = %{version}-%{release}
416 Requires:       /usr/bin/qemu-img
417 Requires:       bzip2
418 Requires:       gzip
419 Requires:       libnbd >= 1.0
420 Requires:       lzop
421 Requires:       qemu-system-x86 >= 4.2
422 Requires:       xz
423 Provides:       libvirt(hypervisor)
424
425 %description daemon-qemu
426 Server side driver required to manage the virtualization capabilities
427 of the QEMU emulators.
428
429 %description daemon-qemu -l pl.UTF-8
430 Sterownik wymagany po stronie serwera do zarządzania funkcjami
431 wirtualizacji emulatora QEMU.
432
433 %package daemon-vbox
434 Summary:        Server side driver required to run VirtalBox guests
435 Summary(pl.UTF-8):      Sterownik wymagany po stronie serwera do uruchamiania gości VirtalBox
436 Group:          Libraries
437 Requires:       %{name}-daemon = %{version}-%{release}
438 Requires:       VirtualBox >= 5.2
439 Provides:       libvirt(hypervisor)
440
441 %description daemon-vbox
442 Server side driver required to manage the virtualization capabilities
443 of VirtualBox.
444
445 %description daemon-vbox -l pl.UTF-8
446 Sterownik wymagany po stronie serwera do zarządzania funkcjami
447 wirtualizacji VirtualBoksa.
448
449 %package client
450 Summary:        Client side utilities of the libvirt library
451 Summary(pl.UTF-8):      Narzędzia klienckie do biblioteki libvirt
452 Group:          Applications/System
453 Requires(post,preun):   /sbin/chkconfig
454 Requires:       %{name} = %{version}-%{release}
455 Requires:       gettext >= 0.18.1.1-6
456 Requires:       gnutls >= 3.6.0
457 Requires:       netcat-openbsd
458 Requires:       rc-scripts
459
460 %description client
461 Client binaries needed to access to the virtualization capabilities of
462 recent versions of Linux (and other OSes).
463
464 %description client -l pl.UTF-8
465 Programy klienckie potrzebne do funkcji wirtualizacji nowych wersji
466 Linuksa (oraz innych systemów operacyjnych).
467
468 %package ssh-proxy
469 Summary:        Libvirt SSH proxy
470 Summary(pl.UTF-8):      Proxy SSH dla Libvirt
471 Group:          Applications/System
472 Requires:       %{name} = %{version}-%{release}
473 Requires:       openssh-clients
474
475 %description ssh-proxy
476 Allows SSH into domains via VSOCK without need for network.
477
478 %description ssh-proxy -l pl.UTF-8
479 Ten pakiet pozwala na SSH do domen poprzez VSOCK bez wymagania sieci.
480
481 %package utils
482 Summary:        Tools to interact with virtualization capabilities (metapackage)
483 Summary(pl.UTF-8):      Narzędzia do współpracy z funkcjami wirtualizacyjnymi (metapakiet)
484 Group:          Applications/System
485 Requires:       %{name}-client = %{version}-%{release}
486 Requires:       %{name}-daemon = %{version}-%{release}
487 Requires:       %{name}-daemon-ch = %{version}-%{release}
488 %{?with_libxl:Requires: %{name}-daemon-libxl = %{version}-%{release}}
489 Requires:       %{name}-daemon-lxc = %{version}-%{release}
490 Requires:       %{name}-daemon-qemu = %{version}-%{release}
491
492 %description utils
493 Libvirt is a C toolkit to interact with the virtualization
494 capabilities of recent versions of Linux.
495
496 This is metapackage gathering all tools for the libvirt library.
497
498 %description utils -l pl.UTF-8
499 Libvirt to zestaw narzędzi w C do współpracy z funkcjami wirtualizacji
500 obecnych wersji Linuksa.
501
502 To jest metapakiet zbierający wszystkie narzędzia przeznaczone dla
503 biblioteki libvirt.
504
505 %package -n systemtap-libvirt
506 Summary:        systemtap/dtrace probes for libvirt
507 Summary(pl.UTF-8):      Sondy systemtap/dtrace dla libvirt
508 Group:          Development/Tools
509 Requires:       %{name} = %{version}-%{release}
510 Requires:       systemtap-client
511
512 %description -n systemtap-libvirt
513 systemtap/dtrace probes for libvirt.
514
515 %description -n systemtap-libvirt -l pl.UTF-8
516 Sondy systemtap/dtrace dla libvirt.
517
518 %package -n wireshark-libvirt
519 Summary:        Wireshark dissector module for libvirt packets
520 Summary(pl.UTF-8):      Moduł sekcji Wiresharka do pakietów libvirt
521 Group:          Libraries
522 Requires:       wireshark >= 2.6.0
523
524 %description -n wireshark-libvirt
525 Wireshark dissector module for libvirt packets.
526
527 %description -n wireshark-libvirt -l pl.UTF-8
528 Moduł sekcji Wiresharka do pakietów libvirt.
529
530 %prep
531 %setup -q
532 %patch0 -p1
533 %patch1 -p1
534 %patch2 -p1
535 %patch3 -p1
536 %patch4 -p1
537
538 %if %{with static_libs}
539 %{__sed} -i '/^libvirt\(_admin\|_lxc\|_qemu\)\?_lib = / s/shared_library/library/' src/meson.build
540 %endif
541
542 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' tools/{virt-qemu-qmp-proxy,virt-qemu-sev-validate}
543
544 %{__sed} -i -e 's,/usr/lib/qemu,/usr/%{_lib}/qemu,' -e 's,/usr/lib",/usr/%{_lib}/",' src/qemu/qemu_interface.c
545 %{__sed} -i -e 's,/usr/libexec",%{_libexecdir}",' src/qemu/qemu_process.c
546
547 %build
548 %meson build \
549         -Dpackager="TLD-Linux" \
550         -Dpackager_version="%{name}-%{version}-%{release}.%{_target_cpu}" \
551         -Dqemu_group=qemu \
552         -Dqemu_user=qemu \
553         -Dapparmor=%{__enabled_disabled apparmor} \
554         -Dapparmor_profiles=%{__enabled_disabled apparmor} \
555         -Dattr=enabled \
556         -Daudit=enabled \
557         -Dbash_completion=enabled \
558         -Dbash_completion_dir=%{bash_compdir} \
559         -Dblkid=enabled \
560         -Dcapng=enabled \
561         -Dcurl=enabled \
562         -Ddtrace=%{__enabled_disabled systemtap} \
563         -Dfirewalld=disabled \
564         -Dfirewalld_zone=disabled \
565         -Dfuse=enabled \
566         -Dglusterfs=%{__enabled_disabled glusterfs} \
567         -Dlibiscsi=enabled \
568         -Dlibnl=enabled \
569         -Dlibpcap=enabled \
570         -Dlibssh=enabled \
571         -Dlibssh2=enabled \
572         -Dnetcf=%{__enabled_disabled netcf} \
573         -Dnls=enabled \
574         -Dnumactl=enabled \
575         -Dnumad=disabled \
576         -Dopenwsman=enabled \
577         -Dpciaccess=enabled \
578         -Dpolkit=%{__enabled_disabled polkit} \
579         -Dreadline=enabled \
580         -Dsanlock=enabled \
581         -Dsasl=enabled \
582         -Dselinux=enabled \
583         -Dsysctl_config=enabled \
584         -Dudev=enabled \
585         -Dwireshark_dissector=%{__enabled_disabled wireshark} \
586         -Dyajl=enabled \
587         -Dstorage_dir=enabled \
588         -Dstorage_disk=enabled \
589         -Dstorage_fs=enabled \
590         -Dstorage_iscsi=enabled \
591         -Dstorage_iscsi_direct=enabled \
592         -Dstorage_lvm=enabled \
593         -Dstorage_mpath=enabled \
594         -Dstorage_rbd=%{__enabled_disabled ceph} \
595         -Dstorage_scsi=enabled \
596         -Dstorage_vstorage=disabled \
597         -Dstorage_zfs=%{__enabled_disabled zfs} \
598         -Ddriver_bhyve=disabled \
599         -Ddriver_ch=%{__enabled_disabled ch} \
600         -Ddriver_esx=%{__enabled_disabled esx} \
601         -Ddriver_hyperv=%{__enabled_disabled hyperv} \
602         -Ddriver_interface=enabled \
603         -Ddriver_libvirtd=enabled \
604         -Ddriver_libxl=%{__enabled_disabled libxl} \
605         -Ddriver_lxc=%{__enabled_disabled lxc} \
606         -Ddriver_network=enabled \
607         -Ddriver_openvz=%{__enabled_disabled openvz} \
608         -Ddriver_qemu=%{__enabled_disabled qemu} \
609         -Ddriver_remote=enabled \
610         -Ddriver_secrets=enabled \
611         -Ddriver_vbox=%{__enabled_disabled vbox} \
612         -Ddriver_vmware=%{__enabled_disabled vmware} \
613         -Ddriver_vz=disabled \
614         -Dsecdriver_apparmor=%{__enabled_disabled apparmor} \
615         -Dsecdriver_selinux=enabled
616
617 %meson_build -C build
618
619 %install
620 rm -rf $RPM_BUILD_ROOT
621 install -d $RPM_BUILD_ROOT/etc/{sysconfig,sysctl.d,rc.d/init.d}
622
623 %meson_install -C build
624
625 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/libvirtd
626 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlockd
627 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/virtlogd
628 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/libvirt-guests
629 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/libvirtd
630 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/virtlockd
631 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/sysconfig/virtlogd
632 install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/libvirt-guests
633
634 rm -rf $RPM_BUILD_ROOT/%{_datadir}/locale/{bal,ilo,kw@kkcor,kw@uccor,kw_GB,tw,wba}
635
636 %find_lang %{name}
637
638 %clean
639 rm -rf $RPM_BUILD_ROOT
640
641 %post   -p /sbin/ldconfig
642 %postun -p /sbin/ldconfig
643
644 %post daemon
645 /sbin/chkconfig --add libvirtd
646 %service libvirtd restart
647 /sbin/chkconfig --add virtlockd
648 %service virtlockd restart
649 /sbin/chkconfig --add virtlogd
650 %service virtlogd restart
651
652 %preun daemon
653 if [ "$1" = "0" ]; then
654         %service -q libvirtd stop
655         /sbin/chkconfig --del libvirtd
656         %service -q virtlockd stop
657         /sbin/chkconfig --del virtlockd
658         %service -q virtlogd stop
659         /sbin/chkconfig --del virtlogd
660 fi
661
662 %post client
663 /sbin/chkconfig --add libvirt-guests
664 %service -n libvirt-guests restart
665 NORESTART=1
666
667 %preun client
668 if [ "$1" = "0" ]; then
669         %service -q libvirt-guests stop
670         /sbin/chkconfig --del libvirt-guests
671 fi
672
673 %files -f %{name}.lang
674 %defattr(644,root,root,755)
675 %doc AUTHORS.rst NEWS.rst README.rst
676 %dir %{_sysconfdir}/libvirt
677 %if %{with apparmor}
678 %dir %{_sysconfdir}/apparmor.d/libvirt
679 %endif
680 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt.conf
681 %attr(755,root,root) %{_libdir}/libvirt.so.*.*.*
682 %attr(755,root,root) %ghost %{_libdir}/libvirt.so.0
683 %attr(755,root,root) %{_libdir}/libvirt-admin.so.*.*.*
684 %attr(755,root,root) %ghost %{_libdir}/libvirt-admin.so.0
685 %if %{with lxc}
686 %attr(755,root,root) %{_libdir}/libvirt-lxc.so.*.*.*
687 %attr(755,root,root) %ghost %{_libdir}/libvirt-lxc.so.0
688 %endif
689 %attr(755,root,root) %{_libdir}/libvirt-qemu.so.*.*.*
690 %attr(755,root,root) %ghost %{_libdir}/libvirt-qemu.so.0
691
692 # NSS modules
693 %attr(755,root,root) %{_libdir}/libnss_libvirt.so.2
694 %attr(755,root,root) %{_libdir}/libnss_libvirt_guest.so.2
695
696 %dir %{_libdir}/libvirt
697 %dir %{_datadir}/libvirt
698
699 %files -n bash-completion-%{name}
700 %defattr(644,root,root,755)
701 %{bash_compdir}/virsh
702 %{bash_compdir}/virt-admin
703
704 %files devel
705 %defattr(644,root,root,755)
706 %attr(755,root,root) %{_libdir}/libvirt.so
707 %attr(755,root,root) %{_libdir}/libvirt-admin.so
708 %{?with_lxc:%attr(755,root,root) %{_libdir}/libvirt-lxc.so}
709 %attr(755,root,root) %{_libdir}/libvirt-qemu.so
710 %{_datadir}/%{name}/api
711 %{_docdir}/%{name}
712 %{_includedir}/%{name}
713 %{_pkgconfigdir}/libvirt.pc
714 %{_pkgconfigdir}/libvirt-admin.pc
715 %{?with_lxc:%{_pkgconfigdir}/libvirt-lxc.pc}
716 %{_pkgconfigdir}/libvirt-qemu.pc
717 %{_mandir}/man7/virkeycode-*.7*
718 %{_mandir}/man7/virkeyname-*.7*
719
720 %if %{with static_libs}
721 %files static
722 %defattr(644,root,root,755)
723 %{_libdir}/libvirt.a
724 %{?with_lxc:%{_libdir}/libvirt-lxc.a}
725 %{_libdir}/libvirt-qemu.a
726 %endif
727
728 %files doc
729 %defattr(644,root,root,755)
730 %dir %{_docdir}/libvirt
731 %{_docdir}/libvirt/examples
732 %{_docdir}/libvirt/html
733
734 %if %{with sanlock}
735 %files lock-sanlock
736 %defattr(644,root,root,755)
737 %attr(755,root,root) %{_sbindir}/virt-sanlock-cleanup
738 %attr(755,root,root) %{_libexecdir}/libvirt_sanlock_helper
739 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/sanlock.so
740 %{_datadir}/augeas/lenses/libvirt_sanlock.aug
741 %if %{with qemu}
742 %{_datadir}/augeas/lenses/tests/test_libvirt_sanlock.aug
743 %endif
744 %dir /var/lib/libvirt/sanlock
745 %{_mandir}/man8/virt-sanlock-cleanup.8*
746 %endif
747
748 %files daemon
749 %defattr(644,root,root,755)
750 %if %{with apparmor}
751 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-lxc
752 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-qemu
753 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/libvirt
754 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.lib.libvirt.virt-aa-helper
755 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.sbin.libvirtd
756 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.sbin.virtqemud
757 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/usr.sbin.virtxend
758 %endif
759 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirt-admin.conf
760 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libvirtd.conf
761 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/network.conf
762 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtinterfaced.conf
763 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlockd.conf
764 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlogd.conf
765 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtnetworkd.conf
766 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtnodedevd.conf
767 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtnwfilterd.conf
768 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtproxyd.conf
769 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtsecretd.conf
770 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtstoraged.conf
771 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu
772 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks
773 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/default.xml
774 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/qemu/networks/autostart
775 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
776 %dir %attr(700,root,root) %{_sysconfdir}/libvirt/nwfilter
777 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/nwfilter/*.xml
778 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sasl/libvirt.conf
779 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirtd
780 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/virtlockd
781 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/virtlogd
782 %attr(754,root,root) /etc/rc.d/init.d/libvirtd
783 %attr(754,root,root) /etc/rc.d/init.d/virtlockd
784 %attr(754,root,root) /etc/rc.d/init.d/virtlogd
785 %config(noreplace) %verify(not md5 mtime size) /etc/sysctl.d/60-libvirtd.conf
786 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd
787 %attr(755,root,root) %{_sbindir}/libvirtd
788 %attr(755,root,root) %{_sbindir}/virtinterfaced
789 %attr(755,root,root) %{_sbindir}/virtlockd
790 %attr(755,root,root) %{_sbindir}/virtlogd
791 %attr(755,root,root) %{_sbindir}/virtnetworkd
792 %attr(755,root,root) %{_sbindir}/virtnodedevd
793 %attr(755,root,root) %{_sbindir}/virtnwfilterd
794 %attr(755,root,root) %{_sbindir}/virtproxyd
795 %attr(755,root,root) %{_sbindir}/virtsecretd
796 %attr(755,root,root) %{_sbindir}/virtstoraged
797 %attr(755,root,root) %{_libexecdir}/libvirt_iohelper
798 %attr(755,root,root) %{_libexecdir}/libvirt_leaseshelper
799 %attr(755,root,root) %{_libexecdir}/libvirt_parthelper
800 %if %{with apparmor}
801 %attr(755,root,root) %{_libexecdir}/virt-aa-helper
802 %endif
803 %dir %{_libdir}/libvirt/connection-driver
804 %{?with_netcf:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_interface.so}
805 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_network.so
806 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nodedev.so
807 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_nwfilter.so
808 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_secret.so
809 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_storage.so
810 %dir %{_libdir}/libvirt/lock-driver
811 %attr(755,root,root) %{_libdir}/libvirt/lock-driver/lockd.so
812 %dir %{_libdir}/libvirt/storage-backend
813 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_disk.so
814 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_fs.so
815 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so
816 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_iscsi-direct.so
817 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_logical.so
818 # mpath requires libdevmapper, but libvirt itself requires it too
819 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_mpath.so
820 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_scsi.so
821 %{?with_zfs:%attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_zfs.so}
822 %dir %{_libdir}/libvirt/storage-file
823 %attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_fs.so
824 %{_datadir}/augeas/lenses/libvirt_lockd.aug
825 %{_datadir}/augeas/lenses/libvirtd.aug
826 %{_datadir}/augeas/lenses/libvirtd_network.aug
827 %{_datadir}/augeas/lenses/virtinterfaced.aug
828 %{_datadir}/augeas/lenses/virtlockd.aug
829 %{_datadir}/augeas/lenses/virtlogd.aug
830 %{_datadir}/augeas/lenses/virtnetworkd.aug
831 %{_datadir}/augeas/lenses/virtnodedevd.aug
832 %{_datadir}/augeas/lenses/virtnwfilterd.aug
833 %{_datadir}/augeas/lenses/virtproxyd.aug
834 %{_datadir}/augeas/lenses/virtsecretd.aug
835 %{_datadir}/augeas/lenses/virtstoraged.aug
836 %{_datadir}/augeas/lenses/tests/test_libvirtd.aug
837 %{?with_qemu:%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug}
838 %{_datadir}/augeas/lenses/tests/test_libvirtd_network.aug
839 %{_datadir}/augeas/lenses/tests/test_virtinterfaced.aug
840 %{_datadir}/augeas/lenses/tests/test_virtlockd.aug
841 %{_datadir}/augeas/lenses/tests/test_virtlogd.aug
842 %{_datadir}/augeas/lenses/tests/test_virtnetworkd.aug
843 %{_datadir}/augeas/lenses/tests/test_virtnodedevd.aug
844 %{_datadir}/augeas/lenses/tests/test_virtnwfilterd.aug
845 %{_datadir}/augeas/lenses/tests/test_virtproxyd.aug
846 %{_datadir}/augeas/lenses/tests/test_virtsecretd.aug
847 %{_datadir}/augeas/lenses/tests/test_virtstoraged.aug
848 %{_datadir}/libvirt/cpu_map
849 %if %{with polkit}
850 %{_datadir}/polkit-1/actions/org.libvirt.api.policy
851 %{_datadir}/polkit-1/actions/org.libvirt.unix.policy
852 %{_datadir}/polkit-1/rules.d/50-libvirt.rules
853 %endif
854 %{_mandir}/man8/libvirtd.8*
855 %{_mandir}/man8/virtinterfaced.8*
856 %{_mandir}/man8/virtlockd.8*
857 %{_mandir}/man8/virtlogd.8*
858 %{_mandir}/man8/virtnetworkd.8*
859 %{_mandir}/man8/virtnodedevd.8*
860 %{_mandir}/man8/virtnwfilterd.8*
861 %{_mandir}/man8/virtproxyd.8*
862 %{_mandir}/man8/virtsecretd.8*
863 %{_mandir}/man8/virtstoraged.8*
864 %dir /var/lib/libvirt
865 %dir /var/lib/libvirt/dnsmasq
866 %attr(711,root,root) %dir /var/lib/libvirt/boot
867 %attr(700,root,root) %dir /var/lib/libvirt/network
868 %attr(711,root,root) %dir /var/lib/libvirt/images
869 %attr(711,root,root) %dir /var/lib/libvirt/filesystems
870 %attr(700,root,root) %dir /var/log/libvirt
871 %attr(711,root,root) %dir /var/cache/libvirt
872 %dir /var/run/libvirt
873 %dir /var/run/libvirt/network
874
875 %if %{with glusterfs}
876 %files daemon-storage-gluster
877 %defattr(644,root,root,755)
878 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_gluster.so
879 %attr(755,root,root) %{_libdir}/libvirt/storage-file/libvirt_storage_file_gluster.so
880 %endif
881
882 %if %{with ceph}
883 %files daemon-storage-rbd
884 %defattr(644,root,root,755)
885 %attr(755,root,root) %{_libdir}/libvirt/storage-backend/libvirt_storage_backend_rbd.so
886 %endif
887
888 %if %{with ch}
889 %files daemon-ch
890 %defattr(644,root,root,755)
891 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtchd.conf
892 %attr(755,root,root) %{_sbindir}/virtchd
893 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_ch.so
894 %{_datadir}/augeas/lenses/virtchd.aug
895 %{_datadir}/augeas/lenses/tests/test_virtchd.aug
896 %endif
897
898 %if %{with libxl}
899 %files daemon-libxl
900 %defattr(644,root,root,755)
901 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl.conf
902 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-lockd.conf
903 %{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/libxl-sanlock.conf}
904 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtxend.conf
905 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.libxl
906 %attr(755,root,root) %{_sbindir}/virtxend
907 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_libxl.so
908 %{_datadir}/augeas/lenses/libvirtd_libxl.aug
909 %{_datadir}/augeas/lenses/virtxend.aug
910 %{_datadir}/augeas/lenses/tests/test_libvirtd_libxl.aug
911 %{_datadir}/augeas/lenses/tests/test_virtxend.aug
912 %attr(700,root,root) %dir /var/lib/libvirt/libxl
913 %attr(700,root,root) %dir /var/run/libvirt/libxl
914 %attr(700,root,root) %dir /var/log/libvirt/libxl
915 %{_mandir}/man8/virtxend.8*
916 %endif
917
918 %if %{with lxc}
919 %files daemon-lxc
920 %defattr(644,root,root,755)
921 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/lxc.conf
922 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtlxcd.conf
923 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.lxc
924 %if %{with apparmor}
925 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-lxc
926 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/libvirt/TEMPLATE.lxc
927 %endif
928 %attr(755,root,root) %{_sbindir}/virtlxcd
929 %attr(755,root,root) %{_libexecdir}/libvirt_lxc
930 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_lxc.so
931 %{_datadir}/augeas/lenses/libvirtd_lxc.aug
932 %{_datadir}/augeas/lenses/virtlxcd.aug
933 %{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
934 %{_datadir}/augeas/lenses/tests/test_virtlxcd.aug
935 %attr(700,root,root) %dir /var/lib/libvirt/lxc
936 %attr(700,root,root) %dir /var/run/libvirt/lxc
937 %attr(700,root,root) %dir /var/log/libvirt/lxc
938 %{_mandir}/man8/virtlxcd.8*
939 %endif
940
941 %if %{with qemu}
942 %files daemon-qemu
943 %defattr(644,root,root,755)
944 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu.conf
945 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-lockd.conf
946 %{?with_sanlock:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/qemu-sanlock.conf}
947 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtqemud.conf
948 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/libvirtd.qemu
949 %if %{with apparmor}
950 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/abstractions/libvirt-qemu
951 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apparmor.d/libvirt/TEMPLATE.qemu
952 %endif
953 %attr(755,root,root) %{_sbindir}/virtqemud
954 %attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_qemu.so
955 %{_datadir}/augeas/lenses/libvirtd_qemu.aug
956 %{_datadir}/augeas/lenses/virtqemud.aug
957 %{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
958 %{_datadir}/augeas/lenses/tests/test_virtqemud.aug
959 %attr(750,qemu,qemu) %dir /var/cache/libvirt/qemu
960 %attr(750,qemu,qemu) %dir /var/lib/libvirt/qemu
961 %attr(700,root,root) %dir /var/log/libvirt/qemu
962 %attr(700,root,root) %dir /var/run/libvirt/qemu
963 %config(noreplace) %verify(not md5 mtime size) /etc/sysctl.d/60-qemu-postcopy-migration.conf
964 %{_mandir}/man8/virtqemud.8*
965 %endif
966
967 %if %{with vbox}
968 %files daemon-vbox
969 %defattr(644,root,root,755)
970 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virtvboxd.conf
971 %attr(755,root,root) %{_sbindir}/virtvboxd
972 %{_datadir}/augeas/lenses/virtvboxd.aug
973 %{_datadir}/augeas/lenses/tests/test_virtvboxd.aug
974 %{?with_vbox:%attr(755,root,root) %{_libdir}/libvirt/connection-driver/libvirt_driver_vbox.so}
975 %{_mandir}/man8/virtvboxd.8*
976 %endif
977
978 %files client
979 %defattr(644,root,root,755)
980 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/libvirt-guests
981 %attr(754,root,root) /etc/rc.d/init.d/libvirt-guests
982 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/libvirt/virt-login-shell.conf
983 %attr(755,root,root) %{_bindir}/virsh
984 %attr(755,root,root) %{_bindir}/virt-admin
985 %attr(755,root,root) %{_bindir}/virt-host-validate
986 %attr(4755,root,root) %{_bindir}/virt-login-shell
987 %attr(755,root,root) %{_bindir}/virt-xml-validate
988 %attr(755,root,root) %{_bindir}/virt-pki-query-dn
989 %attr(755,root,root) %{_bindir}/virt-pki-validate
990 %if %{with qemu}
991 %attr(755,root,root) %{_bindir}/virt-qemu-qmp-proxy
992 %attr(755,root,root) %{_bindir}/virt-qemu-run
993 %attr(755,root,root) %{_bindir}/virt-qemu-sev-validate
994 %endif
995 %attr(755,root,root) %{_bindir}/virt-ssh-helper
996 %attr(754,root,root) %{_libexecdir}/libvirt-guests.sh
997 %attr(754,root,root) %{_libexecdir}/virt-login-shell-helper
998 %{_mandir}/man1/virsh.1*
999 %{_mandir}/man1/virt-admin.1*
1000 %{_mandir}/man1/virt-host-validate.1*
1001 %{_mandir}/man1/virt-login-shell.1*
1002 %{_mandir}/man1/virt-xml-validate.1*
1003 %{_mandir}/man1/virt-pki-query-dn.1*
1004 %{_mandir}/man1/virt-pki-validate.1*
1005 %if %{with qemu}
1006 %{_mandir}/man1/virt-qemu-qmp-proxy.1*
1007 %{_mandir}/man1/virt-qemu-run.1*
1008 %{_mandir}/man1/virt-qemu-sev-validate.1*
1009 %endif
1010 %{_mandir}/man8/libvirt-guests.8*
1011 %{_mandir}/man8/virt-ssh-helper.8*
1012 %dir %{_datadir}/libvirt/schemas
1013 %{_datadir}/libvirt/schemas/basictypes.rng
1014 %{_datadir}/libvirt/schemas/capability.rng
1015 %{_datadir}/libvirt/schemas/cpu.rng
1016 %{_datadir}/libvirt/schemas/cputypes.rng
1017 %{_datadir}/libvirt/schemas/domain.rng
1018 %{_datadir}/libvirt/schemas/domainbackup.rng
1019 %{_datadir}/libvirt/schemas/domaincaps.rng
1020 %{_datadir}/libvirt/schemas/domaincheckpoint.rng
1021 %{_datadir}/libvirt/schemas/domaincommon.rng
1022 %{_datadir}/libvirt/schemas/domainoverrides.rng
1023 %{_datadir}/libvirt/schemas/domainsnapshot.rng
1024 %{_datadir}/libvirt/schemas/inactiveDomain.rng
1025 %{_datadir}/libvirt/schemas/interface.rng
1026 %{_datadir}/libvirt/schemas/network.rng
1027 %{_datadir}/libvirt/schemas/networkcommon.rng
1028 %{_datadir}/libvirt/schemas/networkport.rng
1029 %{_datadir}/libvirt/schemas/nodedev.rng
1030 %{_datadir}/libvirt/schemas/nwfilter.rng
1031 %{_datadir}/libvirt/schemas/nwfilter_params.rng
1032 %{_datadir}/libvirt/schemas/nwfilterbinding.rng
1033 %{_datadir}/libvirt/schemas/privatedata.rng
1034 %{_datadir}/libvirt/schemas/secret.rng
1035 %{_datadir}/libvirt/schemas/storagecommon.rng
1036 %{_datadir}/libvirt/schemas/storagepool.rng
1037 %{_datadir}/libvirt/schemas/storagepoolcaps.rng
1038 %{_datadir}/libvirt/schemas/storagevol.rng
1039 # for test driver (built into libvirt)
1040 %{_datadir}/libvirt/test-screenshot.png
1041
1042 %files ssh-proxy
1043 %defattr(644,root,root,755)
1044 %attr(755,root,root) %{_libexecdir}/libvirt-ssh-proxy
1045 %config(noreplace) %verify(not md5 mtime size) /etc/ssh/ssh_config.d/30-libvirt-ssh-proxy.conf
1046
1047 %files utils
1048 %defattr(644,root,root,755)
1049
1050 %if %{with systemtap}
1051 %files -n systemtap-libvirt
1052 %defattr(644,root,root,755)
1053 %{_datadir}/systemtap/tapset/libvirt_functions.stp
1054 %{_datadir}/systemtap/tapset/libvirt_probes.stp
1055 %{?with_qemu:%{_datadir}/systemtap/tapset/libvirt_qemu_probes.stp}
1056 %endif
1057
1058 %if %{with wireshark}
1059 %files -n wireshark-libvirt
1060 %defattr(644,root,root,755)
1061 %attr(755,root,root) %{_libdir}/wireshark/plugins/*/epan/libvirt.so
1062 %endif