Change:
Per , assuming NVIDIA continues with its current compute capability naming scheme, will run into issues with the launch of Blackwell. This is a followup from <!-- Please @ people who are in the list of the offending package or module. If in doubt, check for whoever last touched something. --
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
This issue has been mentioned on NixOS Discourse. There might be relevant details there:

Discussion:
let inherit (lib) lists strings trivial; <del> inherit (cudaPackages) cudatoolkit cudaFlags cudaVersion; </del> <ins> inherit (cudaPackages) backendStdenv cudaFlags cudaVersion; </ins> inherit (magmaRelease) version hash supportedGpuTargets; # NOTE: The lists.subtractLists function is perhaps a bit unintuitive. It subtracts the elements

cudaArchitecturesString = strings.concatStringsSep ";" cudaArchitectures; minArch = let <del> minArch' = builtins.head (builtins.sort builtins.lessThan cudaArchitectures); </del> <ins> minArch' = builtins.head (builtins.sort strings.versionOlder cudaArchitectures); </ins> in <del> # If this fails some day, something must've changed and we should re-validate our assumptions assert builtins.stringLength minArch' == 2; </del> # "75" -> "750"  Cf. https://bitbucket.org/icl/magma/src/f4ec79e2c13a2347eff8a77a3be6f83bc2daec20/CMakeLists.txt#lines-273 "${minArch'}0"; <ins> cuda-common-redist = with cudaPackages; [ libcublas # cublas_v2.h libcusparse # cusparse.h ]; </ins> <del> cuda_joined = symlinkJoin { name = "cuda-redist-${cudaVersion}"; </del> <ins> # Build-time dependencies cuda-native-redist = symlinkJoin { name = "cuda-native-redist-${cudaVersion}"; </ins> paths = with cudaPackages; [ <del> cuda_nvcc </del> cuda_cudart # cuda_runtime.h <del> libcublas libcusparse </del> <ins> cuda_nvcc </ins> ] ++ lists.optionals (strings.versionOlder cudaVersion "11.8") [ cuda_nvprof # <cuda_profiler_api.h> ] ++ lists.optionals (strings.versionAtLeast cudaVersion "11.8") [ cuda_profiler_api # <cuda_profiler_api.h> <del> ]; </del> <ins> ] ++ cuda-common-redist; }; # Run-time dependencies cuda-redist = symlinkJoin { name = "cuda-redist-${cudaVersion}"; paths = cuda-common-redist; </ins> }; in

cmake ninja gfortran <ins> ] ++ lists.optionals cudaSupport [ cuda-native-redist </ins> ]; buildInputs = [

lapack blas ] ++ lists.optionals cudaSupport [ <del> cuda_joined </del> <ins> cuda-redist </ins> ] ++ lists.optionals rocmSupport [ hip hipblas

] ++ lists.optionals cudaSupport [ "-DCMAKE_CUDA_ARCHITECTURES=${cudaArchitecturesString}" "-DMIN_ARCH=${minArch}" # Disarms magma's asserts <del> "-DCMAKE_C_COMPILER=${cudatoolkit.cc}/bin/cc" "-DCMAKE_CXX_COMPILER=${cudatoolkit.cc}/bin/c++" </del> <ins> "-DCMAKE_C_COMPILER=${backendStdenv.cc}/bin/cc" "-DCMAKE_CXX_COMPILER=${backendStdenv.cc}/bin/c++" </ins> "-DMAGMA_ENABLE_CUDA=ON" ] ++ lists.optionals rocmSupport [ "-DCMAKE_C_COMPILER=${hip}/bin/hipcc"

"-DMAGMA_ENABLE_HIP=ON" ]; <del> # NOTE: The stdenv's CXX is used when compiling the CMake test to determine the version of #   CUDA available. This isn't necessarily the same as cudatoolkit.cc, so we must set #   CUDAHOSTCXX. preConfigure = strings.optionalString cudaSupport '' export CUDAHOSTCXX=${cudatoolkit.cc}/bin/c++ ''; </del> buildFlags = [ "magma" "magma_sparse"

license = licenses.bsd3; homepage = "http://icl.cs.utk.edu/magma/index.html"; platforms = platforms.unix; <del> maintainers = with maintainers; [ tbenst ]; </del> <ins> maintainers = with maintainers; [ connorbaker ]; </ins> # CUDA and ROCm are mutually exclusive broken = cudaSupport && rocmSupport || cudaSupport && strings.versionOlder cudaVersion "9"; };