diff options
Diffstat (limited to 'pkgs/applications/virtualization/cri-o/wrapper.nix')
-rw-r--r-- | pkgs/applications/virtualization/cri-o/wrapper.nix | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/pkgs/applications/virtualization/cri-o/wrapper.nix b/pkgs/applications/virtualization/cri-o/wrapper.nix new file mode 100644 index 0000000000000..1578eaf4f585c --- /dev/null +++ b/pkgs/applications/virtualization/cri-o/wrapper.nix @@ -0,0 +1,53 @@ +{ cri-o-unwrapped +, runCommand +, makeWrapper +, lib +, extraPackages ? [] +, cri-o +, runc # Default container runtime +, crun # Container runtime (default with cgroups v2 for podman/buildah) +, conmon # Container runtime monitor +, utillinux # nsenter +, cni-plugins # not added to path +, iptables +, socat +}: + +let + cri-o = cri-o-unwrapped; + + binPath = lib.makeBinPath ([ + runc + crun + conmon + utillinux + iptables + socat + ] ++ extraPackages); + +in runCommand cri-o.name { + name = "${cri-o.pname}-wrapper-${cri-o.version}"; + inherit (cri-o) pname version; + + meta = builtins.removeAttrs cri-o.meta [ "outputsToInstall" ]; + + outputs = [ + "out" + "man" + ]; + + nativeBuildInputs = [ + makeWrapper + ]; + +} '' + ln -s ${cri-o.man} $man + + mkdir -p $out/bin + ln -s ${cri-o-unwrapped}/share $out/share + + for p in ${cri-o-unwrapped}/bin/*; do + makeWrapper $p $out/bin/''${p##*/} \ + --prefix PATH : ${binPath} + done +'' |