From a1de2259131a144e93426ec6dae21a305e733ee4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 16 Mar 2016 20:05:22 +0100 Subject: [PATCH] Revert "nvidia: 358.16 -> 361.28" to fix #13942 This reverts commit e0fe8cf204216beb2485d6f56cde9aa25d56a977. Befor updating we need to fixup problems related to GLVND transition. --- pkgs/os-specific/linux/nvidia-x11/beta.nix | 10 +++++----- pkgs/os-specific/linux/nvidia-x11/builder.sh | 15 +++++---------- pkgs/os-specific/linux/nvidia-x11/default.nix | 6 +++--- 3 files changed, 13 insertions(+), 18 deletions(-) diff --git a/pkgs/os-specific/linux/nvidia-x11/beta.nix b/pkgs/os-specific/linux/nvidia-x11/beta.nix index d53d5e19d40..d3111a4f75a 100644 --- a/pkgs/os-specific/linux/nvidia-x11/beta.nix +++ b/pkgs/os-specific/linux/nvidia-x11/beta.nix @@ -12,7 +12,7 @@ assert (!libsOnly) -> kernel != null; let - versionNumber = "361.18"; + versionNumber = "349.12"; # Policy: use the highest stable version as the default (on our master). inherit (stdenv.lib) makeLibraryPath; @@ -27,13 +27,13 @@ stdenv.mkDerivation { src = if stdenv.system == "i686-linux" then fetchurl { - url = "http://download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; - sha256 = "1n6nrz59r3dgcpkcpr4yw997fygkpsdbv1x45c30w781w0j1q5s5"; + url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; + sha256 = "0x9zfw66nxv98zpkdkymlyqzspksk850bhfmza7g7pba4yba085h"; } 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 = "12fi7vb697h38qh0f2j40q76yx9fqk6vwx20zfxhac3fvdhw2sj0"; + url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run"; + sha256 = "19mfkigzffxsik3h4bsjsl481q410h804fz3rdc7chs86q4bg9h3"; } else throw "nvidia-x11 does not support platform ${stdenv.system}"; diff --git a/pkgs/os-specific/linux/nvidia-x11/builder.sh b/pkgs/os-specific/linux/nvidia-x11/builder.sh index 09c104f09e7..c1f165c45dd 100755 --- a/pkgs/os-specific/linux/nvidia-x11/builder.sh +++ b/pkgs/os-specific/linux/nvidia-x11/builder.sh @@ -19,7 +19,7 @@ buildPhase() { sysSrc=$(echo $kernel/lib/modules/$kernelVersion/source) sysOut=$(echo $kernel/lib/modules/$kernelVersion/build) unset src # used by the nv makefile - make SYSSRC=$sysSrc SYSOUT=$sysOut module "-j${NIX_BUILD_CORES}" "-l${NIX_BUILD_CORES}" + make SYSSRC=$sysSrc SYSOUT=$sysOut module cd .. fi @@ -34,14 +34,6 @@ installPhase() { cp -prd *.so.* tls "$out/lib/" rm "$out"/lib/lib{glx,nvidia-wfb}.so.* # handled separately - # According to nvidia, we're supposed to use GLVND. - # But so far I've failed to make any applications run using that stack. - # - # If you want to try it, swap the two lines below. - - #rm "$out"/lib/libGL.so.${versionNumber} # Non-GLVND - rm $out/lib/libGL.so.1.* # GLVND - if test -z "$libsOnly"; then # Install the X drivers. mkdir -p $out/lib/xorg/modules @@ -69,7 +61,7 @@ installPhase() { libname_short=`echo -n "$libname" | sed 's/so\..*/so/'` # nvidia's EGL stack seems to expect libGLESv2.so.2 to be available - if [ $(basename "$libname_short") == "libGLESv2.so" -a "$libname" != "$libname_short.2" ]; then + if [ $(basename "$libname_short") == "libGLESv2.so" ]; then ln -srnf "$libname" "$libname_short.2" fi @@ -127,6 +119,9 @@ installPhase() { # For simplicity and dependency reduction, don't support the gtk3 interface. rm $out/lib/libnvidia-gtk3.* + # We distribute these separately in `libvdpau` + rm "$out"/lib/libvdpau{.*,_trace.*} + # Move VDPAU libraries to their place mkdir "$out"/lib/vdpau mv "$out"/lib/libvdpau* "$out"/lib/vdpau diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 86abeeaa824..fff1135d311 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -12,7 +12,7 @@ assert (!libsOnly) -> kernel != null; let - versionNumber = "361.28"; + versionNumber = "358.16"; # Policy: use the highest stable version as the default (on our master). inherit (stdenv.lib) makeLibraryPath; @@ -28,12 +28,12 @@ stdenv.mkDerivation { if stdenv.system == "i686-linux" then fetchurl { url = "http://download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; - sha256 = "013l9hfjc7gyk5g2v2h71lwjmx4dqlkczsb17cz833fnadcrn4hs"; + sha256 = "1cc0zsri92nz2mznabfd6pqckm9mlbszmysqqqh3w5mipwn898nk"; } 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 = "1kq335mdmwlgp0lp9z8wrwyh48p2xv2nwdlgfj7b83vsh6ib17a4"; + sha256 = "1xr16faam2zsx8ajwm9g9302m6qjzyjh1zd56g8jhc8jxg8h43sg"; } else throw "nvidia-x11 does not support platform ${stdenv.system}";