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