summary refs log tree commit diff
path: root/pkgs/applications/virtualization
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2013-03-02 10:41:53 +0100
committerVladimír Čunát <vcunat@gmail.com>2013-03-02 10:41:53 +0100
commit26af997d41444e71074c41e82c2eb869b33758f1 (patch)
treeeb4f7fcc4a71a18c85452c927dedc9d9744ad21f /pkgs/applications/virtualization
parent97b24ed95acdd7ad4d7e94b94c0a6eaf3d5fa92a (diff)
parenta920c50cfbe849c9062de81bde050b5672e4e42c (diff)
downloadnixlib-26af997d41444e71074c41e82c2eb869b33758f1.tar
nixlib-26af997d41444e71074c41e82c2eb869b33758f1.tar.gz
nixlib-26af997d41444e71074c41e82c2eb869b33758f1.tar.bz2
nixlib-26af997d41444e71074c41e82c2eb869b33758f1.tar.lz
nixlib-26af997d41444e71074c41e82c2eb869b33758f1.tar.xz
nixlib-26af997d41444e71074c41e82c2eb869b33758f1.tar.zst
nixlib-26af997d41444e71074c41e82c2eb869b33758f1.zip
Merge branch 'master' into stdenv-updates
Conflicts (simple):
	pkgs/applications/networking/browsers/chromium/default.nix
	pkgs/development/libraries/libsoup/default.nix
	pkgs/os-specific/linux/kernel/manual-config.nix
	pkgs/os-specific/linux/qemu-kvm/default.nix
Diffstat (limited to 'pkgs/applications/virtualization')
-rw-r--r--pkgs/applications/virtualization/virtualbox/build_fix_3.9.0.patch22
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix13
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/strict_types.patch68
4 files changed, 101 insertions, 6 deletions
diff --git a/pkgs/applications/virtualization/virtualbox/build_fix_3.9.0.patch b/pkgs/applications/virtualization/virtualbox/build_fix_3.9.0.patch
new file mode 100644
index 000000000000..2c3cdebacde8
--- /dev/null
+++ b/pkgs/applications/virtualization/virtualbox/build_fix_3.9.0.patch
@@ -0,0 +1,22 @@
+commit d725168153e3dc5a383b12e0bf9af9b6244ad3eb
+Author: vboxsync <vboxsync@cfe28804-0f27-0410-a406-dd0f0b0b656f>
+Date:   Thu Feb 28 13:46:12 2013 +0000
+
+    Linux 3.9.0 rc0 compile fix
+
+    git-svn-id: http://www.virtualbox.org/svn/vbox/trunk@44867 cfe28804-0f27-0410-a406-dd0f0b0b656f
+
+diff --git a/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h b/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
+index ec9b502..7a208d1 100644
+--- a/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
++++ b/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
+@@ -90,6 +90,9 @@
+ #include <linux/slab.h>
+ #include <linux/time.h>
+ #include <linux/sched.h>
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 9, 0)
++# include <linux/sched/rt.h>
++#endif
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 7)
+ # include <linux/jiffies.h>
+ #endif
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index ea98d1ce7a9d..bf19ecd99ca0 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -11,8 +11,8 @@ with stdenv.lib;
 
 let
 
-  version = "4.2.6";
-  extpackRevision = "82870";
+  version = "4.2.8";
+  extpackRevision = "83876";
 
   forEachModule = action: ''
     for mod in \
@@ -35,7 +35,7 @@ let
     name = "Oracle_VM_VirtualBox_Extension_Pack-${version}-${extpackRevision}"
          + ".vbox-extpack";
     # Has to be base16 because it's used as an input to VBoxExtPackHelperApp!
-    sha256 = "f0113688a76efa0426c27c5541c78506b18637025c35aa682ecc6eeed5d56582";
+    sha256 = "fa579416f382b58c4e93d3740d076ceba728e28d987e51aced5865a46cb9111c";
     url = "https://www.virtualbox.org/wiki/Downloads";
   };
 
