From e0fe8cf204216beb2485d6f56cde9aa25d56a977 Mon Sep 17 00:00:00 2001 From: Svein Ove Aas Date: Sun, 31 Jan 2016 13:06:14 +0000 Subject: nvidia: major update 358.16 -> 361.28 Beta also gets updated, but even upstream it's older than stable. vcunat generalized parallel make. Close #12719. --- 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, 18 insertions(+), 13 deletions(-) (limited to 'pkgs/os-specific/linux') diff --git a/pkgs/os-specific/linux/nvidia-x11/beta.nix b/pkgs/os-specific/linux/nvidia-x11/beta.nix index d3111a4f75a1..d53d5e19d400 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 = "349.12"; + versionNumber = "361.18"; # 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://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; - sha256 = "0x9zfw66nxv98zpkdkymlyqzspksk850bhfmza7g7pba4yba085h"; + url = "http://download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; + sha256 = "1n6nrz59r3dgcpkcpr4yw997fygkpsdbv1x45c30w781w0j1q5s5"; } else if stdenv.system == "x86_64-linux" then fetchurl { - url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run"; - sha256 = "19mfkigzffxsik3h4bsjsl481q410h804fz3rdc7chs86q4bg9h3"; + url = "http://download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run"; + sha256 = "12fi7vb697h38qh0f2j40q76yx9fqk6vwx20zfxhac3fvdhw2sj0"; } 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 c1f165c45dd5..09c104f09e73 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 + make SYSSRC=$sysSrc SYSOUT=$sysOut module "-j${NIX_BUILD_CORES}" "-l${NIX_BUILD_CORES}" cd .. fi @@ -34,6 +34,14 @@ 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 @@ -61,7 +69,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" ]; then + if [ $(basename "$libname_short") == "libGLESv2.so" -a "$libname" != "$libname_short.2" ]; then ln -srnf "$libname" "$libname_short.2" fi @@ -119,9 +127,6 @@ 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 fff1135d3118..86abeeaa8242 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 = "358.16"; + versionNumber = "361.28"; # 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 = "1cc0zsri92nz2mznabfd6pqckm9mlbszmysqqqh3w5mipwn898nk"; + sha256 = "013l9hfjc7gyk5g2v2h71lwjmx4dqlkczsb17cz833fnadcrn4hs"; } 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 = "1xr16faam2zsx8ajwm9g9302m6qjzyjh1zd56g8jhc8jxg8h43sg"; + sha256 = "1kq335mdmwlgp0lp9z8wrwyh48p2xv2nwdlgfj7b83vsh6ib17a4"; } else throw "nvidia-x11 does not support platform ${stdenv.system}"; -- cgit 1.4.1