diff --git a/pkgs/applications/networking/cluster/kubelogin/default.nix b/pkgs/applications/networking/cluster/kubelogin/default.nix index 243495dd6a2c..529779b87708 100644 --- a/pkgs/applications/networking/cluster/kubelogin/default.nix +++ b/pkgs/applications/networking/cluster/kubelogin/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, buildGoModule, go }: +{ stdenv, lib, fetchFromGitHub, buildGoModule, installShellFiles, go }: buildGoModule rec { pname = "kubelogin"; @@ -18,6 +18,17 @@ buildGoModule rec { "-X main.goVersion=${lib.getVersion go}" ]; + nativeBuildInputs = [ installShellFiles ]; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + $out/bin/kubelogin completion bash >kubelogin.bash + $out/bin/kubelogin completion fish >kubelogin.fish + $out/bin/kubelogin completion zsh >kubelogin.zsh + installShellCompletion kubelogin.{bash,fish,zsh} + ''; + + __darwinAllowLocalNetworking = true; + meta = with lib; { description = "Kubernetes credential plugin implementing Azure authentication"; mainProgram = "kubelogin";