From 9fd753ea84e5035b357a275324e7fd7ccfb1fc77 Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Thu, 26 Dec 2024 15:46:57 +0000 Subject: [PATCH] cuda-modules: fix `sort` predicate stability Incorrect sorting predicate was found as part of https://github.com/NixOS/nix/issues/12106 where `nix` was crashing on the code like: $ nix eval --expr 'builtins.sort (a: b: true) [ 1 2 3 ]' ... Aborted (core dumped) Note: the crash happens here because sorting predicate does not implement `isLess` and triggers assertion failures for `std::stable_sort` that backs `builtins.sort`. THe change restore `isLess` semantic for `preferable`. --- pkgs/development/cuda-modules/generic-builders/multiplex.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/cuda-modules/generic-builders/multiplex.nix b/pkgs/development/cuda-modules/generic-builders/multiplex.nix index ce50653bb5d4..15dd0c938f62 100644 --- a/pkgs/development/cuda-modules/generic-builders/multiplex.nix +++ b/pkgs/development/cuda-modules/generic-builders/multiplex.nix @@ -81,7 +81,7 @@ let redistArch = flags.getRedistArch hostPlatform.system; preferable = - p1: p2: (isSupported p2 -> isSupported p1) && (strings.versionAtLeast p1.version p2.version); + p1: p2: (isSupported p2 -> isSupported p1) && (strings.versionOlder p2.version p1.version); # All the supported packages we can build for our platform. # perSystemReleases :: List Package