%define qtver 5.6.0
-%define rel 2
+%define rel 1
%define pname VirtualBox
Summary: VirtualBox - x86 hardware virtualizer
Summary(pl.UTF-8): VirtualBox - wirtualizator sprzętu x86
Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
-Version: 5.2.8
+Version: 6.0.10
Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
License: GPL v2
Group: Applications/Emulators
Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
-# Source0-md5: e731ea9c5c31096ec4c2a3bfba26665c
+# Source0-md5: 8428f7e27b244803df180213bc5d4a68
Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
-# Source1-md5: 3fb71656e8720342ab6ea4022d3dec9c
+# Source1-md5: 70e94bf787490817ca0b8273ead377bd
Source2: vboxservice.init
Source3: vboxservice.service
Source4: vboxservice.sysconfig
Source8: %{pname}-virtualbox-guest-modules-load.conf
Source9: vboxautostart.init
Source10: autostart.cfg
+Source11: vboxclient-vmsvga.service
+Source12: udev-guest.rules
Patch0: %{pname}-version-error.patch
Patch1: %{pname}-VBoxSysInfo.patch
Patch2: %{pname}-warning_workaround.patch
Patch14: %{pname}-multipython.patch
Patch15: %{pname}-lightdm-1.19.2.patch
Patch16: %{pname}-no-vboxvideo.patch
-Patch17: %{pname}-kerndir.patch
+Patch17: qt5-gl.patch
URL: http://www.virtualbox.org/
%if %{with userspace}
%ifarch %{x8664}
BuildRequires: xorg-proto-glproto-devel
BuildRequires: xorg-xserver-server-devel
%endif
+BuildRequires: EGL-devel
BuildRequires: OpenGL-GLU-devel
BuildRequires: OpenGL-devel
BuildRequires: Qt5Core-devel >= %{qtver}
%{?with_lightdm:BuildRequires: lightdm-libs-qt5-devel}
BuildRequires: makeself
BuildRequires: mkisofs
-BuildRequires: openssl-devel >= 0.9.8
+BuildRequires: openssl-devel >= 1.0.1
BuildRequires: pam-devel
BuildRequires: pixman-devel
BuildRequires: pkgconfig
%if %{with kernel}\
%files -n kernel%{_alt_kernel}-virtualbox-guest\
%defattr(644,root,root,755)\
+%if %{_kernel_version_code} >= %{_kernel_version_magic 4 16 0}\
+%config(noreplace) %verify(not md5 mtime size) /etc/depmod.d/%{_kernel_ver}/vboxguest.conf\
+%endif\
%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-guest.conf\
-%if %{_kernel_version_code} < %{_kernel_version_magic 4 16 0}\
/lib/modules/%{_kernel_ver}/misc/vboxguest.ko*\
-%endif\
/lib/modules/%{_kernel_ver}/misc/vboxsf.ko*\
%if %{_kernel_version_code} < %{_kernel_version_magic 4 13 0}\
/lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*\
export KERN_DIR=%{_kernelsrcdir}\
cd PLD-MODULE-BUILD/HostDrivers\
%build_kernel_modules -m vboxdrv -C vboxdrv\
-%build_kernel_modules -m vboxnetadp -C vboxnetadp\
-%build_kernel_modules -m vboxnetflt -C vboxnetflt\
-%build_kernel_modules -m vboxpci -C vboxpci\
+%build_kernel_modules -m vboxnetadp -C vboxnetadp KBUILD_EXTRA_SYMBOLS=$PWD/../vboxdrv/Module.symvers\
+%build_kernel_modules -m vboxnetflt -C vboxnetflt KBUILD_EXTRA_SYMBOLS=$PWD/../vboxdrv/Module.symvers\
+%build_kernel_modules -m vboxpci -C vboxpci KBUILD_EXTRA_SYMBOLS=$PWD/../vboxdrv/Module.symvers\
cd ../GuestDrivers\
-%if %{_kernel_version_code} < %{_kernel_version_magic 4 16 0}\
%build_kernel_modules -m vboxguest -C vboxguest\
cp -a vboxguest/Module.symvers vboxsf\
-%endif\
%build_kernel_modules -m vboxsf -C vboxsf -c\
%if %{_kernel_version_code} < %{_kernel_version_magic 4 13 0}\
%build_kernel_modules -m vboxvideo -C vboxvideo\
%endif\
cd ../..\
%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv,PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp,PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt,PLD-MODULE-BUILD/HostDrivers/vboxpci/vboxpci,PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc\
-%if %{_kernel_version_code} < %{_kernel_version_magic 4 16 0}\
%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc\
-%endif\
%if %{_kernel_version_code} < %{_kernel_version_magic 4 13 0}\
%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo/vboxvideo -d misc\
%endif\
%{nil}
+%define install_kernel_pkg()\
+%if %{_kernel_version_code} >= %{_kernel_version_magic 4 16 0}\
+install -d PLD-MODULE-BUILD/installed/etc/depmod.d/%{_kernel_ver}\
+echo override vboxguest %{_kernel_ver} misc > PLD-MODULE-BUILD/installed/etc/depmod.d/%{_kernel_ver}/vboxguest.conf\
+%endif\
+%{nil}
+
%{?with_kernel:%{expand:%create_kernel_packages}}
%prep
../src/VBox/Additions/linux/export_modules.sh guest-modules.tar.gz
tar -zxf guest-modules.tar.gz -C GuestDrivers
-../src/VBox/HostDrivers/linux/export_modules.sh host-modules.tar.gz --without-hardening
+../src/VBox/HostDrivers/linux/export_modules.sh --file host-modules.tar.gz --without-hardening
tar -zxf host-modules.tar.gz -C HostDrivers
cd -
%endif
%endif
%{?with_kernel:%{expand:%build_kernel_packages}}
+%{?with_kernel:%{expand:%install_kernel_packages}}
%install
rm -rf $RPM_BUILD_ROOT
%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
# XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxEGL.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
# Guest Only Tools
%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/vboxservice.service
cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/vboxservice
+cp -p %{SOURCE11} $RPM_BUILD_ROOT%{systemdunitdir}/vboxclient-vmsvga.service
+
install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxautostart
%{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxautostart
cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/vbox
%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/udev/rules.d/60-vboxdrv.rules
+cp -p %{SOURCE12} $RPM_BUILD_ROOT/etc/udev/rules.d/60-vboxguest.rules
%if %{with dkms}
mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/src $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
%update_mime_database
%pre guest
+%useradd -u 336 -d /usr/share/empty -s /bin/false -c "VirtualBox guest additions" -g nobody vboxadd
# Add a group "vboxsf" for Shared Folders access
# All users which want to access the auto-mounted Shared Folders have to be added to this group.
%groupadd -g 266 -r -f vboxsf
%post guest
/sbin/chkconfig --add vboxservice
%service vboxservice restart
-%systemd_post vboxservice.service
+%systemd_post vboxservice.service vboxclient-vmsvga.service
%preun guest
if [ "$1" = "0" ]; then
/sbin/chkconfig --del vboxservice
%service vboxservice -q stop
fi
-%systemd_preun vboxservice.service
+%systemd_preun vboxservice.service vboxclient-vmsvga.service
%postun guest
if [ "$1" = "0" ]; then
+ %userremove vboxadd
%groupremove vboxsf
fi
%systemd_reload
%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD2.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxDDU.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxDragAndDropSvc.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxGlobal.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestControlSvc.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestPropSvc.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxHostChannel.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxKeyboard.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhostcrutil.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhosterrorspu.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLrenderspu.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxPython*.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxRT.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSVGA3D.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedClipboard.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedCrOpenGL.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedFolders.so
%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMMPreload
%attr(755,root,root) %{_libdir}/%{pname}/VBoxVolInfo
%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMIPCD
+%attr(755,root,root) %{_libdir}/%{pname}/VirtualBoxVM
+%attr(755,root,root) %{_libdir}/%{pname}/bldRTLdrCheckImports
%attr(755,root,root) %{_libdir}/%{pname}/iPxeBaseBin
%if %{with doc}
%attr(755,root,root) %{_libdir}/%{pname}/VBoxManageHelp
%dir %{_libdir}/%{pname}/tools
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTCat
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTChMod
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTCp
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTDbgSymCache
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTFuzzMaster
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTGzip
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTHttp
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTIsoMaker
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTKrnlModInfo
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLdrCheckImports
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLdrFlt
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLs
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTManifest
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTShutdown
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTSignTool
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTTar
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTTraceLogTool
%attr(755,root,root) %{_libdir}/%{pname}/tools/RTUnzip
%attr(755,root,root) %{_libdir}/%{pname}/tools/scm
%{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux*/VBoxDTraceR0.debug
%{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux*/VBoxDTraceR0.r0
+%{_libdir}/%{pname}/VBoxBugReport
%{_libdir}/%{pname}/VBoxCpuReport
-%{_libdir}/%{pname}/VBoxDD2R0.debug
-%{_libdir}/%{pname}/VBoxDD2R0.r0
-%{_libdir}/%{pname}/VBoxDD2RC.debug
-%{_libdir}/%{pname}/VBoxDD2RC.rc
%{_libdir}/%{pname}/VBoxDDRC.debug
%{_libdir}/%{pname}/VBoxDDRC.rc
%{_libdir}/%{pname}/VBoxDDR0.debug
%dir %{_datadir}/%{pname}
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/*.rules
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/60-vboxdrv.rules
%attr(755,root,root) /lib/udev/VBoxCreateUSBNode.sh
%if %{with gui}
%attr(754,root,root) /etc/rc.d/init.d/vboxservice
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vboxservice
%{systemdunitdir}/vboxservice.service
+%{systemdunitdir}/vboxclient-vmsvga.service
%attr(755,root,root) %{_bindir}/VBoxControl
%attr(755,root,root) %{_bindir}/VBoxService
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/60-vboxguest.rules
%files guest-x11
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
# vboxvideo_dri.so deps
%attr(755,root,root) %{_libdir}/VBoxEGL.so
-%attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
-%attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
%if %{with dkms}
%files -n dkms-vboxguest