virtualbox 5.2.12-3 (x86_64) 2018-4686
-9998

Status rejected
Submitter tpgxyz [@T] gmail.com
Platform 3.0
Repository main
URL https://abf.openmandriva.org/build_lists/231824
Packages
dkms-vboxadditions-5.2.12-3.x86_64.binary
dkms-virtualbox-5.2.12-3.x86_64.binary
virtualbox-5.2.12-3.x86_64.source
virtualbox-5.2.12-3.x86_64.binary
virtualbox-debuginfo-5.2.12-3.x86_64.debuginfo
virtualbox-doc-5.2.12-3.x86_64.binary
virtualbox-guest-additions-5.2.12-3.x86_64.binary
x11-driver-video-vboxvideo-5.2.12-3.x86_64.binary
Build Date 2018-07-19 16:23:02 +0000 UTC
Last Updated 2018-07-29 01:19:20.441003083 +0000 UTC
$ git diff --patch-with-stat --summary dbf91c7c1aa3c06222f43e3ce4aec9dc97df6bd8..4afe0a0c38e04445286678c64fa887b9087af361

 .abf.yml                                           |   6 +-
 01-build-arch.patch                                |  16 ++
 02-gsoap-build-fix.patch                           |  14 +
 04-vboxdrv-references.patch                        |  72 +++++
 06-xsession.patch                                  |  23 ++
 07-vboxnetflt-reference.patch                      |  16 ++
 16-no-update.patch                                 | 124 +++++++++
 18-system-xorg.patch                               |  18 ++
 23-remove-invalid-chars-check.patch                |  20 ++
 27-hide-host-cache-warning.patch                   |  43 +++
 28-no-selinux-fedora.patch                         |  16 ++
 29-fix-ftbfs-as-needed.patch                       |  16 ++
 32-disable-guest-version-check.patch               |  13 +
 35-libvdeplug-soname.patch                         |  22 ++
 36-fix-vnc-version-string.patch                    |  26 ++
 37-python-3.6-support.patch                        |  17 ++
 VirtualBox-5.2.10-allow-gcc-8.0.patch              |  14 +
 ...alBox-5.2.12-add-support-for-OpenMandriva.patch | 298 +++++++++++++++++++++
 fix-build-failure-new-acpica-unix.patch            |  40 +++
 fix-build.patch                                    |  16 ++
 videorec.patch                                     |  85 ++++++
 virtualbox-5.2.10-python-3.7.patch                 |  13 +
 virtualbox-5.2.10-qt-5.11.patch                    |  11 +
 virtualbox.spec                                    |  63 ++++-
 24 files changed, 989 insertions(+), 13 deletions(-)
 create mode 100644 01-build-arch.patch
 create mode 100644 02-gsoap-build-fix.patch
 create mode 100644 04-vboxdrv-references.patch
 create mode 100644 06-xsession.patch
 create mode 100644 07-vboxnetflt-reference.patch
 create mode 100644 16-no-update.patch
 create mode 100644 18-system-xorg.patch
 create mode 100644 23-remove-invalid-chars-check.patch
 create mode 100644 27-hide-host-cache-warning.patch
 create mode 100644 28-no-selinux-fedora.patch
 create mode 100644 29-fix-ftbfs-as-needed.patch
 create mode 100644 32-disable-guest-version-check.patch
 create mode 100644 35-libvdeplug-soname.patch
 create mode 100644 36-fix-vnc-version-string.patch
 create mode 100644 37-python-3.6-support.patch
 create mode 100644 VirtualBox-5.2.10-allow-gcc-8.0.patch
 create mode 100644 VirtualBox-5.2.12-add-support-for-OpenMandriva.patch
 create mode 100644 fix-build-failure-new-acpica-unix.patch
 create mode 100644 fix-build.patch
 create mode 100644 videorec.patch
 create mode 100644 virtualbox-5.2.10-python-3.7.patch
 create mode 100644 virtualbox-5.2.10-qt-5.11.patch

diff --git a/.abf.yml b/.abf.yml
index 45c6ee4..4370ea6 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1,3 +1,5 @@
 sources:
