From 873e81833973d9ec4e1e54a29a7155e516268704 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 11 Dec 2016 14:54:23 +0100 Subject: [PATCH 1/6] docker-machine: add bash completion --- .../networking/cluster/docker-machine/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/applications/networking/cluster/docker-machine/default.nix b/pkgs/applications/networking/cluster/docker-machine/default.nix index 62dbbcf21495..d714033e4125 100644 --- a/pkgs/applications/networking/cluster/docker-machine/default.nix +++ b/pkgs/applications/networking/cluster/docker-machine/default.nix @@ -14,6 +14,11 @@ buildGoPackage rec { sha256 = "0l4a5bqfw8i8wrl5yzkqy848r7vdx6hw8p5m3z3vzabvsmsjjwy7"; }; + postInstall = '' + mkdir -p $bin/share/bash-completion/completions/ + cp go/src/github.com/docker/machine/contrib/completion/bash/* $bin/share/bash-completion/completions/ + ''; + postFixup = '' mv $bin/bin/cmd $bin/bin/docker-machine ''; From ef24c93f729c1d39b037ede858e00f9052293315 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 11 Dec 2016 14:56:25 +0100 Subject: [PATCH 2/6] kubernetes: add bash completions --- pkgs/applications/networking/cluster/kubernetes/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix index 46f5d7fa50ac..38458a574d59 100644 --- a/pkgs/applications/networking/cluster/kubernetes/default.nix +++ b/pkgs/applications/networking/cluster/kubernetes/default.nix @@ -40,11 +40,13 @@ stdenv.mkDerivation rec { postBuild = "(cd build/pause && gcc pause.c -o pause)"; installPhase = '' - mkdir -p "$out/bin" "$man/share/man" "$pause/bin" + mkdir -p "$out/bin" "$out/share/bash-completion/completions" "$man/share/man" "$pause/bin" cp _output/local/go/bin/* "$out/bin/" cp build/pause/pause "$pause/bin/pause" cp -R docs/man/man1 "$man/share/man" + + $out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl ''; preFixup = '' From c316dd1cc7386a6eb8fa8dcdaf4e592214519561 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 11 Dec 2016 14:57:02 +0100 Subject: [PATCH 3/6] minikube: add bash completions --- pkgs/applications/networking/cluster/minikube/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix index 857e8e72d12b..2fe9db267655 100644 --- a/pkgs/applications/networking/cluster/minikube/default.nix +++ b/pkgs/applications/networking/cluster/minikube/default.nix @@ -30,6 +30,9 @@ stdenv.mkDerivation rec { installPhase = '' cp $src $out/bin/${pname} chmod +x $out/bin/${pname} + + mkdir -p $out/share/bash-completion/completions/ + HOME=$(pwd) $out/bin/minikube completion bash > $out/share/bash-completion/completions/minikube ''; meta = with stdenv.lib; { From a50fc480c3204c367049ba137f55ab5cb9029e3f Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 11 Dec 2016 14:57:49 +0100 Subject: [PATCH 4/6] nodejs: add bash completions for npm --- pkgs/development/web/nodejs/nodejs.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index eccdffab4c6e..0b6ec87f00aa 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -58,6 +58,11 @@ in postInstall = '' paxmark m $out/bin/node PATH=$out/bin:$PATH patchShebangs $out + + ${optionalString enableNpm '' + mkdir -p $out/share/bash-completion/completions/ + $out/bin/npm completion > $out/share/bash-completion/completions/npm + ''} ''; meta = { From a979297a9634fe05eba817fa13456ed74f56169e Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 11 Dec 2016 14:59:14 +0100 Subject: [PATCH 5/6] valut: add bash completions --- pkgs/tools/security/vault/default.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix index 9118bd3c18fb..fedd3ebab2c8 100644 --- a/pkgs/tools/security/vault/default.nix +++ b/pkgs/tools/security/vault/default.nix @@ -1,6 +1,13 @@ { stdenv, lib, buildGoPackage, fetchFromGitHub }: -buildGoPackage rec { +let + vaultBashCompletions = fetchFromGitHub { + owner = "iljaweis"; + repo = "vault-bash-completion"; + rev = "62c142e20929f930c893ebe3366350d735e81fbd"; + sha256 = "0nfv10ykjq9751ijdyq728gjlgldm1lxvrar8kf6nz6rdfnnl2n5"; + }; +in buildGoPackage rec { name = "vault-${version}"; version = "0.6.1"; @@ -18,6 +25,11 @@ buildGoPackage rec { -X github.com/hashicorp/vault/version.GitCommit=${version} ''; + postInstall = '' + mkdir -p $bin/share/bash-completion/completions/ + cp ${vaultBashCompletions}/vault-bash-completion.sh $bin/share/bash-completion/completions/vault + ''; + meta = with stdenv.lib; { homepage = https://www.vaultproject.io; description = "A tool for managing secrets"; From f70e385fb601a236e33c394f6f6ec2c1f8e08cc9 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Sun, 11 Dec 2016 15:00:16 +0100 Subject: [PATCH 6/6] pythonPackages.docker-compose: add bash completions --- pkgs/top-level/python-packages.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 31745e5380ac..5956b144b0a0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10948,6 +10948,11 @@ in { sed -i "s/'requests >= 2.6.1, < 2.8'/'requests'/" setup.py ''; + postInstall = '' + mkdir -p $out/share/bash-completion/completions/ + cp contrib/completion/bash/docker-compose $out/share/bash-completion/completions/docker-compose + ''; + meta = { homepage = "https://docs.docker.com/compose/"; description = "Multi-container orchestration for Docker";