From ca245981f5a700756df81cc7299283e7081760b7 Mon Sep 17 00:00:00 2001 From: Hakan Tunc Date: Sun, 30 Jun 2024 13:47:44 -0700 Subject: [PATCH] influxdb2-cli: install shell completion The influx command can generate completion scripts. This PR adds a post-intall script to install these completions for bash & zsh. Tested the functionality for aarch64-darwin with zsh. `influx completion --help` > NAME: > completion - Generates completion scripts > > USAGE: > completion [bash|zsh|powershell] --- pkgs/servers/nosql/influxdb2/cli.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/servers/nosql/influxdb2/cli.nix b/pkgs/servers/nosql/influxdb2/cli.nix index a331c58a3dbe..f00f09a96aa1 100644 --- a/pkgs/servers/nosql/influxdb2/cli.nix +++ b/pkgs/servers/nosql/influxdb2/cli.nix @@ -1,6 +1,8 @@ { buildGoModule , fetchFromGitHub +, installShellFiles , lib +, stdenv }: let @@ -18,11 +20,19 @@ in buildGoModule { version = version; inherit src; + nativeBuildInputs = [ installShellFiles ]; + vendorHash = "sha256-Ov0TPoMm0qi7kkWUUni677sCP1LwkT9+n3KHcAlQkDA="; subPackages = [ "cmd/influx" ]; ldflags = [ "-X main.commit=v${version}" "-X main.version=${version}" ]; + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd influx \ + --bash <($out/bin/influx completion bash) \ + --zsh <($out/bin/influx completion zsh) + ''; + meta = with lib; { description = "CLI for managing resources in InfluxDB v2"; license = licenses.mit;