diff options
author | Dmitry Kalinkin <dmitry.kalinkin@gmail.com> | 2021-01-30 22:08:37 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-30 22:08:37 -0500 |
commit | 161b9b24365cff3c94f1c2d3eb5a5e13c722d04a (patch) | |
tree | 90632275e31c06dd389ab990795a64fca178504b /pkgs/os-specific/linux/nvidia-x11 | |
parent | 638e784bda77159138c7057d426cf8a0870da98f (diff) | |
parent | 450cb04f16cc2214c2a298fe26bb4c306cf84fb3 (diff) | |
download | nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.tar nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.tar.gz nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.tar.bz2 nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.tar.lz nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.tar.xz nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.tar.zst nixpkgs-161b9b24365cff3c94f1c2d3eb5a5e13c722d04a.zip |
Merge pull request #99323 from eadwu/nvidia/hardware.nvidia.package
nixos: hardware.nvidia.package option for selecting nvidia package
Diffstat (limited to 'pkgs/os-specific/linux/nvidia-x11')
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/default.nix | 16 | ||||
-rw-r--r-- | pkgs/os-specific/linux/nvidia-x11/generic.nix | 4 |
2 files changed, 15 insertions, 5 deletions
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index 50b724870d8..73799a421ff 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -1,11 +1,17 @@ -{ lib, callPackage, fetchpatch, fetchurl, stdenv }: +{ lib, callPackage, fetchpatch, fetchurl, stdenv, pkgsi686Linux }: let - -generic = args: -if ((!lib.versionOlder args.version "391") + generic = args: let + imported = import ./generic.nix args; + in if ((!lib.versionOlder args.version "391") && stdenv.hostPlatform.system != "x86_64-linux") then null - else callPackage (import ./generic.nix args) { }; + else callPackage imported { + lib32 = (pkgsi686Linux.callPackage imported { + libsOnly = true; + kernel = null; + }).out; + }; + kernel = callPackage # a hacky way of extracting parameters from callPackage ({ kernel, libsOnly ? false }: if libsOnly then { } else kernel) { }; diff --git a/pkgs/os-specific/linux/nvidia-x11/generic.nix b/pkgs/os-specific/linux/nvidia-x11/generic.nix index 2543da74ca6..75453d955ad 100644 --- a/pkgs/os-specific/linux/nvidia-x11/generic.nix +++ b/pkgs/os-specific/linux/nvidia-x11/generic.nix @@ -25,6 +25,8 @@ , # don't include the bundled 32-bit libraries on 64-bit platforms, # even if it’s in downloaded binary disable32Bit ? false + # 32 bit libs only version of this package +, lib32 ? null }: with lib; @@ -93,6 +95,8 @@ let }; persistenced = mapNullable (hash: callPackage (import ./persistenced.nix self hash) { }) persistencedSha256; inherit persistencedVersion settingsVersion; + } // optionalAttrs (!i686bundled) { + inherit lib32; }; meta = with lib; { |