From d23c357f1c0248c7f38260d696082ace77758df4 Mon Sep 17 00:00:00 2001 From: Urban Skudnik Date: Mon, 3 Sep 2018 17:21:43 +0200 Subject: [PATCH] hcloud: Add autocomplete support for bash and zsh Currently one would need to manually run the command to generate completion and insert it into `.bashrc`/`.zshrc` to get the autocompletion to work. This patch will automatically generate both docs and save them to correct position so it should continue to work even if user changes the shell at a later stage. --- pkgs/development/tools/hcloud/default.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/development/tools/hcloud/default.nix b/pkgs/development/tools/hcloud/default.nix index 877080508d40..b3fa6f852f76 100644 --- a/pkgs/development/tools/hcloud/default.nix +++ b/pkgs/development/tools/hcloud/default.nix @@ -14,6 +14,19 @@ buildGoPackage rec { buildFlagsArray = [ "-ldflags=" "-w -X github.com/hetznercloud/cli/cli.Version=${version}" ]; + postInstall = '' + mkdir -p \ + $bin/etc/bash_completion.d \ + $bin/share/zsh/vendor-completions + + # Add bash completions + $bin/bin/hcloud completion bash > "$bin/etc/bash_completion.d/hcloud" + + # Add zsh completions + echo "#compdef hcloud" > "$bin/share/zsh/vendor-completions/_hcloud" + $bin/bin/hcloud completion zsh >> "$bin/share/zsh/vendor-completions/_hcloud" + ''; + meta = { description = "A command-line interface for Hetzner Cloud, a provider for cloud virtual private servers"; homepage = https://github.com/hetznercloud/cli;