diff --git a/pkgs/os-specific/linux/nvidia-x11/365.35-kernel-4.7.patch b/pkgs/os-specific/linux/nvidia-x11/365.35-kernel-4.7.patch deleted file mode 100644 index 8d1436c5094..00000000000 --- a/pkgs/os-specific/linux/nvidia-x11/365.35-kernel-4.7.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -Naur NVIDIA-Linux-x86_64-367.35-no-compat32-upstream/kernel/nvidia-drm/nvidia-drm-fb.c NVIDIA-Linux-x86_64-367.35-no-compat32/kernel/nvidia-drm/nvidia-drm-fb.c ---- NVIDIA-Linux-x86_64-367.35-no-compat32-upstream/kernel/nvidia-drm/nvidia-drm-fb.c 2016-07-31 19:07:06.595038290 -0400 -+++ NVIDIA-Linux-x86_64-367.35-no-compat32/kernel/nvidia-drm/nvidia-drm-fb.c 2016-07-31 19:09:18.532197060 -0400 -@@ -114,7 +114,7 @@ - * We don't support any planar format, pick up first buffer only. - */ - -- gem = drm_gem_object_lookup(dev, file, cmd->handles[0]); -+ gem = drm_gem_object_lookup(file, cmd->handles[0]); - - if (gem == NULL) - { -diff -Naur NVIDIA-Linux-x86_64-367.35-no-compat32-upstream/kernel/nvidia-drm/nvidia-drm-gem.c NVIDIA-Linux-x86_64-367.35-no-compat32/kernel/nvidia-drm/nvidia-drm-gem.c ---- NVIDIA-Linux-x86_64-367.35-no-compat32-upstream/kernel/nvidia-drm/nvidia-drm-gem.c 2016-07-31 19:07:06.595038290 -0400 -+++ NVIDIA-Linux-x86_64-367.35-no-compat32/kernel/nvidia-drm/nvidia-drm-gem.c 2016-07-31 19:08:56.187492736 -0400 -@@ -408,7 +408,7 @@ - - mutex_lock(&dev->struct_mutex); - -- gem = drm_gem_object_lookup(dev, file, handle); -+ gem = drm_gem_object_lookup(file, handle); - - if (gem == NULL) - { -diff -Naur NVIDIA-Linux-x86_64-367.35-no-compat32-upstream/kernel/nvidia-uvm/uvm_linux.h NVIDIA-Linux-x86_64-367.35-no-compat32/kernel/nvidia-uvm/uvm_linux.h ---- NVIDIA-Linux-x86_64-367.35-no-compat32-upstream/kernel/nvidia-uvm/uvm_linux.h 2016-07-31 19:07:06.600038448 -0400 -+++ NVIDIA-Linux-x86_64-367.35-no-compat32/kernel/nvidia-uvm/uvm_linux.h 2016-07-31 19:08:06.506926763 -0400 -@@ -554,12 +554,6 @@ - INIT_RADIX_TREE(tree, GFP_NOWAIT); - } - --static bool radix_tree_empty(struct radix_tree_root *tree) --{ -- void *dummy; -- return radix_tree_gang_lookup(tree, &dummy, 0, 1) == 0; --} -- - - #if !defined(NV_USLEEP_RANGE_PRESENT) - static void __sched usleep_range(unsigned long min, unsigned long max) diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index e7297b0efe2..ae05e583061 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -12,28 +12,30 @@ assert (!libsOnly) -> kernel != null; let - versionNumber = "367.35"; + versionNumber = "367.57"; # Policy: use the highest stable version as the default (on our master). inherit (stdenv.lib) makeLibraryPath; + nameSuffix = optionalString (!libsOnly) "-${kernel.version}"; + in stdenv.mkDerivation { - name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}"; + name = "nvidia-x11-${versionNumber}${nameSuffix}"; builder = ./builder.sh; src = if stdenv.system == "i686-linux" then fetchurl { - url = "http://download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; - sha256 = "05g36bxcfk21ab8b0ay3zy21k5nd71468p9y1nbflx7ghpx25jrq"; + url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; + sha256 = "1fw87nvbf8dmy7clwmm7jwp842c78mkz9bcb060wbihsywkfkm23"; } else if stdenv.system == "x86_64-linux" then fetchurl { - url = "http://download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run"; - sha256 = "0m4k8f0212l63h22wk6hgi8fbfsgxqih5mizsw4ixqqmjd75av4a"; + url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}.run"; + sha256 = "0lc87bgr29l9idhy2a4bsplkwx9r0dz9kjhcc5xq2xqkkyr5sqd1"; } else throw "nvidia-x11 does not support platform ${stdenv.system}"; @@ -55,7 +57,7 @@ stdenv.mkDerivation { [ gtk2 atk pango glib gdk_pixbuf cairo ] ); programPath = makeLibraryPath [ xorg.libXv ]; - patches = if (!libsOnly) && (versionAtLeast kernel.dev.version "4.7") then [ ./365.35-kernel-4.7.patch ] else []; + buildInputs = [ perl nukeReferences ];