Index: /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp	(revision 52003)
+++ /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp	(revision 52004)
@@ -67,4 +67,5 @@
 #include <VBox/vmm/pdmapi.h> /* For PDMR3DriverAttach/PDMR3DriverDetach. */
 #include <VBox/vmm/pdmusb.h> /* For PDMR3UsbCreateEmulatedDevice. */
+#include <VBox/vmm/gim.h>    /* For GIMOSID. */
 #include <VBox/version.h>
 #include <VBox/HostServices/VBoxClipboardSvc.h>
@@ -1170,7 +1171,17 @@
                     fGimDeviceNeeded = false;
                 }
+#if 0           /* Activate this soon. */
+                else if (  osTypeId == "Windows7"
+                        || osTypeId == "Windows7_64"
+                        || osTypeId == "Windows8"
+                        || osTypeId == "Windows8_64"
+                        || osTypeId == "Windows81"
+                        || osTypeId == "Windows81_64")
+                {
+                    pcszParavirtProvider = "HyperV";
+                }
+#endif
                 else
                 {
-                    /** @todo Choose a provider based on guest OS type. There is no "Default" provider. */
                     pcszParavirtProvider = "None";
                     fGimDeviceNeeded = false;
@@ -1203,4 +1214,27 @@
         }
         InsertConfigString(pParavirtNode, "Provider", pcszParavirtProvider);
+
+        if (   !RTStrCmp(pcszParavirtProvider, "Minimal")
+            && fOsXGuest)
+        {
+            GIMOSID enmOsId = GIMOSID_OSX;
+            if (osTypeId == "MacOS_64")
+                enmOsId = GIMOSID_OSX_64;
+            else if (osTypeId == "MacOS106")
+                enmOsId = GIMOSID_OSX_106;
+            else if (osTypeId == "MacOS106_64")
+                enmOsId = GIMOSID_OSX_106_64;
+            else if (osTypeId == "MacOS107")
+                enmOsId = GIMOSID_OSX_107;
+            else if (osTypeId == "MacOS107_64")
+                enmOsId = GIMOSID_OSX_107_64;
+            else if (osTypeId == "MacOS108")
+                enmOsId = GIMOSID_OSX_108;
+            else if (osTypeId == "MacOS108_64")
+                enmOsId = GIMOSID_OSX_108_64;
+
+            InsertConfigInteger(pParavirtNode, "GuestOsId", enmOsId);
+        }
+
 
         /*
