kubectl: use installShellFiles
This commit is contained in:
parent
563ff4adf9
commit
d183736d69
|
@ -1,27 +1,24 @@
|
||||||
{ stdenv, kubernetes }:
|
{ stdenv, kubernetes, installShellFiles }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "kubectl-${kubernetes.version}";
|
name = "kubectl-${kubernetes.version}";
|
||||||
|
|
||||||
# kubectl is currently part of the main distribution but will eventially be
|
# kubectl is currently part of the main distribution but will eventially be
|
||||||
# split out (see homepage)
|
# split out (see homepage)
|
||||||
src = kubernetes;
|
dontUnpack = true;
|
||||||
|
|
||||||
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
outputs = [ "out" "man" ];
|
outputs = [ "out" "man" ];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p \
|
install -D ${kubernetes}/bin/kubectl -t $out/bin
|
||||||
"$out/bin" \
|
|
||||||
"$out/share/bash-completion/completions" \
|
|
||||||
"$out/share/zsh/site-functions" \
|
|
||||||
"$man/share/man/man1"
|
|
||||||
|
|
||||||
cp bin/kubectl $out/bin/kubectl
|
installManPage "${kubernetes.man}/share/man/man1"/kubectl*
|
||||||
|
|
||||||
cp "${kubernetes.man}/share/man/man1"/kubectl* "$man/share/man/man1"
|
installShellCompletion --cmd kubectl \
|
||||||
|
--bash <($out/bin/kubectl completion bash) \
|
||||||
$out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl
|
--zsh <($out/bin/kubectl completion zsh)
|
||||||
$out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = kubernetes.meta // {
|
meta = kubernetes.meta // {
|
||||||
|
|
Loading…
Reference in New Issue