diff options
author | Alyssa Ross <hi@alyssa.is> | 2024-01-20 12:31:50 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2024-01-20 12:32:25 +0100 |
commit | b7baf40e099b4215181fe7b0c63083b12ef2c7fb (patch) | |
tree | a6efabd31d05b6d0a36624729e80377bbbfb0149 /nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix | |
parent | 710028664e26e85cb831a869b3da9f6993902255 (diff) | |
parent | 0799f514b1cd74878174939df79ac60ca5036673 (diff) | |
download | nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.gz nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.bz2 nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.lz nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.xz nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.tar.zst nixlib-b7baf40e099b4215181fe7b0c63083b12ef2c7fb.zip |
Merge branch 'nixos-unstable-small' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix
Diffstat (limited to 'nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix b/nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix index a174c3031227..7d0ecfab53e7 100644 --- a/nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix +++ b/nixpkgs/pkgs/applications/virtualization/nvidia-container-toolkit/default.nix @@ -5,10 +5,16 @@ , buildGoModule , linkFarm , writeShellScript +, formats , containerRuntimePath , configTemplate +, configTemplatePath ? null , libnvidia-container }: + +assert configTemplate != null -> (lib.isAttrs configTemplate && configTemplatePath == null); +assert configTemplatePath != null -> (lib.isStringLike configTemplatePath && configTemplate == null); + let isolatedContainerRuntimePath = linkFarm "isolated_container_runtime_path" [ { @@ -23,6 +29,8 @@ let echo >&2 "$(tput setaf 3)warning: \$XDG_CONFIG_HOME=$XDG_CONFIG_HOME$(tput sgr 0)" fi ''; + + configToml = if configTemplatePath != null then configTemplatePath else (formats.toml { }).generate "config.toml" configTemplate; in buildGoModule rec { pname = "container-toolkit/container-toolkit"; @@ -47,6 +55,14 @@ buildGoModule rec { nativeBuildInputs = [ makeWrapper ]; + preConfigure = '' + # Ensure the runc symlink isn't broken: + if ! readlink --quiet --canonicalize-existing "${isolatedContainerRuntimePath}/runc" ; then + echo "${isolatedContainerRuntimePath}/runc: broken symlink" >&2 + exit 1 + fi + ''; + checkFlags = let skippedTests = [ @@ -74,7 +90,7 @@ buildGoModule rec { --prefix PATH : ${isolatedContainerRuntimePath}:${libnvidia-container}/bin \ --set-default XDG_CONFIG_HOME $out/etc - cp ${configTemplate} $out/etc/nvidia-container-runtime/config.toml + cp ${configToml} $out/etc/nvidia-container-runtime/config.toml substituteInPlace $out/etc/nvidia-container-runtime/config.toml \ --subst-var-by glibcbin ${lib.getBin glibc} |