install VBoxClient-all, drop xinitrc.d, assume modern desktop for autostart stuff
[packages/VirtualBox.git] / VirtualBox.spec
CommitLineData
44a0c82d
ER
1# NOTE
2# - https://www.virtualbox.org/wiki/Linux%20build%20instructions
744bc35e
JR
3# TODO
4# - java bindings
74268e47 5# - Package SDK.
ffb38bb6 6# - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
5f8b0a92 7# If so check if it is distributable.
21a1d8ab 8# - guest x11 additions: currently incomplete/untested
23790586 9# - enable VDE networking: --enable-vde
21a1d8ab 10# - initscripts for webservice
988a8f09 11# - fix desc for dkms packages (proper wording needed), kernel modules desc is mess as well
48363591 12#
13# Conditional build:
8da42f47 14%bcond_without doc # don't build the documentation
48363591 15%bcond_without dist_kernel # without distribution kernel
d1c4ec5b 16%bcond_without kernel # don't build kernel module
d1c4ec5b 17%bcond_without userspace # don't build userspace package
21a1d8ab 18%bcond_with webservice # webservice (SOAP) support
7223ee37 19%bcond_without lightdm # lightdm greeter
c38a3946 20%bcond_without dkms # build dkms package
bddee32c 21%bcond_without verbose
05f1b1f5 22
8833bce1 23%if %{without kernel}
24%undefine with_dist_kernel
163ddb28
JR
25%else
26%define _duplicate_files_terminate_build 0
27%endif
28
29# The goal here is to have main, userspace, package built once with
30# simple release number, and only rebuild kernel packages with kernel
31# version as part of release number, without the need to bump release
32# with every kernel change.
33%if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
34%{error:kernel and userspace cannot be built at the same time on PLD builders}
35exit 1
8833bce1 36%endif
163ddb28 37
bd3faca3 38%if "%{_alt_kernel}" != "%{nil}"
163ddb28
JR
39%if 0%{?build_kernels:1}
40%{error:alt_kernel and build_kernels are mutually exclusive}
41exit 1
42%endif
bd3faca3 43%undefine with_userspace
163ddb28
JR
44%global _build_kernels %{alt_kernel}
45%else
46%global _build_kernels %{?build_kernels:,%{?build_kernels}}
bd3faca3 47%endif
163ddb28 48
05f9288a
ER
49%if %{without userspace}
50# nothing to be placed to debuginfo package
51%define _enable_debug_packages 0
52%endif
bd3faca3 53
6ca4d491 54%define kbrs %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo "BuildRequires:kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2" ; done)
163ddb28
JR
55%define kpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done)
56%define bkpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done)
57%define ikpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%install_kernel_pkg ; done)
58
653118b2 59%define rel 3
33aeed61 60%define pname VirtualBox
393ec35d
ER
61Summary: VirtualBox - x86 hardware virtualizer
62Summary(pl.UTF-8): VirtualBox - wirtualizator sprzętu x86
6ca4d491 63Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
b328d783 64Version: 4.3.8
6ca4d491 65Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
48363591 66License: GPL v2
67Group: Applications/Emulators
33aeed61 68Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
b328d783 69# Source0-md5: 422ab09b7eb9c0564b55a6a0a6e6678f
744bc35e 70Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
b328d783 71# Source1-md5: f23d3980a509418b2dcb614483271ffa
07e9b84d 72Source2: vboxservice.init
4365ecaf 73Source3: vboxservice.service
4365ecaf
JR
74Source5: mount.vdi
75Source6: udev.rules
76Source7: %{pname}-virtualbox-host-modules-load.conf
77Source8: %{pname}-virtualbox-guest-modules-load.conf
33aeed61 78Patch0: %{pname}-configure-spaces.patch
db6f33e3
KK
79Patch1: %{pname}-VBoxSysInfo.patch
80Patch2: %{pname}-warning_workaround.patch
81Patch3: %{pname}-dri.patch
44a0c82d 82Patch4: wrapper.patch
db6f33e3 83Patch5: xserver-1.12.patch
44a0c82d 84Patch6: hardening-shared.patch
d3884acf 85Patch7: lightdm-greeter-glib-includes.patch
8d08b907 86Patch8: lightdm-greeter-g++-link.patch
621cd96c 87Patch9: pld-guest.patch
b980c81c
ER
88Patch10: 16-no-update.patch
89Patch11: 18-system-xorg.patch
48363591 90URL: http://www.virtualbox.org/
83ffcfa8 91%if %{with userspace}
ce9843cd
ER
92%ifarch %{x8664}
93BuildRequires: gcc-multilib
94BuildRequires: glibc-devel(i686)
95BuildRequires: libstdc++-multilib-devel
4fff279a 96BuildRequires: libstdc++-multilib-static
ce9843cd 97%endif
ce9843cd
ER
98%if "%{pld_release}" == "ac"
99BuildRequires: XFree86-devel
100%else
1abc0217 101BuildRequires: xorg-lib-libXcomposite-devel
ce9843cd
ER
102BuildRequires: xorg-lib-libXcursor-devel
103BuildRequires: xorg-lib-libXmu-devel
e649d11e 104BuildRequires: xorg-proto-glproto-devel
acf12a87 105BuildRequires: xorg-xserver-server-devel
ce9843cd 106%endif
00149140 107BuildRequires: OpenGL-GLU-devel
523e7409 108BuildRequires: OpenGL-devel
cef75615 109BuildRequires: QtGui-devel
2d17bb72 110BuildRequires: QtNetwork-devel
dd64a424 111BuildRequires: QtOpenGL-devel
c574efad 112BuildRequires: SDL-devel >= 1.2.7
9a1cb119 113BuildRequires: acpica
ba702945 114BuildRequires: alsa-lib-devel >= 1.0.6
e5aaadde 115BuildRequires: bash
48363591 116BuildRequires: bcc
117BuildRequires: bin86
07ef7f06 118BuildRequires: curl-devel
fc19d844 119BuildRequires: device-mapper-devel
8da42f47 120%{?with_doc:BuildRequires: docbook-dtd44-xml}
44a0c82d 121BuildRequires: fakeroot
df3c39bd 122%{?with_lightdm:BuildRequires: fltk-devel}
eba4b2aa 123BuildRequires: gcc >= 5:3.2.3
55f7d7d3 124%{?with_webservice:BuildRequires: gsoap-devel}
e9aa839a 125BuildRequires: issue
7733446a 126BuildRequires: kBuild >= 0.1.9998.2700
48363591 127BuildRequires: libIDL-devel
fa974331 128BuildRequires: libcap-static
acf12a87 129BuildRequires: libdrm-devel
ff01a704 130BuildRequires: libpng-devel >= 1.2.5
d22f0a53 131BuildRequires: libstdc++-devel >= 5:3.2.3
4fff279a 132BuildRequires: libstdc++-static >= 5:3.2.3
48363591 133BuildRequires: libuuid-devel
b75fd17a 134BuildRequires: libvncserver-devel >= 0.9.9
df3c39bd 135BuildRequires: libvpx-devel
ba702945 136BuildRequires: libxml2-devel >= 2.6.26
76ea5ecb 137BuildRequires: libxslt-devel >= 1.1.17
ba702945 138BuildRequires: libxslt-progs >= 1.1.17
7223ee37 139%{?with_lightdm:BuildRequires: lightdm-libs-qt-devel}
744bc35e 140BuildRequires: makeself
90de3b27 141BuildRequires: mkisofs
3613936b 142BuildRequires: pam-devel
acf12a87 143BuildRequires: pixman-devel
0bf43862 144BuildRequires: pkgconfig
ba702945 145BuildRequires: pulseaudio-devel >= 0.9.0
523e7409 146BuildRequires: python-devel
6055e733 147BuildRequires: python-modules
250583d4 148BuildRequires: qt4-build >= 4.2.0
2700662b 149BuildRequires: qt4-linguist
163ddb28 150BuildRequires: rpmbuild(macros) >= 1.678
1e840a77 151BuildRequires: sed >= 4.0
8da42f47 152%if %{with doc}
744bc35e
JR
153BuildRequires: texlive-fonts-bitstream
154BuildRequires: texlive-fonts-other
155BuildRequires: texlive-fonts-type1-bitstream
156BuildRequires: texlive-format-pdflatex
acf12a87 157BuildRequires: texlive-latex-ucs
660fb056 158BuildRequires: texlive-xetex
8da42f47 159%endif
0bf43862 160BuildRequires: which
e5aaadde 161BuildRequires: xalan-c-devel >= 1.10.0
e5aaadde 162BuildRequires: xerces-c-devel >= 2.6.0
fc19d844 163BuildRequires: yasm
e5aaadde 164BuildRequires: zlib-devel >= 1.2.1
23d9d34e 165%endif
6ca4d491 166%{?with_dist_kernel:%{expand:%kbrs}}
0afa64ad 167Requires(post,preun): /sbin/chkconfig
5f1cec1f
ER
168Requires(postun): /usr/sbin/groupdel
169Requires(pre): /usr/bin/getgid
170Requires(pre): /usr/sbin/groupadd
b75fd17a 171Requires: libvncserver >= 0.9.9
12db98a7 172Requires: udev-core
5f1cec1f 173Provides: group(vbox)
873b17cf 174Obsoletes: VirtualBox-udev < 4.2.10-5
eba4b2aa 175ExclusiveArch: %{ix86} %{x8664}
48363591 176BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
177
eba4b2aa 178%ifarch %{x8664}
f377eb62 179%define vbox_arch amd64
5088674d 180%else
f377eb62 181%define vbox_arch x86
5088674d 182%endif
f377eb62 183%define vbox_platform linux.%{vbox_arch}
27a1aef6 184%define outdir out/%{vbox_platform}/release/bin
8d08b907 185%define objdir out/%{vbox_platform}/release/obj
5088674d 186
48363591 187%description
393ec35d 188Oracle VirtualBox is a general-purpose full virtualizer for x86
48363591 189hardware. Targeted at server, desktop and embedded use, it is now the
190only professional-quality virtualization solution that is also Open
191Source Software.
192
393ec35d 193Some of the features of VirtualBox are:
48363591 194
393ec35d 195Modularity: VirtualBox has an extremely modular design with
48363591 196well-defined internal programming interfaces and a client/server
197design. This makes it easy to control it from several interfaces at
198once: for example, you can start a virtual machine in a typical
199virtual machine GUI and then control that machine from the command
393ec35d
ER
200line. VirtualBox also comes with a full Software Development Kit: even
201though it is Open Source Software, you don't have to hack the source
202to write a new interface for VirtualBox.
48363591 203
204Virtual machine descriptions in XML: the configuration settings of
205virtual machines are stored entirely in XML and are independent of the
206local machines. Virtual machine definitions can therefore easily be
207ported to other computers.
208
1067d08d
ER
209You should install this package in your Host OS.
210
fd8fc899 211%description -l pl.UTF-8
393ec35d
ER
212Oracle VirtualBox jest emulatorem sprzętu x86. Kierowany do zastosowań
213serwerowych, desktopowych oraz wbudowanych jest obecnie jedynym
214wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym również jako
215Otwarte Oprogramowanie.
48363591 216
fd8fc899 217Przykładowe cechy VirtualBoksa:
48363591 218
393ec35d 219Modularność: VirtualBox jest wysoce zmodularyzowanym produktem z
fd8fc899
JR
220dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
221klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
222różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
223poziomu interfejsu graficznego, a później kontrolować ją z linii
393ec35d
ER
224poleceń. VirtualBox dostarcza również pełny pakiet deweloperski, co
225pozwala stworzyć dowolny inny interfejs zarządzania maszyną wirtualną.
48363591 226
fd8fc899
JR
227Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
228wirtualnych są w całości przechowywane w XML-u i są niezależne od
229lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
230konfigurację maszyny wirtualnej na inny komputer.
48363591 231
501bee39
ER
232%package gui
233Summary: Qt GUI part for VirtualBox
234Group: X11/Applications
235Requires: %{name} = %{version}-%{release}
236Requires: QtCore >= 4.7.0
237Requires: desktop-file-utils
238Requires: desktop-file-utils
239Requires: fontconfig
240Requires: fonts-Type1-urw
44a0c82d
ER
241Requires: gtk-update-icon-cache
242Requires: hicolor-icon-theme
501bee39
ER
243Requires: shared-mime-info
244Suggests: gxmessage
6f37454e 245Conflicts: %{name} < 4.3.8-3
501bee39
ER
246
247%description gui
248Qt GUI part for VirtualBox.
249
90de3b27
ER
250%package doc
251Summary: VirtualBox documentation
252Group: Documentation
253
254%description doc
255This package contains VirtualBox User Manual.
256
ffb38bb6
ER
257%package additions
258Summary: VirtualBox Guest Additions
259Group: Base
b9cc0b23 260Requires: %{name} = %{version}
44a0c82d
ER
261%if "%{_rpmversion}" >= "5"
262BuildArch: noarch
263%endif
ffb38bb6 264
00a4a7ca 265%description additions
ffb38bb6
ER
266VirtualBox Guest Additions.
267
268This package contains ISO9660 image with drivers for Guest OS.
269
1067d08d
ER
270You should install this package in your Host OS.
271
272%package guest
c0372ee9
ER
273Summary: VirtualBox Guest tools
274Group: Base
ffb104d5 275Requires(post,preun): /sbin/chkconfig
4365ecaf 276Requires(post): systemd-units >= 38
ffb104d5 277Requires: rc-scripts
2e3636e9 278Requires: systemd-units >= 38
3d9b19d8
ER
279Suggests: kernel(vboxguest)
280Suggests: kernel(vboxsf)
bf131a21 281Suggests: pam-pam_vbox
c0372ee9
ER
282
283%description guest
284Tools that utilize kernel modules for supporting integration with the
285Host, including file sharing.
286
3d9b19d8
ER
287You should install this package in your Guest OS for base VirtualBox
288communication
c0372ee9
ER
289
290%package guest-x11
307e824c
ER
291Summary: VirtualBox Guest X11 Additions
292Group: X11/Applications
c0372ee9 293Requires: %{name}-guest = %{version}-%{release}
307e824c 294Requires: xorg-app-xrandr
1067d08d 295Requires: xorg-driver-video-vboxvideo = %{version}-%{release}
3d9b19d8 296Suggests: kernel(vboxvideo)
873b17cf 297Obsoletes: xorg-driver-input-vboxmouse < %{version}-%{release}
1067d08d 298
c0372ee9 299%description guest-x11
3d9b19d8
ER
300Tools for X11 session that utilize kernel modules for supporting
301integration with the Host, like tracking of mouse pointer movement and
302X.org X11 video and mouse drivers
1067d08d 303
c0372ee9 304You should install this package in your Guest OS for X11 session.
1067d08d 305
21a1d8ab
ER
306%package webservice
307Summary: VirtualBox Web Service
308Group: Applications/Emulators
309Requires: %{name} = %{version}-%{release}
310
311%description webservice
312This package contains VirtualBox web service API daemon. It allows to
313control virtual machines via web interface.
314
9e4dd6a9 315%package -n lightdm-greeter-vbox
8d08b907
ER
316Summary: VirtualBox greeter for lightdm
317Group: Themes
22380dc7
ER
318# NOTE: '#' in url is lost because rpm treats it as comment, even hacking with
319# macros doesn't help as rpmbuild takes final result to parse
8d08b907 320URL: http://www.virtualbox.org/manual/ch09.html#autologon_unix_lightdm
4365ecaf 321Requires: kernel(vboxguest)
8d08b907
ER
322Requires: lightdm >= 1.0.1
323Provides: lightdm-greeter
324
9e4dd6a9 325%description -n lightdm-greeter-vbox
8d08b907
ER
326VirtualBox greeter for LightDM.
327
3613936b
JR
328%package -n pam-pam_vbox
329Summary: PAM module to perform automated guest logons
330Group: Base
331
332%description -n pam-pam_vbox
3ee6b9d9
ER
333PAM module (Pluggable Authentication Module) which can be used to
334perform automated guest logons.
3613936b 335
fbea1005 336%package -n xorg-driver-video-vboxvideo
393ec35d
ER
337Summary: X.org video driver for VirtualBox guest OS
338Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie
fbea1005 339Group: X11/Applications
20b8335d 340Requires: Mesa-dri-driver-swrast
fbea1005
ER
341Requires: xorg-xserver-libdri >= 1.7.4
342Requires: xorg-xserver-server >= 1.0.99.901
cd4d7202 343Requires: xorg-xserver-server(videodrv-abi) <= 15.0
fbea1005 344Requires: xorg-xserver-server(videodrv-abi) >= 2.0
2e3636e9 345Provides: xorg-driver-video
fbea1005
ER
346
347%description -n xorg-driver-video-vboxvideo
393ec35d 348X.org video driver for VirtualBox guest OS.
fbea1005
ER
349
350%description -n xorg-driver-video-vboxvideo -l pl.UTF-8
393ec35d 351Sterownik grafiki dla systemu gościa w VirtualBoksie.
fbea1005 352
988a8f09
ER
353%package -n dkms-vboxguest
354Summary: VirtualBox kernel modules source for Linux Guest
355Summary(pl.UTF-8): Moduły VirtualBoksa do jądra Linuksa dla systemu gościa
356License: GPL v2+
357Group: Base/Kernel
358Requires(pre): dkms
359Requires(post): dkms
360%if "%{_rpmversion}" >= "5"
361BuildArch: noarch
362%endif
363
364%description -n dkms-vboxguest
365This package contains DKMS-ready VirtualBox Guest Additions for Linux
366Module, host file system access (Shared Folders) and DRM support for
367Linux guest system.
368
369%description -n dkms-vboxguest -l pl.UTF-8
370Ten pakiet zawiera moduł jądra Linuksa vboxguest dla VirtualBoksa -
371dodatki dla systemu gościa, dostęp do plików systemu głównego z
372poziomu systemu gościa i sterownik obsługi DRM.
373
374%package -n dkms-vboxhost
375Summary: VirtualBox Support Drivers source
376Summary(pl.UTF-8): Moduły jądra Linuksa dla VirtualBoksa
377License: GPL v2+
378Group: Base/Kernel
379Requires(pre): dkms
380Requires(post): dkms
381%if "%{_rpmversion}" >= "5"
382BuildArch: noarch
383%endif
384
385%description -n dkms-vboxhost
386This package contains DKMS enabled sourcecode of VirtualBox Support
387Driver, Network Adapter Driver, Network Filter Driver and PCI card
388passthrough driver that works as host proxy between guest and PCI
389hardware.
390
391%description -n dkms-vboxhost -l pl.UTF-8
392Ten pakiet zawiera sterownik wsparcia dla systemu głównego, sterownik
393witrualnej karty sieciowej, sterownik filtrowania sieci dla systemu
394głównego oraz sterownik, ktory działa jako proxy między gościem i
395gospodarzem sprzętu PCI.
396
18adabff 397# KERNEL PACKAGES
b980c81c 398
18adabff 399# KEEP ALL REGULAR SUBPACKAGES BEFORE KERNEL PACKAGES.
b980c81c 400
163ddb28
JR
401%define kernel_pkg()\
402%package -n kernel%{_alt_kernel}-virtualbox-guest\
403Summary: VirtualBox kernel modules for Linux Guest\
404Summary(pl.UTF-8): Moduły VirtualBoksa do jądra Linuksa dla systemu gościa\
405Release: %{rel}@%{_kernel_ver_str}\
406Group: Base/Kernel\
407Requires(post,postun): /sbin/depmod\
408Requires(post): systemd-units >= 38\
409Requires: dev >= 2.9.0-7\
410Requires: systemd-units >= 38\
411%if %{with dist_kernel}\
412%requires_releq_kernel\
eb3ec0e6 413Requires: %{releq_kernel -n drm}\
163ddb28
JR
414Requires(postun): %releq_kernel\
415%endif\
163ddb28
JR
416Provides: kernel(vboxguest) = %{version}-%{rel}\
417Provides: kernel(vboxsf) = %{version}-%{rel}\
418Provides: kernel(vboxvideo) = %{version}-%{rel}\
419Obsoletes: kernel-init-guest\
420Conflicts: kernel%{_alt_kernel}-virtualbox-host\
421\
422%description -n kernel%{_alt_kernel}-virtualbox-guest\
423This package contains VirtualBox Guest Additions for Linux Module,\
424host file system access (Shared Folders) and DRM support for\
425Linux guest system.\
426\
427%description -n kernel%{_alt_kernel}-virtualbox-guest -l pl.UTF-8\
428Ten pakiet zawiera moduł jądra Linuksa vboxguest dla VirtualBoksa -\
429dodatki dla systemu gościa, dostęp do plików systemu głównego z\
430poziomu systemu gościa i sterownik obsługi DRM.\
431\
432%package -n kernel%{_alt_kernel}-virtualbox-host\
433Summary: VirtualBox Support Drivers\
434Summary(pl.UTF-8): Moduły jądra Linuksa dla VirtualBoksa\
435Release: %{rel}@%{_kernel_ver_str}\
436Group: Base/Kernel\
437Requires(post,postun): /sbin/depmod\
438Requires(post): systemd-units >= 38\
439Requires: dev >= 2.9.0-7\
440%if %{with dist_kernel}\
441%requires_releq_kernel\
442Requires(postun): %releq_kernel\
443%endif\
444Requires: systemd-units >= 38\
163ddb28
JR
445Provides: kernel(vboxdrv) = %{version}-%{rel}\
446Provides: kernel(vboxnetadp) = %{version}-%{rel}\
447Provides: kernel(vboxnetflt) = %{version}-%{rel}\
448Provides: kernel(vboxpci) = %{version}-%{rel}\
449Obsoletes: kernel-init-host\
450\
451%description -n kernel%{_alt_kernel}-virtualbox-host\
452This package contains VirtualBox Support Driver, Network Adapter\
453Driver, Network Filter Driver and PCI card passthrough driver that\
454works as host proxy between guest and PCI hardware.\
455\
456%description -n kernel%{_alt_kernel}-virtualbox-host -l pl.UTF-8\
457Ten pakiet zawiera sterownik wsparcia dla systemu głównego, sterownik\
458witrualnej karty sieciowej, sterownik filtrowania sieci dla systemu\
459głównego oraz sterownik, ktory działa jako proxy między gościem i\
460gospodarzem sprzętu PCI.\
461\
462%if %{with kernel}\
463%files -n kernel%{_alt_kernel}-virtualbox-guest\
464%defattr(644,root,root,755)\
465%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-guest.conf\
466/lib/modules/%{_kernel_ver}/misc/vboxguest.ko*\
467/lib/modules/%{_kernel_ver}/misc/vboxsf.ko*\
468/lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*\
469\
470%files -n kernel%{_alt_kernel}-virtualbox-host\
471%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-host.conf\
472/lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*\
473/lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*\
474/lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*\
475/lib/modules/%{_kernel_ver}/misc/vboxpci.ko*\
476%endif\
477\
478%post -n kernel%{_alt_kernel}-virtualbox-guest\
479%depmod %{_kernel_ver}\
480\
481%postun -n kernel%{_alt_kernel}-virtualbox-guest\
482%depmod %{_kernel_ver}\
483\
484%post -n kernel%{_alt_kernel}-virtualbox-host\
485%depmod %{_kernel_ver}\
486\
487%postun -n kernel%{_alt_kernel}-virtualbox-host\
488%depmod %{_kernel_ver}\
489%{nil}
490
491%define build_kernel_pkg()\
492export KERN_DIR=%{_kernelsrcdir}\
493cd PLD-MODULE-BUILD/HostDrivers\
494%build_kernel_modules -m vboxdrv -C vboxdrv\
495%build_kernel_modules -m vboxnetadp -C vboxnetadp\
496%build_kernel_modules -m vboxnetflt -C vboxnetflt\
497%build_kernel_modules -m vboxpci -C vboxpci\
498cd ../GuestDrivers\
499%build_kernel_modules -m vboxguest -C vboxguest\
500cp -a vboxguest/Module.symvers vboxsf\
501%build_kernel_modules -m vboxsf -C vboxsf -c\
502%build_kernel_modules -m vboxvideo -C vboxvideo\
503cd ../..\
504%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc\
505%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc\
506%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc\
507%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxpci/vboxpci -d misc\
508%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc\
509%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc\
510%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo/vboxvideo -d misc\
511%{nil}
512
513%{?with_kernel:%{expand:%kpkg}}
67a4f3c1 514
48363591 515%prep
33aeed61 516%setup -q -n %{pname}-%{version}
e709ce6b 517%patch0 -p1
db6f33e3 518%patch1 -p1
006342ee 519%patch2 -p1
8473a80d 520%patch3 -p1
44a0c82d 521%patch4 -p1
9a7b1cdc 522%patch5 -p1
44a0c82d 523%patch6 -p1
d3884acf 524%patch7 -p1
8d08b907 525%patch8 -p1
621cd96c 526%patch9 -p1
fddcb741 527
744bc35e
JR
528%{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
529 -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
0b6de2b7 530
f471b832
ER
531# Respect LDFLAGS
532%{__sed} -i -e "s@_LDFLAGS\.%{vbox_arch}*.*=@& %{rpmldflags}@g" \
533 -i Config.kmk src/libs/xpcom18a4/Config.kmk
534
44a0c82d 535%{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' src/VBox/Installer/linux/VBox.sh
fa19f650 536
1794e74d
ER
537install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
538cd PLD-MODULE-BUILD
539../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
540tar -zxf guest-modules.tar.gz -C GuestDrivers
541
cadbdf55 542../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
1794e74d
ER
543tar -zxf host-modules.tar.gz -C HostDrivers
544cd -
59d12745
KK
545%patch10 -p1
546%patch11 -p1
547
e9ed9ec1
ER
548# using system kBuild package
549%{__rm} -r kBuild
550
621cd96c
ER
551# use linux icon for now
552cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}.png
553cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}_64.png
554
316a5697
ER
555cat <<'EOF'>> LocalConfig.kmk
556%{?with_verbose:KBUILD_VERBOSE=3}
557USERNAME=%(id -un)
558__VBOX_BUILD_PUBLISHER=_PLD
559VBOX_VERSION_STRING=$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)_PLD
560XSERVER_VERSION=%(rpm -q --queryformat '%{V}\n' xorg-xserver-server-devel | awk -F. '{ print $1 $2 }' 2>/dev/null || echo ERROR)
561VBOX_USE_SYSTEM_XORG_HEADERS=1
562%if %{with lightdm}
563VBOX_WITH_LIGHTDM_GREETER=1
564VBOX_WITH_LIGHTDM_GREETER_PACKING=1
565%endif
566TOOL_GCC3_CFLAGS=%{rpmcflags}
567TOOL_GCC3_CXXFLAGS=%{rpmcxxflags}
568VBOX_GCC_OPT=%{rpmcxxflags}
44a0c82d
ER
569
570VBOX_PATH_APP_PRIVATE_ARCH := %{_libdir}/%{pname}
571VBOX_PATH_APP_PRIVATE := %{_datadir}/%{pname}
572VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH)
573VBOX_WITH_ORIGIN :=
574VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH)
575#VBOX_PATH_APP_DOCS := %{_docdir}/%{pname}-doc-%{version}
576
577# don't build testcases to save time, they are not needed for the package
578VBOX_WITH_TESTCASES :=
579VBOX_WITH_TESTSUITE :=
316a5697
ER
580EOF
581
fddcb741 582%build
83ffcfa8 583%if %{with userspace}
106d8451 584./configure \
ae1bbc88 585 --with-gcc="%{__cc}" \
586 --with-g++="%{__cxx}" \
8da42f47 587 %{!?with_doc:--disable-docs} \
744bc35e 588 --disable-java \
5a497466 589 --disable-hardening \
01e414ba 590 --disable-kmods \
55f7d7d3
ER
591 --enable-vnc \
592 %{__enable webservice} \
593 %{nil}
48363591 594
316a5697 595kmk %{?_smp_mflags}
74268e47 596
744bc35e 597%{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
d1c4ec5b 598%endif
48363591 599
51ef4838
JR
600%{?with_kernel:%{expand:%bkpkg}}
601
48363591 602%install
603rm -rf $RPM_BUILD_ROOT
604
d1c4ec5b 605%if %{with userspace}
c11f39b3 606install -d $RPM_BUILD_ROOT{%{_bindir},/sbin,%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
501bee39 607 $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_datadir}/mime/packages} \
12db98a7 608 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input} \
4365ecaf 609 $RPM_BUILD_ROOT{/lib/udev,/etc/udev/rules.d} \
44a0c82d 610 $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{systemdunitdir},%{_usrsrc}}
a70507fb 611
dca6c443 612# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
632ec0b7 613if cp -al COPYING $RPM_BUILD_ROOT/COPYING; then
dca6c443 614 l=l
44a0c82d 615 %{__rm} $RPM_BUILD_ROOT/COPYING
dca6c443
ER
616fi
617
33aeed61 618cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
6110bfb9 619cp -a$l %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxGuestAdditions.iso
48363591 620
44a0c82d 621# vboxvideo
ffd7f18a 622%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
44a0c82d 623%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_system.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
27a1aef6 624# XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
ffd7f18a
JR
625%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
626%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
627%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
628%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
629%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
630%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
d1c4ec5b 631
1067d08d 632# Guest Only Tools
ffd7f18a
JR
633%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
634%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
44a0c82d 635%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
4e3859c5 636install -d $RPM_BUILD_ROOT/etc/xdg/autostart
90de3b27
ER
637cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
638 $RPM_BUILD_ROOT/etc/xdg/autostart/vboxclient.desktop
4e3859c5 639install -p src/VBox/Additions/x11/Installer/98vboxadd-xclient $RPM_BUILD_ROOT%{_bindir}/VBoxClient-all
44a0c82d
ER
640install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxservice
641install -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/vboxservice.service
1067d08d 642
8d08b907
ER
643%if %{with lightdm}
644install -d $RPM_BUILD_ROOT%{_datadir}/xgreeters
29c4b6b6 645%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_sbindir}}/vbox-greeter
8d08b907
ER
646cp -p %{objdir}/Additions/Installer/linux/share/VBoxGuestAdditions/vbox-greeter.desktop $RPM_BUILD_ROOT%{_datadir}/xgreeters
647%endif
648
44a0c82d
ER
649# pam
650install -d $RPM_BUILD_ROOT/%{_lib}/security
651%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,/%{_lib}/security}/pam_vbox.so
652
653# mount.vboxsf
654%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
655install -p mount.vboxsf $RPM_BUILD_ROOT/sbin/mount.vboxsf
656
657# mount.vdi
658install -p %{SOURCE5} $RPM_BUILD_ROOT/sbin/mount.vdi
659
660# these belong to .iso
661%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/autorun.sh
662%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/runasroot.sh
663
dca6c443 664# unknown - checkme
1067d08d 665%if 1
44a0c82d
ER
666%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd
667%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-service
668%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-x11
669%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/helpers/generate_service_file
ffd7f18a
JR
670%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
671%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
672%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
ffd7f18a
JR
673%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/load.sh
674%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/loadall.sh
ffd7f18a 675%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/VBoxHeadlessXOrg.sh
ffd7f18a
JR
676%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/init_template.sh
677%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install_service
44a0c82d
ER
678%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
679%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
680%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
1067d08d 681%endif
dca6c443 682
44a0c82d
ER
683# use upstream installer to relocate rest of the files, fakeroot because it forces uid/gid 0
684fakeroot sh -x $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install.sh \
685 --ose \
686 --prefix %{_prefix} \
687 %{!?with_webservice:--no-web-service} \
688 --root $RPM_BUILD_ROOT
e56dcfeb 689
44a0c82d
ER
690%{__mv} $RPM_BUILD_ROOT{%{_datadir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
691cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
692
693# cleanup lowercased variants, not used in any script (less cruft)
694%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxautostart
695%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxballoonctrl
696%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxheadless
697%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxmanage
698%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxsdl
699%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/virtualbox
700
701# cleanup unpackaged
702%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{sdk,testcase}
703%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace
704%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{pname}/src
705%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
706%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
707%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/generated.sh
708%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
709%{__rm} $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}_PLD
710%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/vboxapi*
711
712# weird icon size
713%{__rm} -r $RPM_BUILD_ROOT%{_iconsdir}/hicolor/40x40
714# duplicate, we already have virtualbox.png (128x128), this is 32x32
715%{__rm} -r $RPM_BUILD_ROOT%{_pixmapsdir}/VBox.png
716
717%if %{with doc}
718ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
719ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual_fr_FR.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual_fr_FR.pdf
720%endif
33233365 721
988a8f09
ER
722%if %{with dkms}
723install -d $RPM_BUILD_ROOT%{_usrsrc}/vbox{host,guest}-%{version}-%{rel}
724cp -a PLD-MODULE-BUILD/HostDrivers/* $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
725cp -p src/VBox/HostDrivers/linux/dkms.conf $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
726%{__make} -C $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel} clean
70dee522 727rm -rf $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}/*/o
988a8f09
ER
728
729cp -a PLD-MODULE-BUILD/GuestDrivers/* $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}
730cp -p src/VBox/Additions/common/VBoxGuest/linux/dkms.conf $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}
731%{__make} -C $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel} clean
70dee522 732rm -rf $RPM_BUILD_ROOT%{_usrsrc}/vboxguest-%{version}-%{rel}/*/o
988a8f09 733%endif
c38a3946 734%endif
988a8f09 735
da083e45 736%if %{with kernel}
4365ecaf 737install -d $RPM_BUILD_ROOT{/etc/modules-load.d,/sbin}
163ddb28
JR
738
739cp -a PLD-MODULE-BUILD/installed/* $RPM_BUILD_ROOT
fa974331 740
35ccdfcc 741# Tell systemd to load modules
4365ecaf
JR
742cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-host.conf
743cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-guest.conf
d1c4ec5b 744%endif
05f1b1f5 745
48363591 746%clean
747rm -rf $RPM_BUILD_ROOT
748
3b63d3e8 749%pre
750%groupadd -g 221 -r -f vbox
751
14561782 752%post
12db98a7
JR
753for i in /sys/bus/usb/devices/*; do
754 if [ -r "$i/dev" ]; then
755 dev="`cat "$i/dev" 2>/dev/null || true`"
756 major="`expr "$dev" : '\(.*\):' 2> /dev/null || true`"
757 minor="`expr "$dev" : '.*:\(.*\)' 2> /dev/null || true`"
758 class="`cat $i/bDeviceClass 2> /dev/null || true`"
759 /lib/udev/VBoxCreateUSBNode.sh "$major" "$minor" "$class" vbox 2>/dev/null
760 fi
761done
1403ac49 762
d8ed80f4 763cat << 'EOF'
4365ecaf 764You must install vboxdrv kernel modules for this software to work:
163ddb28 765 kernel*-virtualbox-host-%{version}-%{rel}@*
05f12a30 766
fa974331 767On Guest Linux system you might want to install:
163ddb28 768 kernel*-virtualbox-guest-%{version}-%{rel}@*
7841ddfd 769
d8ed80f4 770EOF
771
3b63d3e8 772%postun
773if [ "$1" = "0" ]; then
774 %groupremove vbox
775fi
776
501bee39
ER
777%post gui
778%update_desktop_database
44a0c82d 779%update_icon_cache hicolor
501bee39
ER
780%update_mime_database
781
782%postun gui
783%update_desktop_database
44a0c82d 784%update_icon_cache hicolor
501bee39
ER
785%update_mime_database
786
07e9b84d 787%post guest
31e46441
ER
788/sbin/chkconfig --add vboxservice
789%service vboxservice restart
4365ecaf 790%systemd_post vboxservice.service
07e9b84d 791
b93128e2 792%preun guest
07e9b84d 793if [ "$1" = "0" ]; then
31e46441
ER
794 /sbin/chkconfig --del vboxservice
795 %service vboxservice -q stop
07e9b84d 796fi
4365ecaf 797%systemd_preun vboxservice.service
07e9b84d 798
4365ecaf
JR
799%postun guest
800%systemd_reload
ece7f2f1 801
4365ecaf
JR
802%triggerpostun guest -- VirtualBox-guest < 4.3.0-1
803%systemd_trigger vboxservice.service
ece7f2f1 804
4365ecaf
JR
805%pre -n lightdm-greeter-vbox
806%addusertogroup xdm vbox
74268e47 807
988a8f09
ER
808%post -n dkms-vboxguest
809set -x
810dkms add -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
811dkms build -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
812dkms install -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade || :
813
814%preun -n dkms-vboxguest
815set -x
816dkms remove -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade --all || :
817
818%post -n dkms-vboxhost
819set -x
820dkms add -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
821dkms build -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
822dkms install -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade || :
823
824%preun -n dkms-vboxhost
825set -x
826dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
827
d1c4ec5b 828%if %{with userspace}
48363591 829%files
830%defattr(644,root,root,755)
44a0c82d 831%attr(755,root,root) /sbin/mount.vdi
753cf356
ER
832%attr(755,root,root) %{_bindir}/VBox
833%attr(755,root,root) %{_bindir}/VBoxAutostart
834%attr(755,root,root) %{_bindir}/VBoxBalloonCtrl
85b005e2 835%attr(755,root,root) %{_bindir}/VBoxHeadless
836%attr(755,root,root) %{_bindir}/VBoxManage
837%attr(755,root,root) %{_bindir}/VBoxSDL
85b005e2 838%attr(755,root,root) %{_bindir}/VBoxTunctl
44a0c82d 839%dir %{_libdir}/%{pname}
753cf356 840# libraries
23790586
ER
841%attr(755,root,root) %{_libdir}/%{pname}/DBGCPlugInDiggers.so
842%attr(755,root,root) %{_libdir}/%{pname}/VBoxAuth.so
843%attr(755,root,root) %{_libdir}/%{pname}/VBoxAuthSimple.so
23790586 844%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD.so
753cf356 845%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD2.so
23790586
ER
846%attr(755,root,root) %{_libdir}/%{pname}/VBoxDDU.so
847%attr(755,root,root) %{_libdir}/%{pname}/VBoxDragAndDropSvc.so
23790586
ER
848%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestControlSvc.so
849%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestPropSvc.so
23790586
ER
850%attr(755,root,root) %{_libdir}/%{pname}/VBoxHostChannel.so
851%attr(755,root,root) %{_libdir}/%{pname}/VBoxKeyboard.so
23790586
ER
852%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhostcrutil.so
853%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhosterrorspu.so
854%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLrenderspu.so
855%attr(755,root,root) %{_libdir}/%{pname}/VBoxPython*.so
856%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM.so
753cf356
ER
857%attr(755,root,root) %{_libdir}/%{pname}/VBoxRT.so
858%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedClipboard.so
859%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedCrOpenGL.so
860%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedFolders.so
861%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMM.so
862%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOM.so
863%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMC.so
f701b529 864%ifarch %{ix86}
23790586
ER
865%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM32.so
866%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM64.so
f701b529 867%endif
753cf356
ER
868
869# binaries
870%attr(755,root,root) %{_libdir}/%{pname}/VBoxAutostart
871%attr(755,root,root) %{_libdir}/%{pname}/VBoxBalloonCtrl
872%attr(755,root,root) %{_libdir}/%{pname}/VBoxExtPackHelperApp
873%attr(755,root,root) %{_libdir}/%{pname}/VBoxHeadless
874%attr(755,root,root) %{_libdir}/%{pname}/VBoxManage
875%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetAdpCtl
876%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetDHCP
877%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetNAT
23790586 878%attr(755,root,root) %{_libdir}/%{pname}/VBoxSDL
23790586 879%attr(755,root,root) %{_libdir}/%{pname}/VBoxSVC
23790586 880%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMMPreload
753cf356 881%attr(755,root,root) %{_libdir}/%{pname}/VBoxVolInfo
23790586 882%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMIPCD
753cf356
ER
883%attr(755,root,root) %{_libdir}/%{pname}/iPxeBaseBin
884%if %{with doc}
885%attr(755,root,root) %{_libdir}/%{pname}/VBoxManageHelp
886%endif
44a0c82d
ER
887
888%dir %{_libdir}/%{pname}/ExtensionPacks
889%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack.xml
890%dir %{_libdir}/%{pname}/ExtensionPacks/VNC
891%dir %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*
23790586 892%attr(755,root,root) %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*/VBoxVNC*.so
44a0c82d 893
7733446a 894%{_libdir}/%{pname}/VBoxDD2GC.debug
23790586 895%{_libdir}/%{pname}/VBoxDD2GC.gc
7733446a 896%{_libdir}/%{pname}/VBoxDD2R0.debug
23790586 897%{_libdir}/%{pname}/VBoxDD2R0.r0
7733446a
JR
898%{_libdir}/%{pname}/VBoxDDGC.debug
899%{_libdir}/%{pname}/VBoxDDGC.gc
900%{_libdir}/%{pname}/VBoxDDR0.debug
23790586 901%{_libdir}/%{pname}/VBoxDDR0.r0
23790586
ER
902%{_libdir}/%{pname}/VBoxEFI32.fd
903%{_libdir}/%{pname}/VBoxEFI64.fd
7733446a
JR
904%{_libdir}/%{pname}/VMMGC.debug
905%{_libdir}/%{pname}/VMMGC.gc
906%{_libdir}/%{pname}/VMMR0.debug
907%{_libdir}/%{pname}/VMMR0.r0
44a0c82d
ER
908
909%dir %{_libdir}/%{pname}/components
501bee39 910%{_libdir}/%{pname}/components/VBoxXPCOMBase.xpt
23790586
ER
911%{_libdir}/%{pname}/components/VirtualBox_XPCOM.xpt
912%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxC.so
913%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxSVCM.so
914%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxXPCOMIPCC.so
501bee39 915
44a0c82d
ER
916%dir %{_datadir}/%{pname}
917%attr(755,root,root) %{_datadir}/%{pname}/VBoxSysInfo.sh
918
501bee39
ER
919%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
920%attr(755,root,root) /lib/udev/VBoxCreateUSBNode.sh
921
922%files gui
923%defattr(644,root,root,755)
924%attr(755,root,root) %{_bindir}/VirtualBox
501bee39
ER
925%attr(755,root,root) %{_libdir}/%{pname}/VBoxDbg.so
926%attr(755,root,root) %{_libdir}/%{pname}/VBoxTestOGL
753cf356 927%attr(755,root,root) %{_libdir}/%{pname}/VirtualBox
44a0c82d
ER
928%dir %{_datadir}/%{pname}/nls
929%lang(bg) %{_datadir}/%{pname}/nls/*_bg.qm
930%lang(ca) %{_datadir}/%{pname}/nls/*_ca.qm
931%lang(ca_VA) %{_datadir}/%{pname}/nls/*_ca_VA.qm
932%lang(cs) %{_datadir}/%{pname}/nls/*_cs.qm
933%lang(da) %{_datadir}/%{pname}/nls/*_da.qm
934%lang(de) %{_datadir}/%{pname}/nls/*_de.qm
935%lang(en) %{_datadir}/%{pname}/nls/*_en.qm
936%lang(es) %{_datadir}/%{pname}/nls/*_es.qm
937%lang(eu) %{_datadir}/%{pname}/nls/*_eu.qm
938%lang(fi) %{_datadir}/%{pname}/nls/*_fa_IR.qm
939%lang(fi) %{_datadir}/%{pname}/nls/*_fi.qm
940%lang(fr) %{_datadir}/%{pname}/nls/*_fr.qm
941%lang(gl_ES) %{_datadir}/%{pname}/nls/*_gl_ES.qm
942%lang(hu) %{_datadir}/%{pname}/nls/*_hu.qm
943%lang(id) %{_datadir}/%{pname}/nls/*_id.qm
944%lang(it) %{_datadir}/%{pname}/nls/*_it.qm
945%lang(ja) %{_datadir}/%{pname}/nls/*_ja.qm
946%lang(km_KH) %{_datadir}/%{pname}/nls/*_km_KH.qm
947%lang(ko) %{_datadir}/%{pname}/nls/*_ko.qm
948%lang(lt) %{_datadir}/%{pname}/nls/*_lt.qm
949%lang(nl) %{_datadir}/%{pname}/nls/*_nl.qm
950%lang(pl) %{_datadir}/%{pname}/nls/*_pl.qm
951%lang(pt) %{_datadir}/%{pname}/nls/*_pt.qm
952%lang(pt_BR) %{_datadir}/%{pname}/nls/*_pt_BR.qm
953%lang(ro) %{_datadir}/%{pname}/nls/*_ro.qm
954%lang(ru) %{_datadir}/%{pname}/nls/*_ru.qm
955%lang(sk) %{_datadir}/%{pname}/nls/*_sk.qm
956%lang(sr) %{_datadir}/%{pname}/nls/*_sr.qm
957%lang(sv) %{_datadir}/%{pname}/nls/*_sv.qm
958%lang(tr) %{_datadir}/%{pname}/nls/*_tr.qm
959%lang(uk) %{_datadir}/%{pname}/nls/*_uk.qm
960%lang(zh_CN) %{_datadir}/%{pname}/nls/*_zh_CN.qm
961%lang(zh_TW) %{_datadir}/%{pname}/nls/*_zh_TW.qm
501bee39 962%{_desktopdir}/virtualbox.desktop
44a0c82d
ER
963%{_pixmapsdir}/virtualbox.png
964%{_iconsdir}/hicolor/*/apps/virtualbox.png
965%{_iconsdir}/hicolor/*/apps/virtualbox.svg
966%{_iconsdir}/hicolor/*/mimetypes/virtualbox-*.png
501bee39 967%{_datadir}/mime/packages/virtualbox.xml
12db98a7 968
ffb38bb6 969%files additions
9dda6415 970%defattr(644,root,root,755)
44a0c82d 971%{_datadir}/%{pname}/VBoxGuestAdditions.iso
ffb38bb6 972
1067d08d
ER
973%files guest
974%defattr(644,root,root,755)
c11f39b3 975%attr(755,root,root) /sbin/mount.vboxsf
07e9b84d 976%attr(754,root,root) /etc/rc.d/init.d/vboxservice
4365ecaf 977%{systemdunitdir}/vboxservice.service
c0372ee9
ER
978%attr(755,root,root) %{_bindir}/VBoxControl
979%attr(755,root,root) %{_bindir}/VBoxService
980
981%files guest-x11
3d9b19d8 982%defattr(644,root,root,755)
90de3b27 983/etc/xdg/autostart/vboxclient.desktop
4e3859c5
ER
984%attr(755,root,root) %{_bindir}/VBoxClient
985%attr(755,root,root) %{_bindir}/VBoxClient-all
1067d08d 986
44a0c82d 987%if 0
23790586
ER
988%attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd
989%attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd-service
990%attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd-x11
44a0c82d 991%endif
744bc35e 992
21a1d8ab
ER
993%if %{with webservice}
994%files webservice
995%defattr(644,root,root,755)
44a0c82d 996%attr(755,root,root) %{_bindir}/vboxwebsrv
21a1d8ab
ER
997%attr(755,root,root) %{_libdir}/%{pname}/vboxwebsrv
998%attr(755,root,root) %{_libdir}/%{pname}/webtest
999%endif
1000
8d08b907 1001%if %{with lightdm}
9e4dd6a9 1002%files -n lightdm-greeter-vbox
8d08b907
ER
1003%defattr(644,root,root,755)
1004%attr(755,root,root) %{_sbindir}/vbox-greeter
1005%{_datadir}/xgreeters/vbox-greeter.desktop
1006%endif
1007
3613936b
JR
1008%files -n pam-pam_vbox
1009%defattr(644,root,root,755)
3ee6b9d9 1010%attr(755,root,root) /%{_lib}/security/pam_vbox.so
3613936b 1011
90de3b27
ER
1012%if %{with doc}
1013%files doc
1014%defattr(644,root,root,755)
f0a66b84
JR
1015# this is a symlink...
1016%doc %{_libdir}/%{pname}/UserManual.pdf
6ee3b66d 1017%lang(fr) %doc %{_libdir}/%{pname}/UserManual_fr_FR.pdf
f0a66b84 1018# ..to this file
90de3b27 1019%doc %{outdir}/UserManual.pdf
d43f5558 1020%lang(fr) %doc %{outdir}/UserManual_fr_FR.pdf
90de3b27
ER
1021%endif
1022
09c79ddb 1023%files -n xorg-driver-video-vboxvideo
1024%defattr(644,root,root,755)
1025%attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
27a1aef6
ER
1026%attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
1027# vboxvideo_dri.so deps
1067d08d 1028%attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
27a1aef6
ER
1029%attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
1030%attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
1031%attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
1032%attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
1033%attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
988a8f09
ER
1034
1035%if %{with dkms}
1036%files -n dkms-vboxguest
1037%defattr(644,root,root,755)
1038%{_usrsrc}/vboxguest-%{version}-%{rel}
1039
1040%files -n dkms-vboxhost
1041%defattr(644,root,root,755)
1042%{_usrsrc}/vboxhost-%{version}-%{rel}
1043%endif
c38a3946 1044%endif
This page took 1.149854 seconds and 4 git commands to generate.