From 21e1c48d7783cea836c9d290a1ec15e94840dd18 Mon Sep 17 00:00:00 2001 From: "graham33-agent[bot]" <266393394+graham33-agent[bot]@users.noreply.github.com> Date: Thu, 30 Jul 2026 08:48:16 +0100 Subject: [PATCH] usb-configuration-base: disable CUDA in onnxruntime The dgx-spark module sets nixpkgs.config.cudaSupport = true globally, so the USB image builds Firefox's onnxruntime dependency (via its optional ML features) with CUDA. That pulls in cudnn-frontend, which fails to build on this nixpkgs pin: FindCUDAToolkit gets a mangled CUDAToolkit_ROOT and cannot find nvcc (aarch64 / CMake 4.3 bug). Firefox is the only consumer of onnxruntime in the image closure, so disable CUDA there to sidestep the broken toolchain path. This mirrors the spark host's existing local overlay for the same bug. Co-Authored-By: Claude Fable 5 --- usb-configuration-base.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/usb-configuration-base.nix b/usb-configuration-base.nix index 567f89b..206b9a7 100644 --- a/usb-configuration-base.nix +++ b/usb-configuration-base.nix @@ -44,6 +44,17 @@ efiInstallAsRemovable = true; }; + # onnxruntime (pulled in by Firefox's optional ML features) drags in + # cudnn-frontend and other CUDA-only packages that hit a + # FindCUDAToolkit-can't-find-nvcc bug on aarch64 / CMake 4.3. Firefox is + # the only consumer in this image, so disable CUDA in onnxruntime to + # sidestep the whole toolchain path. + nixpkgs.overlays = [ + (final: prev: { + onnxruntime = prev.onnxruntime.override { cudaSupport = false; }; + }) + ]; + # File systems configuration handled automatically by ISO image # Networking