3 # - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS.
5 # - Package utils (and write initscripts ?) for Guest OS.
6 # - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
7 # If so check if it is distributable.
10 %bcond_without dist_kernel # without distribution kernel
11 %bcond_without kernel # don't build kernel module
12 %bcond_without userspace # don't build userspace package
13 %bcond_with force_userspace # force userspace build (useful if alt_kernel is set)
17 %undefine with_dist_kernel
19 %if "%{_alt_kernel}" != "%{nil}"
20 %undefine with_userspace
22 %if %{with force_userspace}
23 %define with_userspace 1
25 %if %{without userspace}
26 # nothing to be placed to debuginfo package
27 %define _enable_debug_packages 0
31 %define pname VirtualBox
32 Summary: VirtualBox OSE - x86 hardware virtualizer
33 Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
34 Name: %{pname}%{_alt_kernel}
38 Group: Applications/Emulators
39 Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}-OSE.tar.bz2
40 # Source0-md5: 93b5caaac8571591c21b679987cbe518
41 Source1: http://download.virtualbox.org/virtualbox/%{version}/UserManual.pdf
42 # Source1-md5: 8561a2b883fbede1e93b7dfb2238e7cc
43 Source2: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
44 # Source2-md5: bfcf00607c6def732365bf83c6a45315
45 Source3: %{pname}-vboxdrv.init
46 Source4: %{pname}-vboxguest.init
47 Source5: %{pname}-vboxnetflt.init
48 Source6: %{pname}-vboxsf.init
49 Source7: %{pname}-vboxnetadp.init
52 Patch0: %{pname}-configure.patch
53 Patch1: %{pname}-configure-spaces.patch
54 Patch2: %{pname}-export_modules.patch
55 Patch3: %{pname}-VBoxSysInfo.patch
56 Patch4: %{pname}-gcc.patch
57 URL: http://www.virtualbox.org/
58 BuildRequires: rpmbuild(macros) >= 1.535
61 BuildRequires: gcc-multilib
62 BuildRequires: glibc-devel(i686)
63 BuildRequires: libstdc++-multilib-devel
64 BuildRequires: libstdc++-multilib-static
66 %if "%{pld_release}" == "ac"
67 BuildRequires: XFree86-devel
69 BuildRequires: xorg-lib-libXcursor-devel
70 BuildRequires: xorg-lib-libXmu-devel
72 BuildRequires: OpenGL-GLU-devel
73 BuildRequires: OpenGL-devel
74 BuildRequires: QtGui-devel
75 BuildRequires: QtNetwork-devel
76 BuildRequires: QtOpenGL-devel
77 BuildRequires: SDL-devel >= 1.2.7
79 BuildRequires: alsa-lib-devel >= 1.0.6
83 BuildRequires: curl-devel
84 BuildRequires: gcc >= 5:3.2.3
85 BuildRequires: libIDL-devel
86 BuildRequires: libcap-static
87 BuildRequires: libpng-devel >= 1.2.5
88 BuildRequires: libstdc++-devel >= 5:3.2.3
89 BuildRequires: libstdc++-static >= 5:3.2.3
90 BuildRequires: libuuid-devel
91 BuildRequires: libxml2-devel >= 2.6.26
92 BuildRequires: libxslt-devel >= 1.1.17
93 BuildRequires: libxslt-progs >= 1.1.17
94 BuildRequires: pkgconfig
95 BuildRequires: pulseaudio-devel >= 0.9.0
96 BuildRequires: python-devel
97 BuildRequires: python-modules
98 BuildRequires: qt4-build >= 4.2.0
99 BuildRequires: qt4-linguist
100 BuildRequires: sed >= 4.0
102 BuildRequires: xalan-c-devel >= 1.10.0
103 BuildRequires: xerces-c-devel >= 2.6.0
104 BuildRequires: zlib-devel >= 1.2.1
106 %if %{with dist_kernel}
107 BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20
109 Requires(post,preun): /sbin/chkconfig
110 Requires(postun): /usr/sbin/groupdel
111 Requires(pre): /usr/bin/getgid
112 Requires(pre): /usr/sbin/groupadd
113 Requires: QtCore >= 4.6.1
115 Provides: group(vbox)
116 ExclusiveArch: %{ix86} %{x8664}
117 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
120 %define vbox_platform linux.amd64
122 %define vbox_platform linux.x86
124 %define outdir out/%{vbox_platform}/release/bin
125 %define _sbindir /sbin
128 InnoTek VirtualBox OSE is a general-purpose full virtualizer for x86
129 hardware. Targeted at server, desktop and embedded use, it is now the
130 only professional-quality virtualization solution that is also Open
133 Some of the features of VirtualBox OSE are:
135 Modularity: VirtualBox OSE has an extremely modular design with
136 well-defined internal programming interfaces and a client/server
137 design. This makes it easy to control it from several interfaces at
138 once: for example, you can start a virtual machine in a typical
139 virtual machine GUI and then control that machine from the command
140 line. VirtualBox OSE also comes with a full Software Development Kit:
141 even though it is Open Source Software, you don't have to hack the
142 source to write a new interface for VirtualBox OSE.
144 Virtual machine descriptions in XML: the configuration settings of
145 virtual machines are stored entirely in XML and are independent of the
146 local machines. Virtual machine definitions can therefore easily be
147 ported to other computers.
149 %description -l pl.UTF-8
150 InnoTek VirtualBox OSE jest emulatorem sprzętu x86. Kierowany do
151 zastosowań serwerowych, desktopowych oraz wbudowanych jest obecnie
152 jedynym wysokiej jakości rozwiązaniem wirtualizacyjnym dostępnym
153 również jako Otwarte Oprogramowanie.
155 Przykładowe cechy VirtualBoksa:
157 Modularność: VirtualBox OSE jest wysoce zmodularyzowanym produktem z
158 dobrze zaprojektowanym wewnętrznym interfejsem programowym typu
159 klient/serwer. Dzięki temu można łatwo kontrolować go za pomocą
160 różnych interfejsów. Można na przykład uruchomić maszynę wirtualną z
161 poziomu interfejsu graficznego, a później kontrolować ją z linii
162 poleceń. VirtualBox OSE dostarcza również pełny pakiet deweloperski,
163 co pozwala stworzyć dowolny inny interfejs zarządzania maszyną
166 Opisy maszyn wirtualnych w XML-u: konfiguracje poszczególnych maszyn
167 wirtualnych są w całości przechowywane w XML-u i są niezależne od
168 lokalnej maszyny. Dzięki temu można szybko i łatwo przenieść
169 konfigurację maszyny wirtualnej na inny komputer.
172 Summary: udev rules for VirtualBox OSE kernel modules
173 Summary(pl.UTF-8): Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
179 udev rules for VirtualBox OSE kernel modules.
181 %description udev -l pl.UTF-8
182 Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
185 Summary: VirtualBox Guest Additions
187 Requires: %{name} = %{version}-%{release}
189 %description additions
190 VirtualBox Guest Additions.
192 This package contains ISO9660 image with drivers for Guest OS.
194 %package -n kernel%{_alt_kernel}-misc-vboxguest
195 Summary: VirtualBox OSE Guest Additions for Linux Module
196 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
197 Release: %{rel}@%{_kernel_ver_str}
199 Requires(post,postun): /sbin/depmod
200 Requires: dev >= 2.9.0-7
201 %if %{with dist_kernel}
202 %requires_releq_kernel
203 Requires(postun): %releq_kernel
205 Provides: kernel(vboxguest) = %{version}-%{rel}
206 Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
207 Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
209 %description -n kernel%{_alt_kernel}-misc-vboxguest
210 VirtualBox OSE Guest Additions for Linux Module.
212 %description -n kernel%{_alt_kernel}-misc-vboxguest -l pl.UTF-8
213 Moduł jądra Linuksa vboxguest dla VirtualBoksa OSE - dodatki dla
216 %package -n kernel%{_alt_kernel}-misc-vboxdrv
217 Summary: VirtualBox OSE Support Driver
218 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
219 Release: %{rel}@%{_kernel_ver_str}
221 Requires(post,postun): /sbin/depmod
222 Requires: dev >= 2.9.0-7
223 %if %{with dist_kernel}
224 %requires_releq_kernel
225 Requires(postun): %releq_kernel
227 Provides: kernel(vboxdrv) = %{version}-%{rel}
229 %description -n kernel%{_alt_kernel}-misc-vboxdrv
230 VirtualBox OSE Support Driver.
232 %description -n kernel%{_alt_kernel}-misc-vboxdrv -l pl.UTF-8
233 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik wsparcia dla
236 %package -n kernel%{_alt_kernel}-misc-vboxnetadp
237 Summary: VirtualBox OSE Network Adapter Driver
238 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
239 Release: %{rel}@%{_kernel_ver_str}
241 Requires(post,postun): /sbin/depmod
242 Requires: dev >= 2.9.0-7
243 Requires: kernel%{_alt_kernel}-misc-vboxdrv
244 %if %{with dist_kernel}
245 %requires_releq_kernel
246 Requires(postun): %releq_kernel
248 Provides: kernel(vboxnetflt) = %{version}-%{rel}
250 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
251 VirtualBox OSE Network Adapter Driver.
253 %description -n kernel%{_alt_kernel}-misc-vboxnetadp -l pl.UTF-8
254 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik witrualnej karty
257 %package -n kernel%{_alt_kernel}-misc-vboxnetflt
258 Summary: VirtualBox OSE Network Filter Driver
259 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
260 Release: %{rel}@%{_kernel_ver_str}
262 Requires(post,postun): /sbin/depmod
263 Requires: dev >= 2.9.0-7
264 Requires: kernel%{_alt_kernel}-misc-vboxdrv
265 %if %{with dist_kernel}
266 %requires_releq_kernel
267 Requires(postun): %releq_kernel
269 Provides: kernel(vboxnetflt) = %{version}-%{rel}
271 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
272 VirtualBox OSE Network Filter Driver.
274 %description -n kernel%{_alt_kernel}-misc-vboxnetflt -l pl.UTF-8
275 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik filtrowania sieci
276 dla systemu głównego.
278 %package -n kernel%{_alt_kernel}-misc-vboxsf
279 Summary: Host file system access (Shared Folders) for VirtualBox OSE
280 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
281 Release: %{rel}@%{_kernel_ver_str}
283 Requires(post,postun): /sbin/depmod
284 Requires: dev >= 2.9.0-7
285 Requires: kernel%{_alt_kernel}-misc-vboxguest
286 %if %{with dist_kernel}
287 %requires_releq_kernel
288 Requires(postun): %releq_kernel
290 Provides: kernel(vboxsf) = %{version}-%{rel}
291 Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
293 %description -n kernel%{_alt_kernel}-misc-vboxsf
294 Host file system access (Shared Folders) for VirtualBox OSE.
296 %description -n kernel%{_alt_kernel}-misc-vboxsf -l pl.UTF-8
297 Moduł jądra Linuksa dla VirtualBoksa OSE - dostęp do plików systemu
298 głównego z poziomu systemu gościa.
300 %package -n kernel%{_alt_kernel}-misc-vboxvideo
301 Summary: DRM support for VirtualBox OSE
302 Summary(pl.UTF-8): Moduł jądra Linuksa dla VirtualBoksa OSE
303 Release: %{rel}@%{_kernel_ver_str}
305 Requires(post,postun): /sbin/depmod
306 Requires: dev >= 2.9.0-7
307 %if %{with dist_kernel}
308 %requires_releq_kernel
309 %if "%{rpm_build_macros}" >= "1.531"
310 %requires_releq_kernel -n drm
312 Requires(postun): %releq_kernel
314 Provides: kernel(vboxvideo) = %{version}-%{rel}
316 %description -n kernel%{_alt_kernel}-misc-vboxvideo
317 DRM support for VirtualBox OSE.
319 %description -n kernel%{_alt_kernel}-misc-vboxvideo -l pl.UTF-8
320 Moduł jądra Linuksa dla VirtualBoksa OSE - sterownik obsługi DRM.
322 %package -n xorg-driver-input-vboxmouse
323 Summary: X.org mouse driver for VirtualBox OSE guest OS
324 Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
326 Group: X11/Applications
327 Requires: xorg-xserver-server >= 1.0.99.901
328 %if "%{pld_release}" == "ti"
329 Requires: xorg-xserver-server(xinput-abi) <= 7.0
331 Requires: xorg-xserver-server(xinput-abi) <= 9.0
333 Requires: xorg-xserver-server(xinput-abi) >= 4.0
335 %description -n xorg-driver-input-vboxmouse
336 X.org mouse driver for VirtualBox OSE guest OS.
338 %description -n xorg-driver-input-vboxmouse -l pl.UTF-8
339 Sterownik myszy dla systemu gościa w VirtualBoksie.
341 %package -n xorg-driver-video-vboxvideo
342 Summary: X.org video driver for VirtualBox OSE guest OS
343 Summary(pl.UTF-8): Sterownik grafiki dla systemu gościa w VirtualBoksie OSE
345 Group: X11/Applications
346 Requires: xorg-xserver-libdri >= 1.7.4
347 Requires: xorg-xserver-server >= 1.0.99.901
348 %if "%{pld_release}" == "ti"
349 Requires: xorg-xserver-server(videodrv-abi) <= 6.0
351 Requires: xorg-xserver-server(videodrv-abi) <= 7.0
353 Requires: xorg-xserver-server(videodrv-abi) >= 2.0
355 %description -n xorg-driver-video-vboxvideo
356 X.org video driver for VirtualBox OSE guest OS.
358 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
359 Sterownik grafiki dla systemu gościa w VirtualBoksie OSE.
362 %setup -q -n %{pname}-%{version}_OSE
369 %{__sed} -i -e 's,$VBOX_DOC_PATH,%{_docdir}/%{name}-%{version},' src/VBox/Installer/linux/virtualbox.desktop
370 %{__sed} -i -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/linux/virtualbox.desktop
372 cat <<'EOF' > udev.conf
373 KERNEL=="vboxdrv", GROUP="vbox", MODE="0660"
374 KERNEL=="vboxguest", GROUP="vbox", MODE="0660"
375 KERNEL=="vboxnetctl", GROUP="vbox", MODE="0660"
379 sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE8} > VirtualBox-wrapper.sh
381 rm -rf PLD-MODULE-BUILD && mkdir PLD-MODULE-BUILD && cd PLD-MODULE-BUILD
382 ../src/VBox/Additions/linux/export_modules modules.tar.gz
383 tar -zxf modules.tar.gz && rm -f modules.tar.gz
384 ../src/VBox/HostDrivers/linux/export_modules modules.tar.gz --without-hardening && \
385 tar -zxf modules.tar.gz && rm -f modules.tar.gz
388 %if %{with userspace}
390 --with-gcc="%{__cc}" \
391 --with-g++="%{__cxx}" \
392 --disable-hardening \
396 kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
401 %build_kernel_modules -m vboxguest -C vboxguest
402 %build_kernel_modules -m vboxdrv -C vboxdrv
403 %build_kernel_modules -m vboxnetadp -C vboxnetadp
404 %build_kernel_modules -m vboxnetflt -C vboxnetflt
405 cp -a vboxguest/Module.symvers vboxsf
406 %build_kernel_modules -m vboxsf -C vboxsf -c
407 %build_kernel_modules -m vboxvideo -C vboxvideo_drm
409 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c -o mount.vboxsf
413 rm -rf $RPM_BUILD_ROOT
415 %if %{with userspace}
417 $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir},%{_pixmapsdir},%{_desktopdir}} \
418 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
420 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
421 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
423 rm -f $RPM_BUILD_ROOT/VBox.png
426 cp -a$l %{outdir} $RPM_BUILD_ROOT%{_libdir}/%{pname}
428 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
429 install -p %{SOURCE9} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
430 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
431 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
432 ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
435 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
436 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
438 %if "%{pld_release}" == "ti"
439 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_17.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
440 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_17.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
442 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_18.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
443 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_18.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
445 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
446 # xorg other driver versions
447 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
448 rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxvideo_drv*.{o,so}
450 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
451 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
452 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
453 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
454 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
455 mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
457 install -d $RPM_BUILD_ROOT/etc/udev/rules.d
458 cp -a udev.conf $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
461 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
462 rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
463 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.gz
464 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
467 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/EfiThunk
468 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
469 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
470 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
471 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
472 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBoxEFI32.fd
473 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBoxEFI64.fd
474 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxClient
475 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxControl
476 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxOGLarrayspu.so
477 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxService
478 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
479 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
481 # packaged by kernel part
482 rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
486 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
487 install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
488 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
489 install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
490 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxsf
491 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetadp
492 %install_kernel_modules -m PLD-MODULE-BUILD/vboxdrv/vboxdrv -d misc
493 %install_kernel_modules -m PLD-MODULE-BUILD/vboxguest/vboxguest -d misc
494 %install_kernel_modules -m PLD-MODULE-BUILD/vboxnetadp/vboxnetadp -d misc
495 %install_kernel_modules -m PLD-MODULE-BUILD/vboxnetflt/vboxnetflt -d misc
496 %install_kernel_modules -m PLD-MODULE-BUILD/vboxsf/vboxsf -d misc
497 %install_kernel_modules -m PLD-MODULE-BUILD/vboxvideo_drm/vboxvideo -d misc
499 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
504 rm -rf $RPM_BUILD_ROOT
507 %groupadd -g 221 -r -f vbox
511 You must also install kernel module for this software to work:
512 kernel-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
514 Additionally you might want to install:
515 kernel-misc-vboxnetadp-%{version}-%{rel}@%{_kernel_ver_str}
516 kernel-misc-vboxnetflt-%{version}-%{rel}@%{_kernel_ver_str}
518 On Guest Linux system you might want to install:
519 kernel-misc-vboxguest-%{version}-%{rel}@%{_kernel_ver_str}
520 kernel-misc-vboxsf-%{version}-%{rel}@%{_kernel_ver_str}
521 kernel-misc-vboxvideo-%{version}-%{rel}@%{_kernel_ver_str}
523 NOTE: for different kernel brands append after word kernel the brand, like:
524 kernel-desktop-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
525 kernel-laptop-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
526 kernel-vanilla-misc-vboxdrv-%{version}-%{rel}@%{_kernel_ver_str}
529 Depending on which kernel brand You use.
534 if [ "$1" = "0" ]; then
538 %post -n kernel%{_alt_kernel}-misc-vboxguest
539 %depmod %{_kernel_ver}
540 /sbin/chkconfig --add vboxguest
541 %service vboxguest restart "VirtualBox OSE Guest additions driver"
543 %postun -n kernel%{_alt_kernel}-misc-vboxguest
544 %depmod %{_kernel_ver}
546 %preun -n kernel%{_alt_kernel}-misc-vboxguest
547 if [ "$1" = "0" ]; then
548 %service vboxguest stop
549 /sbin/chkconfig --del vboxguest
552 %post -n kernel%{_alt_kernel}-misc-vboxdrv
553 %depmod %{_kernel_ver}
554 /sbin/chkconfig --add vboxdrv
555 %service vboxdrv restart "VirtualBox OSE Support Driver"
557 %postun -n kernel%{_alt_kernel}-misc-vboxdrv
558 %depmod %{_kernel_ver}
560 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
561 if [ "$1" = "0" ]; then
562 %service vboxdrv stop
563 /sbin/chkconfig --del vboxdrv
566 %post -n kernel%{_alt_kernel}-misc-vboxnetadp
567 %depmod %{_kernel_ver}
568 /sbin/chkconfig --add vboxnetadp
569 %service vboxnetadp restart "VirtualBox OSE Network HostOnly driver"
571 %postun -n kernel%{_alt_kernel}-misc-vboxnetadp
572 %depmod %{_kernel_ver}
574 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
575 if [ "$1" = "0" ]; then
576 %service vboxnetadp stop
577 /sbin/chkconfig --del vboxnetadp
580 %post -n kernel%{_alt_kernel}-misc-vboxnetflt
581 %depmod %{_kernel_ver}
582 /sbin/chkconfig --add vboxnetflt
583 %service vboxnetflt restart "VirtualBox OSE Network Filter driver"
585 %postun -n kernel%{_alt_kernel}-misc-vboxnetflt
586 %depmod %{_kernel_ver}
588 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
589 if [ "$1" = "0" ]; then
590 %service vboxnetflt stop
591 /sbin/chkconfig --del vboxnetflt
594 %post -n kernel%{_alt_kernel}-misc-vboxsf
595 %depmod %{_kernel_ver}
596 /sbin/chkconfig --add vboxsf
597 %service vboxsf restart "VirtualBox OSE Host file system access (Shared Folders)"
599 %postun -n kernel%{_alt_kernel}-misc-vboxsf
600 %depmod %{_kernel_ver}
602 %preun -n kernel%{_alt_kernel}-misc-vboxsf
603 if [ "$1" = "0" ]; then
605 /sbin/chkconfig --del vboxsf
608 %post -n kernel%{_alt_kernel}-misc-vboxvideo
609 %depmod %{_kernel_ver}
611 %postun -n kernel%{_alt_kernel}-misc-vboxvideo
612 %depmod %{_kernel_ver}
614 %if %{with userspace}
616 %defattr(644,root,root,755)
618 %dir %{_libdir}/VirtualBox
619 %dir %{_libdir}/VirtualBox/additions
620 %dir %{_libdir}/VirtualBox/components
621 %dir %{_libdir}/VirtualBox/nls
622 %attr(755,root,root) %{_bindir}/VBoxBFE
623 %attr(755,root,root) %{_bindir}/VBoxHeadless
624 %attr(755,root,root) %{_bindir}/VBoxManage
625 %attr(755,root,root) %{_bindir}/VBoxSDL
626 %attr(755,root,root) %{_bindir}/VBoxSVC
627 %attr(755,root,root) %{_bindir}/VBoxTunctl
628 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
629 %attr(755,root,root) %{_bindir}/VirtualBox
630 %attr(755,root,root) /sbin/mount.vdi
631 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
632 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
633 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
634 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
635 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
636 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
637 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
638 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
639 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
640 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
641 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
642 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
643 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
644 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
645 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
646 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
647 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
648 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
649 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython.so
650 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython2_6.so
651 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
653 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
654 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
656 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
657 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
658 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
659 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
660 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
661 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
662 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
663 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
664 %attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
665 %attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
666 %{_libdir}/VirtualBox/VBoxDD2GC.gc
667 %{_libdir}/VirtualBox/VBoxDDGC.gc
668 %{_libdir}/VirtualBox/VMMGC.gc
669 %{_libdir}/VirtualBox/VBoxDD2R0.r0
670 %{_libdir}/VirtualBox/VBoxDDR0.r0
671 %{_libdir}/VirtualBox/VMMR0.r0
672 %{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
673 %{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
674 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
675 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
676 %attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
677 %lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
678 %lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
679 %lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
680 %lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
681 %lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
682 %lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
683 %lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
684 %lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
685 %lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
686 %lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
687 %lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
688 %lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
689 %lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
690 %lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
691 %lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
692 %lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
693 %lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
694 %lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
695 %lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
696 %lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
697 %lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
698 %lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
699 %lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
700 %lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
701 %lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
702 %lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
703 %lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
704 %lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
705 %lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
706 %lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
707 %{_pixmapsdir}/VBox.png
708 %{_desktopdir}/*.desktop
711 %defattr(644,root,root,755)
712 %{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
715 %defattr(644,root,root,755)
716 %config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
718 %files -n xorg-driver-input-vboxmouse
719 %defattr(644,root,root,755)
720 %attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
722 %files -n xorg-driver-video-vboxvideo
723 %defattr(644,root,root,755)
724 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
725 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
726 # vboxvideo_dri.so deps
727 %attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
728 %attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
729 %attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
730 %attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
731 %attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
735 %files -n kernel%{_alt_kernel}-misc-vboxguest
736 %defattr(644,root,root,755)
737 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
738 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
740 %files -n kernel%{_alt_kernel}-misc-vboxdrv
741 %defattr(644,root,root,755)
742 %attr(754,root,root) /etc/rc.d/init.d/vboxdrv
743 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
745 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
746 %defattr(644,root,root,755)
747 %attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
748 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
750 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
751 %defattr(644,root,root,755)
752 %attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
753 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
755 %files -n kernel%{_alt_kernel}-misc-vboxsf
756 %defattr(644,root,root,755)
757 %attr(754,root,root) /etc/rc.d/init.d/vboxsf
758 %attr(755,root,root) %{_sbindir}/mount.vboxsf
759 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
761 %files -n kernel%{_alt_kernel}-misc-vboxvideo
762 %defattr(644,root,root,755)
763 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*