Merge pull request #186834 from Kiskae/nvidia-branches

nvidia_x11: reorganize latest versions
This commit is contained in:
superherointj 2022-08-18 07:22:44 -03:00 committed by GitHub
commit b01f02f96c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 35 additions and 19 deletions

View file

@ -12,30 +12,40 @@ let
kernel = callPackage # a hacky way of extracting parameters from callPackage kernel = callPackage # a hacky way of extracting parameters from callPackage
({ kernel, libsOnly ? false }: if libsOnly then { } else kernel) { }; ({ kernel, libsOnly ? false }: if libsOnly then { } else kernel) { };
selectHighestVersion = a: b: if lib.versionOlder a.version b.version
then b
else a;
in in
rec { rec {
# Official Unix Drivers - https://www.nvidia.com/en-us/drivers/unix/
# Branch/Maturity data - http://people.freedesktop.org/~aplattner/nvidia-versions.txt
# Policy: use the highest stable version as the default (on our master). # Policy: use the highest stable version as the default (on our master).
stable = if stdenv.hostPlatform.system == "x86_64-linux" stable = if stdenv.hostPlatform.system == "i686-linux" then legacy_390 else latest;
then generic {
version = "515.65.01";
sha256_64bit = "sha256-BJLdxbXmWqAMvHYujWaAIFyNCOEDtxMQh6FRJq7klek=";
openSha256 = "sha256-GCCDnaDsbXTmbCYZBCM3fpHmOSWti/DkBJwYrRGAMPI=";
settingsSha256 = "sha256-kBELMJCIWD9peZba14wfCoxsi3UXO3ehFYcVh4nvzVg=";
persistencedSha256 = "sha256-P8oT7g944HvNk2Ot/0T0sJM7dZs+e0d+KwbwRrmsuDY=";
}
else legacy_390;
# see https://www.nvidia.com/en-us/drivers/unix/ "Production branch" production = generic {
production = stable; version = "515.65.01";
sha256_64bit = "sha256-BJLdxbXmWqAMvHYujWaAIFyNCOEDtxMQh6FRJq7klek=";
openSha256 = "sha256-GCCDnaDsbXTmbCYZBCM3fpHmOSWti/DkBJwYrRGAMPI=";
settingsSha256 = "sha256-kBELMJCIWD9peZba14wfCoxsi3UXO3ehFYcVh4nvzVg=";
persistencedSha256 = "sha256-P8oT7g944HvNk2Ot/0T0sJM7dZs+e0d+KwbwRrmsuDY=";
};
beta = generic { latest = selectHighestVersion production (generic {
version = "495.46";
sha256_64bit = "2Dt30X2gxUZnqlsT1uqVpcUTBCV7Hs8vjUo7WuMcYvU=";
settingsSha256 = "vbcZYn+UBBGwjfrJ6SyXt3+JLBeNcXK4h8mjj7qxZPk=";
persistencedSha256 = "ieYqkVxe26cLw1LUgBsFSSowAyfZkTcItIzQCestCXI=";
});
beta = selectHighestVersion latest (generic {
version = "515.43.04"; version = "515.43.04";
sha256_64bit = "sha256-PodaTTUOSyMW8rtdtabIkSLskgzAymQyfToNlwxPPcc="; sha256_64bit = "sha256-PodaTTUOSyMW8rtdtabIkSLskgzAymQyfToNlwxPPcc=";
openSha256 = "sha256-1bAr5dWZ4jnY3Uo2JaEz/rhw2HuW9LZ5bACmA1VG068="; openSha256 = "sha256-1bAr5dWZ4jnY3Uo2JaEz/rhw2HuW9LZ5bACmA1VG068=";
settingsSha256 = "sha256-j47LtP6FNTPfiXFh9KwXX8vZOQzlytA30ZfW9N5F2PY="; settingsSha256 = "sha256-j47LtP6FNTPfiXFh9KwXX8vZOQzlytA30ZfW9N5F2PY=";
persistencedSha256 = "sha256-hULBy0wnVpLH8I0L6O9/HfgvJURtE2whpXOgN/vb3Wo="; persistencedSha256 = "sha256-hULBy0wnVpLH8I0L6O9/HfgvJURtE2whpXOgN/vb3Wo=";
broken = kernel.kernelAtLeast "5.19"; # Added at 2022-08-12 });
};
# Vulkan developer beta driver # Vulkan developer beta driver
# See here for more information: https://developer.nvidia.com/vulkan-driver # See here for more information: https://developer.nvidia.com/vulkan-driver

View file

@ -103,7 +103,10 @@ let
disallowedReferences = optional (!libsOnly) [ kernel.dev ]; disallowedReferences = optional (!libsOnly) [ kernel.dev ];
passthru = { passthru = {
open = mapNullable (hash: callPackage (import ./open.nix self hash) { }) openSha256; open = mapNullable (hash: callPackage ./open.nix {
inherit hash broken;
nvidia_x11 = self;
}) openSha256;
settings = (if settings32Bit then pkgsi686Linux.callPackage else callPackage) (import ./settings.nix self settingsSha256) { settings = (if settings32Bit then pkgsi686Linux.callPackage else callPackage) (import ./settings.nix self settingsSha256) {
withGtk2 = preferGtk2; withGtk2 = preferGtk2;
withGtk3 = !preferGtk2; withGtk3 = !preferGtk2;

View file

@ -1,8 +1,10 @@
nvidia_x11: hash:
{ stdenv { stdenv
, lib , lib
, fetchFromGitHub , fetchFromGitHub
, kernel , kernel
, nvidia_x11
, hash
, broken ? false
}: }:
stdenv.mkDerivation { stdenv.mkDerivation {
@ -32,7 +34,7 @@ stdenv.mkDerivation {
homepage = "https://github.com/NVIDIA/open-gpu-kernel-modules"; homepage = "https://github.com/NVIDIA/open-gpu-kernel-modules";
license = with licenses; [ gpl2Plus mit ]; license = with licenses; [ gpl2Plus mit ];
platforms = platforms.linux; platforms = platforms.linux;
broken = kernel.kernelAtLeast "5.19";
maintainers = with maintainers; [ nickcao ]; maintainers = with maintainers; [ nickcao ];
inherit broken;
}; };
} }

View file

@ -356,12 +356,13 @@ in {
nvidiaPackages = dontRecurseIntoAttrs (lib.makeExtensible (_: callPackage ../os-specific/linux/nvidia-x11 { })); nvidiaPackages = dontRecurseIntoAttrs (lib.makeExtensible (_: callPackage ../os-specific/linux/nvidia-x11 { }));
nvidia_x11 = nvidiaPackages.stable;
nvidia_x11_beta = nvidiaPackages.beta;
nvidia_x11_legacy340 = nvidiaPackages.legacy_340; nvidia_x11_legacy340 = nvidiaPackages.legacy_340;
nvidia_x11_legacy390 = nvidiaPackages.legacy_390; nvidia_x11_legacy390 = nvidiaPackages.legacy_390;
nvidia_x11_legacy470 = nvidiaPackages.legacy_470; nvidia_x11_legacy470 = nvidiaPackages.legacy_470;
nvidia_x11_beta = nvidiaPackages.beta; nvidia_x11_production = nvidiaPackages.production;
nvidia_x11_vulkan_beta = nvidiaPackages.vulkan_beta; nvidia_x11_vulkan_beta = nvidiaPackages.vulkan_beta;
nvidia_x11 = nvidiaPackages.stable;
# this is not a replacement for nvidia_x11 # this is not a replacement for nvidia_x11
# only the opensource kernel driver exposed for hydra to build # only the opensource kernel driver exposed for hydra to build