@@ -44,7 +44,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
-    sha256 = "54526091bc2aa66b88ca878dd9ecc4466f96d607db2f6678a9d673ecf6646ae3";
+    sha256 = "f336af12244db74e6564dc22e438bbcba70f994aaf0d117fdf70caca9fab1b78";
   };
 
   buildInputs =
@@ -54,6 +54,11 @@ in stdenv.mkDerivation {
     ++ optional javaBindings jdk
     ++ optional pythonBindings python;
 
+  patches = [
+    ./strict_types.patch
+    ./build_fix_3.9.0.patch
+  ];
+
   prePatch = ''
     set -x
     MODULES_BUILD_DIR=`echo ${kernel}/lib/modules/*/build`
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index 7a79a73c6b95..f648cb3c7377 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -2,14 +2,14 @@
 , libX11, libXt, libXext, libXmu, libXcomposite, libXfixes, libXrandr, libXcursor
 , dbus }:
 
-let version = "4.2.6"; in
+let version = "4.2.8"; in
 
 stdenv.mkDerivation {
   name = "VirtualBox-GuestAdditions-${version}-${kernel.version}";
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "1lry4hjjk8p69km1bi3mpmyarlnxz9izs2c0s8pq5rjzv1bd7bxr";
+    sha256 = "04a5402d8dcdefc83ffb2785351ddc57758781a3759137974469189392ae4ad5";
   };
 
   KERN_DIR = "${kernel}/lib/modules/*/build";
diff --git a/pkgs/applications/virtualization/virtualbox/strict_types.patch b/pkgs/applications/virtualization/virtualbox/strict_types.patch
new file mode 100644
index 000000000000..18ccc77f9b16
--- /dev/null
+++ b/pkgs/applications/virtualization/virtualbox/strict_types.patch
@@ -0,0 +1,68 @@
+diff --git a/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c b/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
+index 9cc124c..d86da0c 100644
+--- a/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
++++ b/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
+@@ -253,7 +253,11 @@ static struct platform_device gPlatformDevice =
+ DECLINLINE(RTUID) vboxdrvLinuxUid(void)
+ {
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
++# ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
++    return from_kuid(current_user_ns(), current_uid());
++# else
+     return current->cred->uid;
++# endif
+ #else
+     return current->uid;
+ #endif
+@@ -262,7 +266,11 @@ DECLINLINE(RTUID) vboxdrvLinuxUid(void)
+ DECLINLINE(RTGID) vboxdrvLinuxGid(void)
+ {
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
++# ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
++    return from_kgid(current_user_ns(), current_gid());
++# else
+     return current->cred->gid;
++# endif
+ #else
+     return current->gid;
+ #endif
+@@ -271,7 +279,11 @@ DECLINLINE(RTGID) vboxdrvLinuxGid(void)
+ DECLINLINE(RTUID) vboxdrvLinuxEuid(void)
+ {
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
++# ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
++    return from_kuid(current_user_ns(), current_euid());
++# else
+     return current->cred->euid;
++# endif
+ #else
+     return current->euid;
+ #endif
+diff --git a/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c b/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
+index 575f739..8909e79 100644
+--- a/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
++++ b/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
+@@ -429,7 +429,11 @@ int vboxPciOsDevDetachHostDriver(PVBOXRAWPCIINS pIns)
+         if (!pNewCreds)
+                 goto done;
+ 
++# ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
++        pNewCreds->fsuid = GLOBAL_ROOT_UID;;
++# else
+         pNewCreds->fsuid = 0;
++# endif
+         pOldCreds = override_creds(pNewCreds);
+ #endif
+ 
+@@ -539,7 +543,11 @@ int vboxPciOsDevReattachHostDriver(PVBOXRAWPCIINS pIns)
+         if (!pNewCreds)
+             goto done;
+ 
++# ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
++        pNewCreds->fsuid = GLOBAL_ROOT_UID;;
++# else
+         pNewCreds->fsuid = 0;
++# endif
+         pOldCreds = override_creds(pNewCreds);
+ #endif
+         RTStrPrintf(szFileBuf, cMaxBuf,