Unverified Commit ba99ba8e authored by Sarah Brofeldt's avatar Sarah Brofeldt Committed by GitHub
Browse files

Merge pull request #327914 from 0z13/nvidia-container-toolkit-device-name

nixos/nvidia-container-toolkit: add device-name-strategy option
parents bc17b383 42e7fd46
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
{
  deviceNameStrategy,
  glibc,
  jq,
  lib,
@@ -25,6 +26,7 @@ writeScriptBin "nvidia-cdi-generator"
function cdiGenerate {
  ${lib.getExe' nvidia-container-toolkit "nvidia-ctk"} cdi generate \
    --format json \
    --device-name-strategy ${deviceNameStrategy} \
    --ldconfig-path ${lib.getExe' glibc "ldconfig"} \
    --library-search-path ${lib.getLib nvidia-driver}/lib \
    --nvidia-ctk-path ${lib.getExe' nvidia-container-toolkit "nvidia-ctk"}
+12 −0
Original line number Diff line number Diff line
@@ -52,6 +52,17 @@
        '';
      };

      device-name-strategy = lib.mkOption {
        default = "index";
        type = lib.types.enum [ "index" "uuid" "type-index" ];
        description = ''
          Specify the strategy for generating device names,
          passed to `nvidia-ctk cdi generate`. This will affect how
          you reference the device using `nvidia.com/gpu=` in
          the container runtime.
        '';
      };

      mount-nvidia-docker-1-directories = lib.mkOption {
        default = true;
        type = lib.types.bool;
@@ -119,6 +130,7 @@
            script = pkgs.callPackage ./cdi-generate.nix {
              inherit (config.hardware.nvidia-container-toolkit) mounts;
              nvidia-driver = config.hardware.nvidia.package;
              deviceNameStrategy = config.hardware.nvidia-container-toolkit.device-name-strategy;
            };
          in
          lib.getExe script;