diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2014-12-24 00:01:04 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2014-12-24 00:06:46 +0100 |
commit | fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9 (patch) | |
tree | f1911d64f592c2770c7073b4c125f89d4064bf9f /pkgs/os-specific/linux/nvidia-x11/default.nix | |
parent | d5ab3fb887d5ac405ed17afb15d27f1c07fb7b7b (diff) | |
download | nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.tar nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.tar.gz nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.tar.bz2 nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.tar.lz nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.tar.xz nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.tar.zst nixpkgs-fd9d8edc51258a59a9444f7cd32f6ec7b8a8f2a9.zip |
nvidia_x11: add 343 branch as the default (close #5070)
It's just a plain copy of the 340 expressions (only hash and version changed).
Diffstat (limited to 'pkgs/os-specific/linux/nvidia-x11/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/default.nix | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix new file mode 100644 index 00000000000..59b17db7662 --- /dev/null +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -0,0 +1,64 @@ +{ stdenv, fetchurl, kernel ? null, xlibs, zlib, perl +, gtk, atk, pango, glib, gdk_pixbuf +, # Whether to build the libraries only (i.e. not the kernel module or + # nvidia-settings). Used to support 32-bit binaries on 64-bit + # Linux. + libsOnly ? false +}: + +with stdenv.lib; + +assert (!libsOnly) -> kernel != null; + +let + + versionNumber = "343.36"; + /* This branch is needed for G8x, G9x, and GT2xx GPUs, and motherboard chipsets based on them. + Ongoing support for new Linux kernels and X servers, as well as fixes for critical bugs, + will be included in 340.* legacy releases through the end of 2019. + */ + inherit (stdenv.lib) makeLibraryPath; +in + +stdenv.mkDerivation { + name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}"; + + builder = ./builder.sh; + + src = + if stdenv.system == "i686-linux" then + fetchurl { + url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; + sha256 = "17l23dp725883xcyy1n178pcl6lj27psrgbxymc356x2pngwkhcc"; + } + 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 = "0djvh9wmazrfvpgyiqrz81kjk2war20xyjjr2kncxyplzk28mw97"; + } + else throw "nvidia-x11 does not support platform ${stdenv.system}"; + + inherit versionNumber libsOnly; + + kernel = if libsOnly then null else kernel.dev; + + dontStrip = true; + + glPath = makeLibraryPath [xlibs.libXext xlibs.libX11 xlibs.libXrandr]; + cudaPath = makeLibraryPath [zlib stdenv.gcc.gcc]; + openclPath = makeLibraryPath [zlib]; + allLibPath = makeLibraryPath [xlibs.libXext xlibs.libX11 xlibs.libXrandr zlib stdenv.gcc.gcc]; + + programPath = optionalString (!libsOnly) (makeLibraryPath + [ gtk atk pango glib gdk_pixbuf xlibs.libXv ] ); + + buildInputs = [ perl ]; + + meta = with stdenv.lib.meta; { + homepage = http://www.nvidia.com/object/unix.html; + description = "X.org driver and kernel module for NVIDIA graphics cards"; + license = licenses.unfreeRedistributable; + platforms = platforms.linux; + maintainers = [ maintainers.vcunat ]; + }; +} |