%define qtver 5.6.0
-%define rel 1
+%define rel 4
%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: 6.0.4
+Version: 6.0.8
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: 96e53b9e75a37cc6fd2d13d9c9f6881d
+# Source0-md5: 8f703ae98002f9e11dcb29eb01f87718
Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
-# Source1-md5: b5722fb63e3928e8829ca84132e49c7b
+# Source1-md5: 7fab0b92e88b57c19bcc9aa081de245f
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: kernel-4.4.169.patch
+Patch17: qt5-gl.patch
URL: http://www.virtualbox.org/
%if %{with userspace}
%ifarch %{x8664}
%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\
/lib/modules/%{_kernel_ver}/misc/vboxguest.ko*\
/lib/modules/%{_kernel_ver}/misc/vboxsf.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\
%build_kernel_modules -m vboxguest -C vboxguest\
cp -a vboxguest/Module.symvers vboxsf\
%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
%patch14 -p0
%patch15 -p0
%patch16 -p0
+%patch17 -p1
%{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
-e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
../src/VBox/HostDrivers/linux/export_modules.sh --file host-modules.tar.gz --without-hardening
tar -zxf host-modules.tar.gz -C HostDrivers
cd -
-%patch17 -p1
%endif
# using system kBuild package
%endif
%{?with_kernel:%{expand:%build_kernel_packages}}
+%{?with_kernel:%{expand:%install_kernel_packages}}
%install
rm -rf $RPM_BUILD_ROOT
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
%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)