about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorDomen Kožar <domen@enlambda.com>2019-01-20 14:04:41 +0700
committerGitHub <noreply@github.com>2019-01-20 14:04:41 +0700
commit555e7eb37534dd1a19c06d2d5cb9079fa6b11207 (patch)
tree46d78e99f90f45c09c2bcec053a80f4a4ff9f039 /pkgs/applications
parent56507df617ed80045ed212aa963e55c9f4e13a87 (diff)
parent556c4426e8007458d47ba608bad5ef04d401ae53 (diff)
Merge pull request #54335 from zimbatm/kubectl-small
kubectl: reduce closure size
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/networking/cluster/kubectl/default.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/kubectl/default.nix b/pkgs/applications/networking/cluster/kubectl/default.nix
new file mode 100644
index 0000000000000..4dbd3d38d31dd
--- /dev/null
+++ b/pkgs/applications/networking/cluster/kubectl/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, lib, kubernetes }:
+
+stdenv.mkDerivation {
+  name = "kubectl-${kubernetes.version}";
+
+  # kubectl is currently part of the main distribution but will eventially be
+  # split out (see homepage)
+  src = kubernetes;
+
+  outputs = [ "out" "man" ];
+
+  doBuild = false;
+
+  installPhase = ''
+    mkdir -p \
+      "$out/bin" \
+      "$out/share/bash-completion/completions" \
+      "$out/share/zsh/site-functions" \
+      "$man/share/man/man1"
+
+    cp bin/kubectl $out/bin/kubectl
+
+    cp "${kubernetes.man}/share/man/man1"/kubectl* "$man/share/man/man1"
+
+    $out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl
+    $out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl
+  '';
+
+  meta = kubernetes.meta // {
+    description = "Kubernetes CLI";
+    homepage = "https://github.com/kubernetes/kubectl";
+  };
+}