aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/applications/virtualization/cri-o/wrapper.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/virtualization/cri-o/wrapper.nix')
-rw-r--r--nixpkgs/pkgs/applications/virtualization/cri-o/wrapper.nix53
1 files changed, 53 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/virtualization/cri-o/wrapper.nix b/nixpkgs/pkgs/applications/virtualization/cri-o/wrapper.nix
new file mode 100644
index 00000000000..1578eaf4f58
--- /dev/null
+++ b/nixpkgs/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
+''