From 4eb932ff77a0621299ce824fe471ee19ae9cc026 Mon Sep 17 00:00:00 2001 From: Jared Baur Date: Thu, 26 Sep 2024 11:17:43 -0700 Subject: [PATCH] Support new nvidia-ctk option When checking to see if we should generate the CDI support files, we should also check for the new `hardware.nvidia-container-toolkit.enable` option, since the `enableNvidia` options were deprecated. --- modules/default.nix | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/modules/default.nix b/modules/default.nix index ad161b54..04964883 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -25,9 +25,8 @@ let paths = cfg.firmware.optee.supplicant.plugins; }; - nvidiaContainerRuntimeActive = - with config.virtualisation; - (docker.enable && docker.enableNvidia) || (podman.enable && podman.enableNvidia); + nvidiaDockerActive = with config.virtualisation; docker.enable && (docker.enableNvidia || config.hardware.nvidia-container-toolkit.enable); + nvidiaPodmanActive = with config.virtualisation; podman.enable && (podman.enableNvidia || config.hardware.nvidia-container-toolkit.enable); in { imports = [ @@ -147,9 +146,7 @@ in ''; } { - assertion = - (config.virtualisation.docker.enable && config.virtualisation.docker.enableNvidia) - -> lib.versionAtLeast config.virtualisation.docker.package.version "25"; + assertion = nvidiaDockerActive -> lib.versionAtLeast config.virtualisation.docker.package.version "25"; message = "Docker version < 25 does not support CDI"; } ]; @@ -330,7 +327,7 @@ in ]; systemd.services.nvidia-cdi-generate = { - enable = nvidiaContainerRuntimeActive; + enable = nvidiaDockerActive || nvidiaPodmanActive; serviceConfig = { Type = "oneshot"; RemainAfterExit = true;