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