summary refs log tree commit diff
path: root/pkgs/os-specific/linux/nvidia-x11/generic.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/nvidia-x11/generic.nix')
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/generic.nix14
1 files changed, 13 insertions, 1 deletions
diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix
index e4e67a6abfd..44a96f9bc0d 100644
--- a/pkgs/os-specific/linux/nvidia-x11/generic.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix
@@ -43,8 +43,20 @@ let
       else throw "nvidia-x11 does not support platform ${stdenv.system}";
 
     # patch to get the nvidia and nvidiaBeta driver to compile on kernel 4.10
-    patches = if libsOnly || versionOlder version "375"
+    patches = if libsOnly
               then null
+              else if versionOlder version "340"
+              then null
+              else if versionOlder version "375"
+              then [
+                     (fetchurl {
+                         url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/4.10.0_kernel.patch?h=packages/nvidia-340xx;
+                         sha256 = "08k2phr9kawg6a3v88d4zkj7gdlih29gm5a1gmhpgmvd926k0z5l";
+                     })
+                         # from https://git.archlinux.org/svntogit/packages.git/plain/trunk/fs52243.patch?h=packages/nvidia-340xx
+                         # with datestamps removed
+                     ./fs52243.patch
+                   ]
               else [ (fetchurl {
                       url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/kernel_4.10.patch?h=packages/nvidia;  sha256 = "0zhpx3baq2pca2pmz1af5cp2nzjxjx0j9w5xrdy204mnv3v2708z";
                      }) ];