-  VirtualBox-5.2.8.tar.bz2: d25f64eb8d5f12072e4a57b32e08b2e512bdf517
-  UserManual.pdf: 154cf373adf9816d43d15a2bb63f050bc4f22791
+  VirtualBox-5.2.12.tar.bz2: 37c615c480fbb64b70be9f333f3fd96379982de3
+  UserManual.pdf: ac6ad3862b13257d6a7bd9d60b5a041bac108bc1
+  os_openmandriva.png: 3c1c957c644369db0009773c895fbbb0617d5785
+  os_openmandriva_64.png: 80cce1aee0eea3e7aed9ee36d5829c0f0fa50fd4
diff --git a/01-build-arch.patch b/01-build-arch.patch
new file mode 100644
index 0000000..99c0989
--- /dev/null
+++ b/01-build-arch.patch
@@ -0,0 +1,16 @@
+Description: Correctly check build architecture.
+Author: Michael Meskes <meskes@debian.org>
+
+Index: virtualbox/configure
+===================================================================
+--- virtualbox.orig/configure	2013-11-19 03:40:50.133475296 -0500
++++ virtualbox/configure	2013-11-19 03:40:50.129475296 -0500
+@@ -350,7 +350,7 @@
+ check_environment()
+ {
+   test_header environment
+-  BUILD_CPU=`uname -m`
++  BUILD_CPU=`dpkg-architecture -qDEB_HOST_GNU_CPU`
+   [ "$OS" = "solaris" ] && BUILD_CPU=`isainfo | cut -f 1 -d ' '`
+   case "$BUILD_CPU" in
+     i[3456789]86|x86|i86pc|BePC)
diff --git a/02-gsoap-build-fix.patch b/02-gsoap-build-fix.patch
new file mode 100644
index 0000000..ced3d54
--- /dev/null
+++ b/02-gsoap-build-fix.patch
@@ -0,0 +1,14 @@
+Interim build fix for gsoap > 2.8.13
+Index: virtualbox-git-orig/src/VBox/Main/webservice/Makefile.kmk
+===================================================================
+--- virtualbox-git-orig.orig/src/VBox/Main/webservice/Makefile.kmk	2013-12-02 12:32:51.211124975 -0500
++++ virtualbox-git-orig/src/VBox/Main/webservice/Makefile.kmk	2013-12-02 12:36:04.531133954 -0500
+@@ -767,7 +767,7 @@
+ 		$(RECOMPILE_ON_MAKEFILE_CURRENT) | $$(dir $$@)
+ 	$(call MSG_GENERATE,,lots of files,$(GSOAPH_RELEVANT))
+ 	$(RM) -f $@
+-	$(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) $(VBOXWEB_SOAPCPP2_SKIP_FILES) -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) $(GSOAPH_RELEVANT)
++	$(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) $(VBOXWEB_SOAPCPP2_SKIP_FILES) -z1 -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) $(GSOAPH_RELEVANT)
+ ifeq ($(KBUILD_TARGET),win) # MSC -Wall workaround.
+ 	$(CP) -f "$(VBOXWEB_SOAP_CLIENT_H)" "$(VBOXWEB_SOAP_CLIENT_H).tmp"
+ 	$(SED) -f $(VBOX_PATH_WEBSERVICE)/stdsoap2.sed --output "$(VBOXWEB_SOAP_CLIENT_H)" "$(VBOXWEB_SOAP_CLIENT_H).tmp"
diff --git a/04-vboxdrv-references.patch b/04-vboxdrv-references.patch
new file mode 100644
index 0000000..e870756
--- /dev/null
+++ b/04-vboxdrv-references.patch
@@ -0,0 +1,72 @@
+Description: Change error messages for vboxdrv failure, according to virtualbox-dkms.
+Author: Daniel Hahler <ubuntu@thequod.de>
+
+Index: virtualbox/src/VBox/VMM/VMMR3/VM.cpp
+===================================================================
+--- virtualbox.orig/src/VBox/VMM/VMMR3/VM.cpp	2015-04-02 14:37:11.989792459 +0200
++++ virtualbox/src/VBox/VMM/VMMR3/VM.cpp	2015-04-02 14:37:11.989792459 +0200
+@@ -306,10 +306,8 @@
+ 
+ #ifdef RT_OS_LINUX
+                 case VERR_SUPDRV_COMPONENT_NOT_FOUND:
+-                    pszError = N_("One of the kernel modules was not successfully loaded. Make sure "
+-                                  "that no kernel modules from an older version of VirtualBox exist. "
+-                                  "Then try to recompile and reload the kernel modules by executing "
+-                                  "'/sbin/vboxconfig' as root");
++		    pszError = N_("Please install the virtualbox-dkms package "
++				  "and execute 'modprobe vboxdrv' as root");
+                     break;
+ #endif
+ 
+@@ -372,10 +370,8 @@
+             {
+                 case VERR_VM_DRIVER_LOAD_ERROR:
+ #ifdef RT_OS_LINUX
+-                    pszError = N_("VirtualBox kernel driver not loaded. The vboxdrv kernel module "
+-                                  "was either not loaded or /dev/vboxdrv is not set up properly. "
+-                                  "Re-setup the kernel module by executing "
+-                                  "'/sbin/vboxconfig' as root");
++                    pszError = N_("Please install the virtualbox-dkms package "
++		    		  "and execute 'modprobe vboxdrv' as root");
+ #else
+                     pszError = N_("VirtualBox kernel driver not loaded");
+ #endif
+@@ -414,10 +410,8 @@
+                 case VERR_INVALID_HANDLE: /** @todo track down and fix this error. */
+                 case VERR_VM_DRIVER_NOT_INSTALLED:
+ #ifdef RT_OS_LINUX
+-                    pszError = N_("VirtualBox kernel driver not installed. The vboxdrv kernel module "
+-                                  "was either not loaded or /dev/vboxdrv was not created for some "
+-                                  "reason. Re-setup the kernel module by executing "
+-                                  "'/sbin/vboxconfig' as root");
++                    pszError = N_("Please install the virtualbox-dkms package "
++		    		  "and execute 'modprobe vboxdrv' as root");
+ #else
+                     pszError = N_("VirtualBox kernel driver not installed");
+ #endif
+diff --git a/src/VBox/Frontends/VirtualBox/src/main.cpp b/src/VBox/Frontends/VirtualBox/src/main.cpp
+index b4c8f19..4d1e83d 100644
+--- a/src/VBox/Frontends/VirtualBox/src/main.cpp
++++ b/src/VBox/Frontends/VirtualBox/src/main.cpp
+@@ -97,9 +97,9 @@ QString g_QStrHintLinuxNoMemory = QApplication::tr(
+ 
+ QString g_QStrHintLinuxNoDriver = QApplication::tr(
+     "The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or "
+-    "there is a permission problem with /dev/vboxdrv. Please reinstall the kernel "
+-    "module by executing<br/><br/>"
+-    "  <font color=blue>'/sbin/vboxconfig'</font><br/><br/>"
++    "there is a permission problem with /dev/vboxdrv. Please reinstall virtualbox-dkms "
++    "package and load the kernel module by executing<br/><br/>"
++    "  <font color=blue>'modprobe vboxdrv'</font><br/><br/>"
+     "as root."
+     );
+ 
+@@ -114,7 +114,7 @@ QString g_QStrHintLinuxWrongDriverVersion = QApplication::tr(
+     "The VirtualBox kernel modules do not match this version of "
+     "VirtualBox. The installation of VirtualBox was apparently not "
+     "successful. Executing<br/><br/>"
+-    "  <font color=blue>'/sbin/vboxconfig'</font><br/><br/>"
++    "  <font color=blue>'modprobe vboxdrv'</font><br/><br/>"
+     "may correct this. Make sure that you do not mix the "
+     "OSE version and the PUEL version of VirtualBox."
+     );
diff --git a/06-xsession.patch b/06-xsession.patch
new file mode 100644
index 0000000..f881659
--- /dev/null
+++ b/06-xsession.patch
@@ -0,0 +1,23 @@
+Description: Make Xsession.d script ignore errors.
+Author: Michael Meskes <meskes@debian.org>
+
+Index: virtualbox/src/VBox/Additions/x11/Installer/98vboxadd-xclient
+===================================================================
+--- virtualbox.orig/src/VBox/Additions/x11/Installer/98vboxadd-xclient	2013-11-19 03:40:59.137475714 -0500
++++ virtualbox/src/VBox/Additions/x11/Installer/98vboxadd-xclient	2013-11-19 03:40:59.133475714 -0500
+@@ -30,9 +30,9 @@ done
+    # This script can also be triggered by a connection over SSH, which is not
+    # what we had in mind, so we do not start VBoxClient in that case.  We do
+    # not use "exit" here as this script is "source"d, not executed.
+-  /usr/bin/VBoxClient --clipboard
+-  /usr/bin/VBoxClient --checkhostversion
+-  /usr/bin/VBoxClient --display
+-  /usr/bin/VBoxClient --seamless
+-  /usr/bin/VBoxClient --draganddrop
++  /usr/bin/VBoxClient --clipboard || true
++  /usr/bin/VBoxClient --checkhostversion || true
++  /usr/bin/VBoxClient --display || true
++  /usr/bin/VBoxClient --seamless || true
++  /usr/bin/VBoxClient --draganddrop || true
+ fi
+
diff --git a/07-vboxnetflt-reference.patch b/07-vboxnetflt-reference.patch
new file mode 100644
index 0000000..6094ed1
--- /dev/null
+++ b/07-vboxnetflt-reference.patch
@@ -0,0 +1,16 @@
+Description: Made error message tell about missing vboxnetflt module.
+Author: Michael Meskes <meskes@debian.org>
+
+Index: virtualbox/src/VBox/Devices/Network/DrvIntNet.cpp
+===================================================================
+--- virtualbox.orig/src/VBox/Devices/Network/DrvIntNet.cpp	2013-11-19 03:41:03.413475913 -0500
++++ virtualbox/src/VBox/Devices/Network/DrvIntNet.cpp	2013-11-19 03:41:03.409475913 -0500
+@@ -1766,7 +1766,7 @@
+             return VERR_PDM_NO_ATTACHED_DRIVER;
+         }
+         return PDMDrvHlpVMSetError(pDrvIns, rc, RT_SRC_POS,
+-                                   N_("Failed to open/create the internal network '%s'"), pThis->szNetwork);
++                                   N_("Failed to open/create the internal network '%s' (you might need to modprobe vboxnetflt to make it accessible)"), pThis->szNetwork);
+     }
+ 
+     AssertRelease(OpenReq.hIf != INTNET_HANDLE_INVALID);
diff --git a/16-no-update.patch b/16-no-update.patch
new file mode 100644
index 0000000..a4bc6a0
--- /dev/null
+++ b/16-no-update.patch
@@ -0,0 +1,124 @@
+Description: Disable "Check for Updates" action.
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/272212
+Author: Daniel Hahler <ubuntu@thequod.de>, Felix Geyer <fgeyer@debian.org>
+
+diff a/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp
+Index: virtualbox/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp
+===================================================================
+--- virtualbox.orig/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp
++++ virtualbox/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp
+@@ -482,6 +482,8 @@
+ 
+ void UIUpdateManager::sltForceCheck()
+ {
++    return;
++
+     /* Force call for new version check: */
+     sltCheckIfUpdateIsNecessary(true /* force call */);
+ }
+Index: virtualbox/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
+===================================================================
+--- virtualbox.orig/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
++++ virtualbox/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
+@@ -1116,7 +1116,6 @@
+     m_pool[UIActionIndex_M_Application_S_Preferences] = new UIActionSimplePreferences(this);
+ #ifdef VBOX_GUI_WITH_NETWORK_MANAGER
+     m_pool[UIActionIndex_M_Application_S_NetworkAccessManager] = new UIActionSimpleNetworkAccessManager(this);
+-    m_pool[UIActionIndex_M_Application_S_CheckForUpdates] = new UIActionSimpleCheckForUpdates(this);
+ #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+     m_pool[UIActionIndex_M_Application_S_ResetWarnings] = new UIActionSimpleResetWarnings(this);
+     m_pool[UIActionIndex_M_Application_S_Close] = new UIActionSimplePerformClose(this);
+@@ -1162,8 +1161,6 @@
+ #ifdef VBOX_GUI_WITH_NETWORK_MANAGER
+     connect(action(UIActionIndex_M_Application_S_NetworkAccessManager), &UIAction::triggered,
+             gNetworkManager, &UINetworkManager::show, Qt::UniqueConnection);
+-    connect(action(UIActionIndex_M_Application_S_CheckForUpdates), &UIAction::triggered,
+-            gUpdateManager, &UIUpdateManager::sltForceCheck, Qt::UniqueConnection);
+ #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+     connect(action(UIActionIndex_M_Application_S_ResetWarnings), &UIAction::triggered,
+             &msgCenter(), &UIMessageCenter::sltResetSuppressedMessages, Qt::UniqueConnection);
+@@ -1244,7 +1241,7 @@
+     if (!fUpdateAllowed)
+     {
+         m_restrictedActionsMenuApplication[UIActionRestrictionLevel_Base] = (UIExtraDataMetaDefs::MenuApplicationActionType)
+-            (m_restrictedActionsMenuApplication[UIActionRestrictionLevel_Base] | UIExtraDataMetaDefs::MenuApplicationActionType_CheckForUpdates);
++            (m_restrictedActionsMenuApplication[UIActionRestrictionLevel_Base]);
+     }
+ #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+ 
+Index: virtualbox/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.h
+===================================================================
+--- virtualbox.orig/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.h
++++ virtualbox/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.h
+@@ -62,7 +62,6 @@
+     UIActionIndex_M_Application_S_Preferences,
+ #ifdef VBOX_GUI_WITH_NETWORK_MANAGER
+     UIActionIndex_M_Application_S_NetworkAccessManager,
+-    UIActionIndex_M_Application_S_CheckForUpdates,
+ #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+     UIActionIndex_M_Application_S_ResetWarnings,
+     UIActionIndex_M_Application_S_Close,
+Index: virtualbox/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
+===================================================================
+--- virtualbox.orig/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
++++ virtualbox/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
+@@ -304,6 +304,10 @@
+ #endif /* !VBOX_WITH_NETFLT */
+             break;
+         }
++        case GlobalSettingsPageType_Update:
++        {
++            return false;
++        }
+         default:
+             break;
+     }
+Index: virtualbox/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp
+===================================================================
+--- virtualbox.orig/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp
++++ virtualbox/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp
+@@ -1435,8 +1435,6 @@
+     /* 'About' action goes to Application menu: */
+     pMenu->addAction(actionPool()->action(UIActionIndex_M_Application_S_About));
+ # ifdef VBOX_GUI_WITH_NETWORK_MANAGER
+-    /* 'Check for Updates' action goes to Application menu: */
+-    pMenu->addAction(actionPool()->action(UIActionIndex_M_Application_S_CheckForUpdates));
+     /* 'Network Access Manager' action goes to Application menu: */
+     pMenu->addAction(actionPool()->action(UIActionIndex_M_Application_S_NetworkAccessManager));
+ # endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+@@ -1479,7 +1476,7 @@
+     addAction(actionPool()->action(UIActionIndexST_M_File_S_ShowHostNetworkManager));
+ #  ifdef VBOX_GUI_WITH_NETWORK_MANAGER
+     addAction(actionPool()->action(UIActionIndex_M_Application_S_NetworkAccessManager));
+-    addAction(actionPool()->action(UIActionIndex_M_Application_S_CheckForUpdates));
++//    addAction(actionPool()->action(UIActionIndex_M_Application_S_CheckForUpdates));
+ #  endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+     addAction(actionPool()->action(UIActionIndex_M_Application_S_ResetWarnings));
+     addAction(actionPool()->action(UIActionIndexST_M_File_S_Close));
+@@ -1506,9 +1504,6 @@
+ # ifdef VBOX_GUI_WITH_NETWORK_MANAGER
+     /* 'Network Access Manager' action goes to 'File' menu: */
+     pMenu->addAction(actionPool()->action(UIActionIndex_M_Application_S_NetworkAccessManager));
+-    /* 'Check for Updates' action goes to 'File' menu: */
+-    if (gEDataManager->applicationUpdateEnabled())
+-        pMenu->addAction(actionPool()->action(UIActionIndex_M_Application_S_CheckForUpdates));
+ # endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
+     /* 'Reset Warnings' action goes 'File' menu: */
+     pMenu->addAction(actionPool()->action(UIActionIndex_M_Application_S_ResetWarnings));
+Index: virtualbox/doc/manual/en_US/user_Introduction.xml
+===================================================================
+--- virtualbox.orig/doc/manual/en_US/user_Introduction.xml
++++ virtualbox/doc/manual/en_US/user_Introduction.xml
+@@ -1771,10 +1771,12 @@
+          used to trigger certain VM actions (see <xref
+          linkend="specialcharacters"/>)</para>
+       </listitem>
++<!--
+       <listitem>
+          <para><emphasis role="bold">Update</emphasis> Enables the user
+          to specify various settings for Automatic Updates.</para>
+       </listitem>
++-->
+       <listitem>
+          <para><emphasis role="bold">Language</emphasis> Enables the user to
+          specify the GUI language.</para>
diff --git a/18-system-xorg.patch b/18-system-xorg.patch
new file mode 100644
index 0000000..0630698
--- /dev/null
+++ b/18-system-xorg.patch
@@ -0,0 +1,18 @@
+Description: Build the X.Org driver only for the selected system X Server version.
+Author: Michael Meskes <meskes@debian.org>, Felix Geyer <fgeyer@debian.org>
+
+diff --git a/src/VBox/Additions/common/VBoxGuest/lib/Makefile.kmk b/src/VBox/Additions/common/VBoxGuest/lib/Makefile.kmk
+index 8cf43e8fe..6ee1d415e 100644
+--- a/src/VBox/Additions/common/VBoxGuest/lib/Makefile.kmk
++++ b/src/VBox/Additions/common/VBoxGuest/lib/Makefile.kmk
+@@ -39,10 +39,6 @@ LIBRARIES += \
+ 	VBoxGuestR3Lib \
+ 	VBoxGuestR3LibShared
+ ifndef VBOX_ONLY_VALIDATIONKIT
+- if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd)
+-  LIBRARIES += \
+-  	VBoxGuestR3LibXFree86
+- endif
+  if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
+   LIBRARIES += \
+   	VBoxGuestR3LibXOrg
diff --git a/23-remove-invalid-chars-check.patch b/23-remove-invalid-chars-check.patch
new file mode 100644
index 0000000..bb4a935
--- /dev/null
+++ b/23-remove-invalid-chars-check.patch
@@ -0,0 +1,20 @@
+Description: Remove check for invalid characters in the build path since we have fixed
+ kBuild to handle those pathes starting from version 1:0.1.98svn2318-7.
+Author: Felix Geyer <fgeyer@debian.org>
+
+Index: virtualbox/configure
+===================================================================
+--- virtualbox.orig/configure	2013-11-19 04:36:42.817631012 -0500
++++ virtualbox/configure	2013-11-19 04:36:42.813631012 -0500
+@@ -180,11 +180,6 @@
+ # the restricting tool is ar (mri mode).
+ INVALID_CHARS="[^A-Za-z0-9/\\$:._-]"
+ 
+-if (cd `dirname $0`; pwd)|grep -q "$INVALID_CHARS"; then
+-  echo "Error: VBox base path contains invalid characters!"
+-  exit 1
+-fi
+-
+ # Posix /bin/sh isn't supporting echo -n. Use printf instead.
+ ECHO_N="printf"
+ 
diff --git a/27-hide-host-cache-warning.patch b/27-hide-host-cache-warning.patch
new file mode 100644
index 0000000..0ccfea5
--- /dev/null
+++ b/27-hide-host-cache-warning.patch
@@ -0,0 +1,43 @@
+Description: Silently enable the host I/O cache when the image is on an ext4/XFS partition.
+ No need to warn users about it.
+Author: Felix Geyer <fgeyer@debian.org>
+
+diff --git a/src/VBox/Main/src-client/ConsoleImpl2.cpp b/src/VBox/Main/src-client/ConsoleImpl2.cpp
+index 61dbf0a59..cfb76fc48 100644
+--- a/src/VBox/Main/src-client/ConsoleImpl2.cpp
++++ b/src/VBox/Main/src-client/ConsoleImpl2.cpp
+@@ -4038,34 +4038,12 @@ int Console::i_checkMediumLocation(IMedium *pMedium, bool *pfUseHostIOCache)
+             if (   enmFsTypeFile == RTFSTYPE_EXT4
+                 || enmFsTypeFile == RTFSTYPE_XFS)
+             {
+-                i_atVMRuntimeErrorCallbackF(0, "Ext4PartitionDetected",
+-                        N_("The host I/O cache for at least one controller is disabled "
+-                           "and the medium '%ls' for this VM "
+-                           "is located on an %s partition. There is a known Linux "
+-                           "kernel bug which can lead to the corruption of the virtual "
+-                           "disk image under these conditions.\n"
+-                           "Either enable the host I/O cache permanently in the VM "
+-                           "settings or put the disk image and the snapshot folder "
+-                           "onto a different file system.\n"
+-                           "The host I/O cache will now be enabled for this medium"),
+-                        strFile.raw(), enmFsTypeFile == RTFSTYPE_EXT4 ? "ext4" : "xfs");
+                 *pfUseHostIOCache = true;
+             }
+             else if (  (   enmFsTypeSnap == RTFSTYPE_EXT4
+                         || enmFsTypeSnap == RTFSTYPE_XFS)
+                      && !mfSnapshotFolderExt4WarningShown)
+             {
+-                i_atVMRuntimeErrorCallbackF(0, "Ext4PartitionDetected",
+-                        N_("The host I/O cache for at least one controller is disabled "
+-                           "and the snapshot folder for this VM "
+-                           "is located on an %s partition. There is a known Linux "
+-                           "kernel bug which can lead to the corruption of the virtual "
+-                           "disk image under these conditions.\n"
+-                           "Either enable the host I/O cache permanently in the VM "
+-                           "settings or put the disk image and the snapshot folder "
+-                           "onto a different file system.\n"
+-                           "The host I/O cache will now be enabled for this medium"),
+-                        enmFsTypeSnap == RTFSTYPE_EXT4 ? "ext4" : "xfs");
+                 *pfUseHostIOCache = true;
+                 mfSnapshotFolderExt4WarningShown = true;
+             }
diff --git a/28-no-selinux-fedora.patch b/28-no-selinux-fedora.patch
new file mode 100644
index 0000000..97a15f6
--- /dev/null
+++ b/28-no-selinux-fedora.patch
@@ -0,0 +1,16 @@
+Description: Don't install the selinux-fedora modules.
+Author: Felix Geyer <fgeyer@debian.org>
+
+--- a/src/VBox/Additions/linux/Makefile.kmk
++++ b/src/VBox/Additions/linux/Makefile.kmk
+@@ -297,9 +297,7 @@ lnx_add_inst-noexec_INST     = $(VBOX_LN
+ lnx_add_inst-noexec_SOURCES  = \
+ 	$(VBOX_REL_X11_ADD_INST)vboxclient.desktop \
+ 	$(VBOX_REL_X11_ADD_INST)vboxvideo.ids \
+-	$(if $(VBOX_WITH_LIGHTDM_GREETER_PACKING),lightdm-greeter/vbox-greeter.desktop,) \
+-	selinux-fedora/vbox_x11.pp \
+-	selinux-fedora/vbox_accel.pp
++	$(if $(VBOX_WITH_LIGHTDM_GREETER_PACKING),lightdm-greeter/vbox-greeter.desktop,)
+ 
+ INSTALLS += lnx_add_inst-license
+ lnx_add_inst-license_INST     = $(VBOX_LNX_ADD_INST_OUT_DIR)
diff --git a/29-fix-ftbfs-as-needed.patch b/29-fix-ftbfs-as-needed.patch
new file mode 100644
index 0000000..9a6c4ba
--- /dev/null
+++ b/29-fix-ftbfs-as-needed.patch
@@ -0,0 +1,16 @@
+Description: Fix FTBFS with ld --as-needed.
+Origin: vendor, http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-emulation/virtualbox/files/virtualbox-4.1.4-asneeded.patch?revision=1.2&view=markup
+
+Index: virtualbox/Config.kmk
+===================================================================
+--- virtualbox.orig/Config.kmk	2015-04-02 15:46:59.611743003 +0200
++++ virtualbox/Config.kmk	2015-04-02 15:46:59.611743003 +0200
+@@ -6339,7 +6339,7 @@
+ TEMPLATE_VBoxBldProg_LDFLAGS.amd64       = -m64
+ TEMPLATE_VBoxBldProg_LDFLAGS.sparc64     = -m64
+  ifeq ($(KBUILD_HOST),linux)
+-TEMPLATE_VBoxBldProg_LIBS                = pthread m rt dl
++TEMPLATE_VBoxBldProg_LIBS                = pthread m rt dl crypt
+  else ifeq ($(KBUILD_HOST),os2)
+ TEMPLATE_VBoxBldProg_TOOL                = GXX3OMF
+ TEMPLATE_VBoxBldProg_LIBS                = socket iconv
diff --git a/32-disable-guest-version-check.patch b/32-disable-guest-version-check.patch
new file mode 100644
index 0000000..bf7576e
--- /dev/null
+++ b/32-disable-guest-version-check.patch
@@ -0,0 +1,13 @@
+Description: Disable notifications about outdated guest additions.
+Author: Felix Geyer <fgeyer@debian.org>
+
+--- a/src/VBox/Additions/x11/VBoxClient/hostversion.cpp
++++ b/src/VBox/Additions/x11/VBoxClient/hostversion.cpp
+@@ -40,6 +40,7 @@ public:
+ 
+ static int showNotify(const char *pszHeader, const char *pszBody)
+ {
++    return VINF_SUCCESS;
+     int rc;
+ # ifdef VBOX_WITH_DBUS
+     DBusConnection *conn;
diff --git a/35-libvdeplug-soname.patch b/35-libvdeplug-soname.patch
new file mode 100644
index 0000000..7d9dd4e
--- /dev/null
+++ b/35-libvdeplug-soname.patch
@@ -0,0 +1,22 @@
+Description: Revert http://www.virtualbox.org/changeset/36310
+ The libvdeplug.so symlink is only shipped in the -dev package.
+Author: Felix Geyer <fgeyer@debian.org>
+
+--- a/include/VBox/VDEPlugSymDefs.h
++++ b/include/VBox/VDEPlugSymDefs.h
+@@ -1,5 +1,5 @@
+ /** @file
+- * Symbols from libvdeplug.so to be loaded at runtime for DrvVDE.cpp
++ * Symbols from libvdeplug.so.2 to be loaded at runtime for DrvVDE.cpp
+  */
+ 
+ /*
+@@ -43,7 +43,7 @@ struct vde_open_args
+ };
+ 
+ /** The file name of the DBus library */
+-#define VBOX_LIB_VDE_PLUG_NAME "libvdeplug.so"
++#define VBOX_LIB_VDE_PLUG_NAME "libvdeplug.so.2"
+ #define RT_RUNTIME_LOADER_LIB_NAME VBOX_LIB_VDE_PLUG_NAME
+ 
+ /** The name of the loader function */
diff --git a/36-fix-vnc-version-string.patch b/36-fix-vnc-version-string.patch
new file mode 100644
index 0000000..d5caa06
--- /dev/null
+++ b/36-fix-vnc-version-string.patch
@@ -0,0 +1,26 @@
+Description: fix version string for VNC plugin module.
+Index: virtualbox/Config.kmk
+===================================================================
+--- virtualbox.orig/Config.kmk	2015-04-02 15:47:04.439745251 +0200
++++ virtualbox/Config.kmk	2015-04-02 15:47:04.435745250 +0200
+@@ -3071,6 +3071,7 @@
+ 	-e 's/@VBOX_VERSION_MINOR@/$(VBOX_VERSION_MINOR)/g' \
+ 	-e 's/@VBOX_VERSION_BUILD@/$(VBOX_VERSION_BUILD)/g' \
+ 	-e 's/@VBOX_VERSION_STRING@/$(VBOX_VERSION_STRING)/g' \
++	-e 's/@VBOX_VERSION_STRING_RAW@/$(VBOX_VERSION_STRING_RAW)/g' \
+ 	-e 's/@VBOX_SVN_REV@/$(VBOX_SVN_REV)/g' \
+ 	-e 's/@VBOX_VENDOR@/$(VBOX_VENDOR)/g' \
+ 	-e 's/@VBOX_VENDOR_SHORT@/$(VBOX_VENDOR_SHORT)/g' \
+Index: virtualbox/src/VBox/ExtPacks/VNC/ExtPack.xml
+===================================================================
+--- virtualbox.orig/src/VBox/ExtPacks/VNC/ExtPack.xml	2015-04-02 15:47:04.439745251 +0200
++++ virtualbox/src/VBox/ExtPacks/VNC/ExtPack.xml	2015-04-02 15:47:04.435745250 +0200
+@@ -2,7 +2,7 @@
+ <VirtualBoxExtensionPack xmlns="http://www.virtualbox.org/VirtualBoxExtensionPack" version="1.0">
+     <Name>VNC</Name>
+     <Description>VNC plugin module</Description>
+-    <Version revision="@VBOX_SVN_REV@">@VBOX_VERSION_STRING@</Version>
++    <Version revision="@VBOX_SVN_REV@">@VBOX_VERSION_STRING_RAW@</Version>
+     <MainModule>VBoxVNCMain</MainModule>
+     <VRDEModule>VBoxVNC</VRDEModule>
+     <ShowLicense/>
diff --git a/37-python-3.6-support.patch b/37-python-3.6-support.patch
new file mode 100644
index 0000000..113d821
--- /dev/null
+++ b/37-python-3.6-support.patch
@@ -0,0 +1,17 @@
+Description: add python 3.6m as a supported version
+Author: Michael Hudson-Doyle <michael.hudson@ubuntu.com>
+Origin: vendor
+Last-Update: 2017-06-23
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/configure
++++ b/configure
+@@ -1958,7 +1958,7 @@
+ }
+ EOF
+   found=
+-  SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m"
++  SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m python3.6m"
+   for p in $PYTHONDIR; do
+     for d in $SUPPYTHONLIBS; do
+       for b in lib/x86_64-linux-gnu lib/i386-linux-gnu lib64 lib/64 lib; do
diff --git a/VirtualBox-5.2.10-allow-gcc-8.0.patch b/VirtualBox-5.2.10-allow-gcc-8.0.patch
new file mode 100644
index 0000000..cc88a3a
--- /dev/null
+++ b/VirtualBox-5.2.10-allow-gcc-8.0.patch
@@ -0,0 +1,14 @@
+diff -up VirtualBox-5.2.10/configure.omv~ VirtualBox-5.2.10/configure
+--- VirtualBox-5.2.10/configure.omv~	2018-04-27 00:06:59.430723900 +0200
++++ VirtualBox-5.2.10/configure	2018-04-27 00:07:12.610421993 +0200
+@@ -440,8 +440,8 @@ check_gcc()
+       elif [ $cc_maj -lt 4 \
+              -o \( $cc_maj -eq 4 -a $cc_min -lt 4 -a "$OS" != "darwin" \) \
+              -o \( $cc_maj -eq 4 -a $cc_min -lt 2 -a "$OS"  = "darwin" \) \
+-             -o $cc_maj -gt 7 ]; then
+-        log_failure "gcc version $cc_maj.$cc_min found, expected gcc 4.x...7.x"
++             -o $cc_maj -gt 8 ]; then
++        log_failure "gcc version $cc_maj.$cc_min found, expected gcc 4.x...8.x"
+         fail really
+       else
+         log_success "found version $cc_ver"
diff --git a/VirtualBox-5.2.12-add-support-for-OpenMandriva.patch b/VirtualBox-5.2.12-add-support-for-OpenMandriva.patch
new file mode 100644
index 0000000..98c3cce
--- /dev/null
+++ b/VirtualBox-5.2.12-add-support-for-OpenMandriva.patch
@@ -0,0 +1,298 @@
+diff -Naur VirtualBox-5.2.12/include/VBox/ostypes.h VirtualBox-5.2.12.tpg/include/VBox/ostypes.h
+--- VirtualBox-5.2.12/include/VBox/ostypes.h	2018-05-09 16:32:03.000000000 +0000
++++ VirtualBox-5.2.12.tpg/include/VBox/ostypes.h	2018-06-15 11:13:41.917757121 +0000
+@@ -95,8 +95,8 @@
+     VBOXOSTYPE_FedoraCore_x64   = 0x57100,
+     VBOXOSTYPE_Gentoo           = 0x58000,
+     VBOXOSTYPE_Gentoo_x64       = 0x58100,
+-    VBOXOSTYPE_Mandriva         = 0x59000,
+-    VBOXOSTYPE_Mandriva_x64     = 0x59100,
++    VBOXOSTYPE_OpenMandriva     = 0x59000,
++    VBOXOSTYPE_OpenMandriva_x64 = 0x59100,
+     VBOXOSTYPE_RedHat           = 0x5A000,
+     VBOXOSTYPE_RedHat_x64       = 0x5A100,
+     VBOXOSTYPE_Turbolinux       = 0x5B000,
+diff -Naur VirtualBox-5.2.12/src/VBox/Additions/linux/installer/vboxadd-x11.sh VirtualBox-5.2.12.tpg/src/VBox/Additions/linux/installer/vboxadd-x11.sh
+--- VirtualBox-5.2.12/src/VBox/Additions/linux/installer/vboxadd-x11.sh	2018-05-09 16:32:19.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Additions/linux/installer/vboxadd-x11.sh	2018-06-15 11:13:41.918757155 +0000
+@@ -94,11 +94,11 @@
+     x11_autostart="/etc/xdg/autostart"
+     kde_autostart="/usr/share/autostart"
+     redhat_dir=/etc/X11/Xsession.d
+-    mandriva_dir=/etc/X11/xinit.d
++    openmandriva_dir=/etc/X11/xinit.d
+     debian_dir=/etc/X11/xinit/xinitrc.d
+-    if [ -d "$mandriva_dir" -a -w "$mandriva_dir" -a -x "$mandriva_dir" ]
++    if [ -d "$openmandriva_dir" -a -w "$openmandriva_dir" -a -x "$openmandriva_dir" ]
+     then
+-        install -m 0644 $app_src "$mandriva_dir/$app_dest"
++        install -m 0644 $app_src "$openmandriva_dir/$app_dest"
+         found=1
+     fi
+     if [ -d "$x11_autostart" -a -w "$x11_autostart" -a -x "$x11_autostart" ]
+diff -Naur VirtualBox-5.2.12/src/VBox/Devices/VMMDev/VMMDev.cpp VirtualBox-5.2.12.tpg/src/VBox/Devices/VMMDev/VMMDev.cpp
+--- VirtualBox-5.2.12/src/VBox/Devices/VMMDev/VMMDev.cpp	2018-05-09 16:37:10.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Devices/VMMDev/VMMDev.cpp	2018-06-15 11:14:22.347063812 +0000
+@@ -196,7 +196,7 @@
+         case VBOXOSTYPE_OpenSUSE:                         pszOs = "openSUSE";       break;
+         case VBOXOSTYPE_FedoraCore:                       pszOs = "Fedora";         break;
+         case VBOXOSTYPE_Gentoo:                           pszOs = "Gentoo";         break;
+-        case VBOXOSTYPE_Mandriva:                         pszOs = "Mandriva";       break;
++        case VBOXOSTYPE_OpenMandriva:                     pszOs = "OpenMandriva";   break;
+         case VBOXOSTYPE_RedHat:                           pszOs = "RedHat";         break;
+         case VBOXOSTYPE_Turbolinux:                       pszOs = "TurboLinux";     break;
+         case VBOXOSTYPE_Ubuntu:                           pszOs = "Ubuntu";         break;
+diff -Naur VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/VirtualBox1.qrc VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/VirtualBox1.qrc
+--- VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/VirtualBox1.qrc	2018-05-09 16:37:50.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/VirtualBox1.qrc	2018-06-15 11:13:41.918757155 +0000
+@@ -290,8 +290,8 @@
+         <file alias="os_linux26_64.png">images/os_linux26_64.png</file>
+         <file alias="os_macosx.png">images/os_macosx.png</file>
+         <file alias="os_macosx_64.png">images/os_macosx_64.png</file>
+-        <file alias="os_mandriva.png">images/os_mandriva.png</file>
+-        <file alias="os_mandriva_64.png">images/os_mandriva_64.png</file>
++        <file alias="os_openmandriva.png">images/os_openmandriva.png</file>
++        <file alias="os_openmandriva_64.png">images/os_openmandriva_64.png</file>
+         <file alias="os_netbsd.png">images/os_netbsd.png</file>
+         <file alias="os_netbsd_64.png">images/os_netbsd_64.png</file>
+         <file alias="os_netware.png">images/os_netware.png</file>
+diff -Naur VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp
+--- VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp	2018-05-09 16:37:58.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp	2018-06-15 11:13:41.919757190 +0000
+@@ -316,8 +316,8 @@
+     m_guestOSTypeIconNames.insert("Fedora_64",       ":/os_fedora_64.png");
+     m_guestOSTypeIconNames.insert("Gentoo",          ":/os_gentoo.png");
+     m_guestOSTypeIconNames.insert("Gentoo_64",       ":/os_gentoo_64.png");
+-    m_guestOSTypeIconNames.insert("Mandriva",        ":/os_mandriva.png");
+-    m_guestOSTypeIconNames.insert("Mandriva_64",     ":/os_mandriva_64.png");
++    m_guestOSTypeIconNames.insert("OpenMandriva",        ":/os_openmandriva.png");
++    m_guestOSTypeIconNames.insert("OpenMandriva_64",     ":/os_openmandriva_64.png");
+     m_guestOSTypeIconNames.insert("RedHat",          ":/os_redhat.png");
+     m_guestOSTypeIconNames.insert("RedHat_64",       ":/os_redhat_64.png");
+     m_guestOSTypeIconNames.insert("Turbolinux",      ":/os_turbolinux.png");
+diff -Naur VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/widgets/UINameAndSystemEditor.cpp VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/src/widgets/UINameAndSystemEditor.cpp
+--- VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/widgets/UINameAndSystemEditor.cpp	2018-06-15 11:10:28.801940000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/src/widgets/UINameAndSystemEditor.cpp	2018-06-15 11:13:41.919757190 +0000
+@@ -213,6 +213,10 @@
+ 
+     /* Choose the 1st item to be the current: */
+     m_pComboFamily->setCurrentIndex(0);
++    /* Default to Linux */
++    const int liIndex = m_pComboFamily->findData("Linux", TypeID);
++    if (liIndex != -1)
++        m_pComboFamily->setCurrentIndex(liIndex);
+     /* And update the linked widgets accordingly: */
+     sltFamilyChanged(m_pComboFamily->currentIndex());
+ }
+@@ -272,6 +276,7 @@
+         if (iTypeIndex != -1)
+             m_pComboType->setCurrentIndex(iTypeIndex);
+     }
++
+ }
+ 
+ void UINameAndSystemEditor::retranslateUi()
+@@ -317,6 +322,16 @@
+         if (iTypeIndex != -1)
+             m_pComboType->setCurrentIndex(iTypeIndex);
+     }
++    /* Or select OpenMandriva item for Linux family as default: */
++    else if (strFamilyId == "Linux")
++    {
++        QString strDefaultID = "OpenMandriva";
++        if (ARCH_BITS == 64 && m_fSupportsHWVirtEx && m_fSupportsLongMode)
++            strDefaultID += "_64";
++        const int iIndexOpenMandriva = m_pComboType->findData(strDefaultID, TypeID);
++        if (iIndexOpenMandriva != -1)
++            m_pComboType->setCurrentIndex(iIndexOpenMandriva);
++    }
+     /* Or select Windows 7 item for Windows family as default: */
+     else if (strFamilyId == "Windows")
+     {
+@@ -327,16 +342,6 @@
+         if (iIndexWin7 != -1)
+             m_pComboType->setCurrentIndex(iIndexWin7);
+     }
+-    /* Or select Ubuntu item for Linux family as default: */
+-    else if (strFamilyId == "Linux")
+-    {
+-        QString strDefaultID = "Mandriva";
+-        if (ARCH_BITS == 64 && m_fSupportsHWVirtEx && m_fSupportsLongMode)
+-            strDefaultID += "_64";
+-        const int iIndexMandriva = m_pComboType->findData(strDefaultID, TypeID);
+-        if (iIndexMandriva != -1)
+-            m_pComboType->setCurrentIndex(iIndexMandriva);
+-    }
+     /* Else simply select the first one present: */
+     else
+         m_pComboType->setCurrentIndex(0);
+diff -Naur VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageBasic1.cpp VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageBasic1.cpp
+--- VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageBasic1.cpp	2018-05-09 16:38:11.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageBasic1.cpp	2018-06-15 11:13:41.920757225 +0000
+@@ -138,8 +138,8 @@
+     { QRegExp("Fe.*32",                            Qt::CaseInsensitive), "Fedora" },
+     { QRegExp("((Gen)|(Sab)).*64",                 Qt::CaseInsensitive), "Gentoo_64" },
+     { QRegExp("((Gen)|(Sab)).*32",                 Qt::CaseInsensitive), "Gentoo" },
+-    { QRegExp("((Man)|(Mag)).*64",                 Qt::CaseInsensitive), "Mandriva_64" },
+-    { QRegExp("((Man)|(Mag)).*32",                 Qt::CaseInsensitive), "Mandriva" },
++    { QRegExp("((Man)|(Mag)).*64",                 Qt::CaseInsensitive), "OpenMandriva_64" },
++    { QRegExp("((Man)|(Mag)).*32",                 Qt::CaseInsensitive), "OpenMandriva" },
+     { QRegExp("((Red)|(rhel)|(cen)).*64",          Qt::CaseInsensitive), "RedHat_64" },
+     { QRegExp("((Red)|(rhel)|(cen)).*32",          Qt::CaseInsensitive), "RedHat" },
+     { QRegExp("Tur.*64",                           Qt::CaseInsensitive), "Turbolinux_64" },
+diff -Naur VirtualBox-5.2.12/src/VBox/Installer/linux/VBoxSysInfo.sh VirtualBox-5.2.12.tpg/src/VBox/Installer/linux/VBoxSysInfo.sh
+--- VirtualBox-5.2.12/src/VBox/Installer/linux/VBoxSysInfo.sh	2018-05-09 16:38:25.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Installer/linux/VBoxSysInfo.sh	2018-06-15 11:13:41.920757225 +0000
+@@ -44,11 +44,11 @@
+         # Debian-based system
+         release=`cat /etc/debian_version`
+         print_linux_info "Debian" $release
+-    elif [ -r /etc/mandriva-release ]
++    elif [ -r /etc/openmandriva-release ]
+     then
+-        # Mandriva-based system
+-        release=`cat /etc/mandriva-release | sed -e 's/[A-Za-z ]* release //'`
+-        print_linux_info "Mandriva" $release
++        # OpenMandriva-based system
++        release=`cat /etc/openmandriva-release | sed -e 's/[A-Za-z ]* release //'`
++        print_linux_info "OpenMandriva" $release
+     elif [ -r /etc/fedora-release ]
+     then
+         # Fedora-based
+diff -Naur VirtualBox-5.2.12/src/VBox/Installer/linux/distributions_rpm VirtualBox-5.2.12.tpg/src/VBox/Installer/linux/distributions_rpm
+--- VirtualBox-5.2.12/src/VBox/Installer/linux/distributions_rpm	2018-05-09 16:38:25.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Installer/linux/distributions_rpm	2018-06-15 11:13:41.921757259 +0000
+@@ -6,6 +6,9 @@
+ sles11.0        = SLES_11_0
+ sles10.1        = SLES_10_1
+ mdv2011.0       = MANDRIVA_2011_0
++omv2014.0       = OPENMANDRIVA_2014_0
++omv2015.0       = OPENMANDRIVA_Lx3
++omv4000         = OPENMANDRIVA_Lx4
+ fedora26        = FEDORA_26
+ fedora25        = FEDORA_25
+ fedora24        = FEDORA_24
+diff -Naur VirtualBox-5.2.12/src/VBox/Installer/linux/rpm/rules VirtualBox-5.2.12.tpg/src/VBox/Installer/linux/rpm/rules
+--- VirtualBox-5.2.12/src/VBox/Installer/linux/rpm/rules	2018-05-09 16:38:25.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Installer/linux/rpm/rules	2018-06-15 11:17:48.971643067 +0000
+@@ -63,6 +63,9 @@
+ ifeq ($(shell if grep -q '^%disttag' /usr/lib/rpm/macros.d/mandriva 2>/dev/null; then echo yes; fi),yes)
+ $(error Fix /usr/lib/rpm/macros.d/mandriva)
+ endif
++ifeq ($(shell if grep -q '^%distsuffix' /usr/lib/rpm/macros.d/macros.OpenMandriva 2>/dev/null; then echo yes; fi),yes)
++$(error Fix /usr/lib/rpm/macros.d/macros.OpenMandriva)
++endif
+ 
+ verpkg   := VirtualBox-5.2
+ current  := $(shell pwd)
+diff -Naur VirtualBox-5.2.12/src/VBox/Main/cbinding/VBoxCAPI_v2_2.h VirtualBox-5.2.12.tpg/src/VBox/Main/cbinding/VBoxCAPI_v2_2.h
+--- VirtualBox-5.2.12/src/VBox/Main/cbinding/VBoxCAPI_v2_2.h	2018-05-09 16:38:27.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Main/cbinding/VBoxCAPI_v2_2.h	2018-06-15 11:13:41.922757294 +0000
+@@ -908,8 +908,8 @@
+     CIMOSType_CIMOS_NovellOES = 86,
+     CIMOSType_CIMOS_NovellLinuxDesktop = 87,
+     CIMOSType_CIMOS_SunJavaDesktopSystem = 88,
+-    CIMOSType_CIMOS_Mandriva = 89,
+-    CIMOSType_CIMOS_Mandriva_64 = 90,
++    CIMOSType_CIMOS_OpenMandriva = 89,
++    CIMOSType_CIMOS_OpenMandriva_64 = 90,
+     CIMOSType_CIMOS_TurboLinux = 91,
+     CIMOSType_CIMOS_TurboLinux_64 = 92,
+     CIMOSType_CIMOS_Ubuntu = 93,
+diff -Naur VirtualBox-5.2.12/src/VBox/Main/cbinding/VBoxCAPI_v3_0.h VirtualBox-5.2.12.tpg/src/VBox/Main/cbinding/VBoxCAPI_v3_0.h
+--- VirtualBox-5.2.12/src/VBox/Main/cbinding/VBoxCAPI_v3_0.h	2018-05-09 16:38:27.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Main/cbinding/VBoxCAPI_v3_0.h	2018-06-15 11:13:41.924757363 +0000
+@@ -1358,8 +1358,8 @@
+     CIMOSType_CIMOS_NovellOES = 86,
+     CIMOSType_CIMOS_NovellLinuxDesktop = 87,
+     CIMOSType_CIMOS_SunJavaDesktopSystem = 88,
+-    CIMOSType_CIMOS_Mandriva = 89,
+-    CIMOSType_CIMOS_Mandriva_64 = 90,
++    CIMOSType_CIMOS_OpenMandriva = 89,
++    CIMOSType_CIMOS_OpenMandriva_64 = 90,
+     CIMOSType_CIMOS_TurboLinux = 91,
+     CIMOSType_CIMOS_TurboLinux_64 = 92,
+     CIMOSType_CIMOS_Ubuntu = 93,
+diff -Naur VirtualBox-5.2.12/src/VBox/Main/include/ovfreader.h VirtualBox-5.2.12.tpg/src/VBox/Main/include/ovfreader.h
+--- VirtualBox-5.2.12/src/VBox/Main/include/ovfreader.h	2018-05-09 16:38:28.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Main/include/ovfreader.h	2018-06-15 11:13:41.924757363 +0000
+@@ -153,8 +153,8 @@
+     CIMOSType_CIMOS_NovellOES   = 86,
+     CIMOSType_CIMOS_NovellLinuxDesktop  = 87,
+     CIMOSType_CIMOS_SunJavaDesktopSystem    = 88,
+-    CIMOSType_CIMOS_Mandriva    = 89,
+-    CIMOSType_CIMOS_Mandriva_64 = 90,
++    CIMOSType_CIMOS_OpenMandriva    = 89,
++    CIMOSType_CIMOS_OpenMandriva_64 = 90,
+     CIMOSType_CIMOS_TurboLinux  = 91,
+     CIMOSType_CIMOS_TurboLinux_64   = 92,
+     CIMOSType_CIMOS_Ubuntu  = 93,
+diff -Naur VirtualBox-5.2.12/src/VBox/Main/src-all/Global.cpp VirtualBox-5.2.12.tpg/src/VBox/Main/src-all/Global.cpp
+--- VirtualBox-5.2.12/src/VBox/Main/src-all/Global.cpp	2018-05-09 16:38:28.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Main/src-all/Global.cpp	2018-06-15 11:13:41.925757398 +0000
+@@ -250,15 +250,15 @@
+       1024,  16,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
+ 
+-    { "Linux",   "Linux",             "Mandriva",           "Mandriva (32-bit)",
+-      VBOXOSTYPE_Mandriva,        VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET | VBOXOSHINT_X2APIC,
+-      1024,  16,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
++    { "Linux",   "Linux",             "OpenMandriva",           "OpenMandriva (32-bit)",
++      VBOXOSTYPE_OpenMandriva,        VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET | VBOXOSHINT_X2APIC,
++      1024,  16,  20 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
+ 
+-    { "Linux",   "Linux",             "Mandriva_64",        "Mandriva (64-bit)",
+-      VBOXOSTYPE_Mandriva_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC
++    { "Linux",   "Linux",             "OpenMandriva_64",        "OpenMandriva (64-bit)",
++      VBOXOSTYPE_OpenMandriva_x64,    VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC
+                                 | VBOXOSHINT_USBTABLET | VBOXOSHINT_X2APIC,
+-      1024,  16,  8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
++      1024,  16,  20 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+         StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97, AudioCodecType_AD1980  },
+ 
+     { "Linux",   "Linux",             "RedHat",             "Red Hat (32-bit)",
+diff -Naur VirtualBox-5.2.12/src/VBox/Main/src-server/ApplianceImpl.cpp VirtualBox-5.2.12.tpg/src/VBox/Main/src-server/ApplianceImpl.cpp
+--- VirtualBox-5.2.12/src/VBox/Main/src-server/ApplianceImpl.cpp	2018-05-09 16:38:29.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Main/src-server/ApplianceImpl.cpp	2018-06-15 11:13:41.926757432 +0000
+@@ -165,8 +165,8 @@
+     { ovf::CIMOSType_CIMOS_SunJavaDesktopSystem,                 VBOXOSTYPE_Linux },
+     { ovf::CIMOSType_CIMOS_TurboLinux,                           VBOXOSTYPE_Turbolinux },
+     { ovf::CIMOSType_CIMOS_TurboLinux_64,                        VBOXOSTYPE_Turbolinux_x64 },
+-    { ovf::CIMOSType_CIMOS_Mandriva,                             VBOXOSTYPE_Mandriva },
+-    { ovf::CIMOSType_CIMOS_Mandriva_64,                          VBOXOSTYPE_Mandriva_x64 },
++    { ovf::CIMOSType_CIMOS_OpenMandriva,                         VBOXOSTYPE_OpenMandriva },
++    { ovf::CIMOSType_CIMOS_OpenMandriva_64,                      VBOXOSTYPE_OpenMandriva_x64 },
+     { ovf::CIMOSType_CIMOS_Ubuntu,                               VBOXOSTYPE_Ubuntu },
+     { ovf::CIMOSType_CIMOS_Ubuntu_64,                            VBOXOSTYPE_Ubuntu_x64 },
+     { ovf::CIMOSType_CIMOS_Debian,                               VBOXOSTYPE_Debian },
+@@ -228,7 +228,7 @@
+     {"SUSE",          VBOXOSTYPE_OpenSUSE},
+     {"Novell",        VBOXOSTYPE_OpenSUSE},
+     {"Red Hat",       VBOXOSTYPE_RedHat},
+-    {"Mandriva",      VBOXOSTYPE_Mandriva},
++    {"OpenMandriva",  VBOXOSTYPE_OpenMandriva},
+     {"Ubuntu",        VBOXOSTYPE_Ubuntu},
+     {"Debian",        VBOXOSTYPE_Debian},
+     {"QNX",           VBOXOSTYPE_QNX},
+@@ -257,7 +257,7 @@
+     {"SUSE",          VBOXOSTYPE_OpenSUSE_x64},
+     {"Novell",        VBOXOSTYPE_OpenSUSE_x64},
+     {"Red Hat",       VBOXOSTYPE_RedHat_x64},
+-    {"Mandriva",      VBOXOSTYPE_Mandriva_x64},
++    {"OpenMandriva",  VBOXOSTYPE_OpenMandriva_x64},
+     {"Ubuntu",        VBOXOSTYPE_Ubuntu_x64},
+     {"Debian",        VBOXOSTYPE_Debian_x64},
+     {"Linux 2.4",     VBOXOSTYPE_Linux24_x64},
+diff -Naur VirtualBox-5.2.12/src/VBox/Main/xml/Settings.cpp VirtualBox-5.2.12.tpg/src/VBox/Main/xml/Settings.cpp
+--- VirtualBox-5.2.12/src/VBox/Main/xml/Settings.cpp	2018-05-09 16:38:31.000000000 +0000
++++ VirtualBox-5.2.12.tpg/src/VBox/Main/xml/Settings.cpp	2018-06-15 11:13:41.929757536 +0000
+@@ -5095,7 +5095,7 @@
+     { "opensuse", "OpenSUSE" },
+     { "fedoracore", "Fedora" },
+     { "gentoo", "Gentoo" },
+-    { "mandriva", "Mandriva" },
++    { "openmandriva", "OpenMandriva" },
+     { "redhat", "RedHat" },
+     { "ubuntu", "Ubuntu" },
+     { "xandros", "Xandros" },
diff --git a/fix-build-failure-new-acpica-unix.patch b/fix-build-failure-new-acpica-unix.patch
new file mode 100644
index 0000000..cf17c8d
--- /dev/null
+++ b/fix-build-failure-new-acpica-unix.patch
@@ -0,0 +1,40 @@
+Description: This is a fix for the new build failure introduced by new acpica-unix,
+ lets workaround it for now
+ see discussion in: https://github.com/acpica/acpica/commit/f9a88a4c1cd020b6a5475d63b29626852a0b5f37#diff-95e84a7c99c268ce5433dea47cf17ec0
+Author: FreeBSD team https://svnweb.freebsd.org/ports/head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Makefile.kmk?revision=469000&view=co
+Bug-Debian: https://bugs.debian.org/899318
+Last-Update: 2018-05-25
+
+--- virtualbox-5.2.12-dfsg.orig/src/VBox/Devices/Makefile.kmk
++++ virtualbox-5.2.12-dfsg/src/VBox/Devices/Makefile.kmk
+@@ -828,7 +828,12 @@ if !defined(VBOX_ONLY_EXTPACKS)
+ 
+   $$(VBoxDD_0_OUTDIR)/vboxaml.hex: $(PATH_SUB_CURRENT)/PC/vbox.dsl | $$(dir $$@)
+ 	$(call MSG_TOOL,iasl,VBoxDD,$<,$@)
++	$(QUIET)$(RM) -f $@ $@.tmp
+ 	$(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $<
++	$(QUIET)$(MV) -f $@ $@.tmp
++	$(QUIET)$(SED) -e "s/vboxaml_aml_code/AmlCode/g" \
++		--output $@ $@.tmp
++	$(QUIET)$(RM) -f $@.tmp
+ 
+   vboxaml.hex:: $$(VBoxDD_0_OUTDIR)/vboxaml.hex
+ 
+@@ -838,6 +843,8 @@ if !defined(VBOX_ONLY_EXTPACKS)
+ 	$(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $<
+ 	$(QUIET)$(MV) -f $@ $@.tmp
+ 	$(QUIET)$(SED) -e "s/AmlCode/AmlCodeSsdtStandard/g" \
++		-e "s/__VBOXSSDT-STANDARD_HEX__/__VBOXSSDT_STANDARD_HEX__/g" \
++		-e "s/vboxssdt-standard_aml_code/AmlCodeSsdtStandard/g" \
+ 		--output $@ $@.tmp
+ 	$(QUIET)$(RM) -f $@.tmp
+ 
+@@ -853,6 +860,8 @@ if !defined(VBOX_ONLY_EXTPACKS)
+ 	$(QUIET)$(VBOX_IASLCMD) -tc -vs -p $@ $@.pre1
+ 	$(QUIET)$(MV) -f $@ $@.tmp
+ 	$(QUIET)$(SED) -e "s/AmlCode/AmlCodeSsdtCpuHotPlug/g" \
++		-e "s/__VBOXSSDT-CPUHOTPLUG_HEX__/__VBOXSSDT_CPUHOTPLUG_HEX__/g" \
++		-e "s/vboxssdt-cpuhotplug_aml_code/AmlCodeSsdtCpuHotPlug/g" \
+ 		--output $@ $@.tmp
+ 	$(QUIET)$(RM) -f $@.tmp $@.pre $@.pre1
+ 
diff --git a/fix-build.patch b/fix-build.patch
new file mode 100644
index 0000000..fb5fc73
--- /dev/null
+++ b/fix-build.patch
@@ -0,0 +1,16 @@
+Description: Tentatively fix virtualbox-dkms
+Author: Gianfranco Costamagna <locutusofborg@debian.org>
+
+Last-Update: 2017-10-27
+
+--- virtualbox-5.2.0-dfsg.orig/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
++++ virtualbox-5.2.0-dfsg/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
+@@ -41,7 +41,7 @@
+ #include <iprt/string.h>
+ #include <iprt/mem.h>
+ 
+-#include "VBoxPciInternal.h"
++#include "../VBoxPciInternal.h"
+ 
+ #ifdef VBOX_WITH_IOMMU
+ # include <linux/dmar.h>
diff --git a/videorec.patch b/videorec.patch
new file mode 100644
index 0000000..f5f96d2
--- /dev/null
+++ b/videorec.patch
@@ -0,0 +1,85 @@
+Index: virtualbox/configure
+===================================================================
+--- virtualbox.orig/configure
++++ virtualbox/configure
+@@ -1653,6 +1654,41 @@
+ 
+ 
+ #
++# Check for libopus
++#
++check_libopus()
++{
++  if [ ! -z "$BUILD_LIBOPUS" ]; then
++    test_header libopus
++    if which_wrapper pkg-config > /dev/null; then
++      libopus_ver=`pkg-config opus --modversion 2>> $LOG`
++      if [ $? -eq 0 ]; then
++        FLGOPUS=`pkg-config opus --cflags`
++        INCOPUS=`strip_I "$FLGOPUS"`
++        LIBOPUS=`pkg-config opus --libs`
++      fi
++      cat > $ODIR.tmp_src.cc << EOF
++#include <cstdio>
++#include <opus/opus.h>
++extern "C" int main(void)
++{
++  OpusEncoder *test;
++  printf("found, OK.\n");
++}
++EOF
++      [ -n "$INCOPUS" ] && I_INCOPUS=`prefix_I "$INCOPUS"`
++      if test_compile "$LIBOPUS $I_INCOPUS" opus opus; then
++        if test_execute; then
++          cnf_append "SDK_VBOX_OPUS_INCS" "$INCOPUS"
++          cnf_append "SDK_VBOX_OPUS_LIBS" "`strip_l "$LIBOPUS"`"
++          fi
++      fi
++    fi
++  fi
++}
++
++
++#
+ # Check for libvpx
+ #
+ check_vpx()
+@@ -2529,6 +2563,9 @@
+     --enable-hardening)
+       WITH_HARDENING=2
+       ;;
++    --enable-system-libopus)
++      BUILD_LIBOPUS=1
++      ;;
+     --disable-udptunnel)
+       WITH_UDPTUNNEL=0
+       ;;
+@@ -2754,6 +2791,7 @@
+   check_ssl
+   check_curl
+   [ $WITH_LIBVPX -eq 1 ] && check_vpx
++  check_libopus
+  [ "$OS" != "darwin"  ] && check_z
+   [ "$OS" != "darwin"  ] && check_png
+   [ $OSE -eq 0 -a "$OS" = "linux" ] && check_pam
+diff --git a/Config.kmk b/Config.kmk
+index ee6f70771..0d2408384 100644
+--- a/Config.kmk
++++ b/Config.kmk
+@@ -1179,14 +1179,14 @@ ifdef VBOX_OSE
+  ifn1of ($(KBUILD_TARGET), darwin linux solaris win)
+   VBOX_WITH_INSTALLER=
+  endif
+- # if1of ($(KBUILD_TARGET), win)
++  if1of ($(KBUILD_TARGET), win)
+   # Undefine codec libraries which are not needed.
+   VBOX_WITH_LIBVPX=
+   VBOX_WITH_LIBOPUS=
+   # Disable video recording (with audio support).
+   VBOX_WITH_VIDEOREC=
+   VBOX_WITH_AUDIO_VIDEOREC=
+- # endif
++  endif
+  # branding
+  VBOX_BRAND_LICENSE_HTML             := $(PATH_ROOT)/doc/License-gpl-2.0.html
+  VBOX_BRAND_LICENSE_RTF              := $(PATH_ROOT)/doc/License-gpl-2.0.rtf
diff --git a/virtualbox-5.2.10-python-3.7.patch b/virtualbox-5.2.10-python-3.7.patch
new file mode 100644
index 0000000..dcac7e9
--- /dev/null
+++ b/virtualbox-5.2.10-python-3.7.patch
@@ -0,0 +1,13 @@
+diff -up VirtualBox-5.2.10/src/libs/xpcom18a4/python/src/ErrorUtils.cpp.omv~ VirtualBox-5.2.10/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
+--- VirtualBox-5.2.10/src/libs/xpcom18a4/python/src/ErrorUtils.cpp.omv~	2018-04-27 01:37:19.442871087 +0200
++++ VirtualBox-5.2.10/src/libs/xpcom18a4/python/src/ErrorUtils.cpp	2018-04-27 01:37:33.612523461 +0200
+@@ -440,7 +440,7 @@ char *PyTraceback_AsString(PyObject *exc
+ #if PY_MAJOR_VERSION <= 2
+ 	char *tempResult = PyString_AsString(obResult);
+ #else
+-	char *tempResult = PyUnicode_AsUTF8(obResult);
++	const char *tempResult = PyUnicode_AsUTF8(obResult);
+ #endif
+ 	result = (char *)PyMem_Malloc(strlen(tempResult)+1);
+ 	if (result==NULL)
+diff -up VirtualBox-5.2.10/src/libs/xpcom18a4/python/src/PyXPCOM.h.omv~ VirtualBox-5.2.10/src/libs/xpcom18a4/python/src/PyXPCOM.h
diff --git a/virtualbox-5.2.10-qt-5.11.patch b/virtualbox-5.2.10-qt-5.11.patch
new file mode 100644
index 0000000..6062edf
--- /dev/null
+++ b/virtualbox-5.2.10-qt-5.11.patch
@@ -0,0 +1,11 @@
+diff -up VirtualBox-5.2.10/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp.omv~ VirtualBox-5.2.10/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp
+--- VirtualBox-5.2.10/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp.omv~	2018-04-27 01:31:42.763060610 +0200
++++ VirtualBox-5.2.10/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp	2018-04-27 01:32:08.839427839 +0200
+@@ -23,6 +23,7 @@
+ # include <QRegExpValidator>
+ 
+ /* GUI includes: */
++# include <QButtonGroup>
+ # include "QIWidgetValidator.h"
+ # include "UIGlobalSettingsProxy.h"
+ # include "UIExtraDataManager.h"
diff --git a/virtualbox.spec b/virtualbox.spec
index bf348c7..275418f 100644
--- a/virtualbox.spec
+++ b/virtualbox.spec
@@ -1,7 +1,17 @@
+%ifarch %{ix86}
+# This is bogus, but at normal optimization levels, gcc
+# tries to allocate more memory than 32-bit address space
+# can hold :/
+%global optflags %{optflags} -g0 -fno-lto -fuse-ld=bfd -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+%global ldflags %{ldflags} -g0 -fno-lto -fuse-ld=bfd -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+%endif
+
 # Workaround for the dependency generator somehow
 # thinking x11-driver-video-vboxvideo provides libGL.so.1()(64bit)
 # causing Mesa to go missing...
 %define __noautoprov 'libGL.*'
+%global __provides_exclude ^VBox|\^libGL\\.so\\.1|\^libEGL\\.so\\.1
+%global __requires_exclude ^VBox
 
 %define beta %{nil}
 %define kname vboxdrv
@@ -42,8 +52,8 @@
 
 Summary:	A general-purpose full virtualizer for x86 hardware
 Name:		virtualbox
-Version:	5.2.8
-Release:	1
+Version:	5.2.12
+Release:	3
 License:	GPLv2
 Group:		Emulators
 Url:		http://www.virtualbox.org/
@@ -53,17 +63,22 @@ Source3:	virtualbox-tmpfiles.conf
 Source4:	60-vboxadd.perms
 Source5:	vboxadd.service
 Source6:	vboxweb.service
+Source20:	os_openmandriva.png
+Source21:	os_openmandriva_64.png
 Source100:	virtualbox.rpmlintrc
 # (tpg) dkms is used to build kernel modules, so use it everywhere
 Patch1:		virtualbox-fix-modules-rebuild-command.patch
 Patch3:		VirtualBox-4.1.8-futex.patch
 Patch4:		virtualbox-fix-vboxadd-req.patch
+Patch5:		virtualbox-5.2.10-qt-5.11.patch
+Patch6:		virtualbox-5.2.10-python-3.7.patch
 # (tmb) disable update notification (OpenSuSe)
 Patch7:		VirtualBox-4.3.0-noupdate-check.patch
 # don't check for:
 # - mkisofs: we're not going to build the additions .iso file
 # - makeself: we're not going to create the stanalone .run installers
 Patch9:		VirtualBox-5.0.0_BETA3-dont-check-for-mkisofs-or-makeself.patch
+Patch10:	VirtualBox-5.2.10-allow-gcc-8.0.patch
 
 Patch16:	virtualbox-default-to-mandriva.patch
 Patch18:	VirtualBox-5.1.8-gsoap-2.8.13.patch
@@ -71,12 +86,29 @@ Patch22:	virtualbox-no-prehistoric-xfree86.patch
 Patch23:	VirtualBox-5.0.10-no-bundles.patch
 Patch24:	VirtualBox-5.0.18-xserver_guest_xorg19.patch
 
+# "Borrowed" from Debian
+Patch103:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/06-xsession.patch
+Patch104:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/07-vboxnetflt-reference.patch
+Patch107:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/16-no-update.patch
+Patch108:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/18-system-xorg.patch
+Patch109:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/27-hide-host-cache-warning.patch
+Patch110:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/29-fix-ftbfs-as-needed.patch
+Patch111:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/fix-build.patch
+Patch112:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/videorec.patch
+Patch113:	https://sources.debian.org/data/contrib/v/virtualbox/5.2.12-dfsg-2/debian/patches/fix-build-failure-new-acpica-unix.patch
+
+# (tpg) add support for OpenMandriva
+Patch999:	VirtualBox-5.2.12-add-support-for-OpenMandriva.patch
+
 ExclusiveArch:	%{ix86} x86_64
 BuildRequires:	dev86
 BuildRequires:	dkms
 BuildRequires:	gawk
+%ifnarch %{ix86}
 BuildRequires:	gsoap
+%endif
 BuildRequires:	acpica
+BuildRequires:	yasm
 BuildRequires:	java-1.8.0-openjdk-devel
 BuildRequires:	xsltproc
 BuildRequires:	libcap-devel
@@ -88,11 +120,12 @@ BuildRequires:	pkgconfig(egl)
 BuildRequires:	pkgconfig(ext2fs)
 BuildRequires:	pkgconfig(gl)
 BuildRequires:	pkgconfig(glu)
+BuildRequires:	pkgconfig(opus)
 BuildRequires:	pkgconfig(libcurl)
 BuildRequires:	pkgconfig(libIDL-2.0)
 BuildRequires:	pkgconfig(libpulse)
 BuildRequires:	pkgconfig(libvncserver)
-BuildRequires:	pkgconfig(python2)
+BuildRequires:	pkgconfig(python)
 BuildRequires:	qt5-qttools
 BuildRequires:	qt5-linguist-tools
 BuildRequires:	pkgconfig(Qt5Core)
@@ -123,9 +156,8 @@ BuildRequires:	docbook-dtd44-xml
 %endif
 # bogus devel-file-in-non-devel-package errors in dkms subpackage
 BuildConflicts:	rpmlint < 1.4-37
-
 Requires(post,preun,postun):	rpm-helper
-Requires:	kmod(vboxdrv) = %{version}
+#Requires:	kmod(vboxdrv) = %{version}
 Suggests:	%{name}-doc
 Conflicts:	dkms-%{name} < 5.0.24-1
 
@@ -146,9 +178,9 @@ Kernel support for VirtualBox.
 %package guest-additions
 Summary:	Additions for VirtualBox guest systems
 Group:		Emulators
-Requires:	kmod(vboxguest) = %{version}
-Requires:	kmod(vboxsf) = %{version}
-Requires:	kmod(vboxvideo) = %{version}
+#Requires:	kmod(vboxguest) = %{version}
+#Requires:	kmod(vboxsf) = %{version}
+#Requires:	kmod(vboxvideo) = %{version}
 Requires:	x11-driver-video-vboxvideo
 Requires(post,preun): rpm-helper
 
@@ -163,7 +195,7 @@ Group:		System/Kernel and hardware
 Obsoletes:	dkms-vboxadd < %{version}-%{release}
 %rename		dkms-vboxvfs
 %rename		dkms-vboxsf
-%rename		dkms-vboxvideo = %{version}-%{release}
+%rename		dkms-vboxvideo
 Conflicts:	dkms-%{name} < 4.1.8
 Requires(pre):	dkms
 Requires(post,preun):	dkms
@@ -196,6 +228,9 @@ This package contains the user manual PDF file for %{name}.
 %setup -qn %{distname}
 %apply_patches
 
+# add OpenMandriva images
+cp -a %{SOURCE20} %{SOURCE21} src/VBox/Frontends/VirtualBox/images/
+
 # Remove bundle X11 sources and some lib sources, before patching.
 mv src/VBox/Additions/x11/x11include/mesa-7.2 src/VBox/Additions/x11/
 rm -rf src/VBox/Additions/x11/x11include/*
@@ -223,8 +258,9 @@ VBOX_USE_SYSTEM_GL_HEADERS := 1
 VBOX_NO_LEGACY_XORG_X11 := 1
 VBOX_USE_SYSTEM_GL_HEADERS := 1
 XSERVER_VERSION := %{x11_server_majorver}
-VBOX_BLD_PYTHON:=/usr/bin/python2
+VBOX_BLD_PYTHON:=/usr/bin/python
 VBOX_GTAR:=
+TOOL_YASM_AS=yasm
 EOF
 
 sed -i 's/CXX="g++"/CXX="g++ -std=c++11"/' configure
@@ -238,7 +274,10 @@ export PATH=$PWD/BFD:$PATH
 export LIBPATH_LIB="%{_lib}"
 ./configure \
 	--enable-vnc \
+%ifnarch %{ix86}
 	--enable-webservice \
+%endif
+	--enable-system-libopus \
 	--disable-kmods \
 	--enable-qt5 \
 	--enable-pulse \
@@ -556,13 +595,15 @@ set -x
 %{vboxlibdir}/VBoxXPCOMIPCD
 %{vboxlibdir}/vboxkeyboard.tar.bz2
 %{vboxlibdir}/vboxshell.py
+%ifnarch %{ix86}
 %{vboxlibdir}/vboxwebsrv
+%{vboxlibdir}/webtest
+%endif
 %{vboxlibdir}/virtualbox.xml
 %{vboxlibdir}/scripts
 %{vboxlibdir}/tools
 %{vboxlibdir}/ExtensionPacks
 %{vboxlibdir}/rdesktop-vrdp*
-%{vboxlibdir}/webtest
 # this files need proper permission
 %attr(4711,root,root) %{vboxlibdir}/VBoxHeadless
 %attr(4711,root,root) %{vboxlibdir}/VBoxSDL
Not Available

christann404 [@T] gmail.comokay2093d 18hrs
benbullard79 [@T] cox.netI have an issue with these, see QA forum.2092d 12hrs
benbullard79 [@T] cox.netNo Comment.2092d 12hrs
benbullard79 [@T] cox.netsuperceded2088d 10hrs
benbullard79 [@T] cox.netIt is time (over 7 days)2088d 10hrs