From e5504f90deb7e2c86efc3f64e020374d9dd479c2 Mon Sep 17 00:00:00 2001 From: Marcus Ramberg Date: Sun, 28 Sep 2025 23:58:04 +0200 Subject: [PATCH] woodpecker-cli: install autocompletion for bash/fish/zsh --- .../continuous-integration/woodpecker/cli.nix | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/continuous-integration/woodpecker/cli.nix b/pkgs/development/tools/continuous-integration/woodpecker/cli.nix index 68b4218a60e0..af9f7c1aba2c 100644 --- a/pkgs/development/tools/continuous-integration/woodpecker/cli.nix +++ b/pkgs/development/tools/continuous-integration/woodpecker/cli.nix @@ -1,4 +1,10 @@ -{ buildGoModule, callPackage }: +{ + buildGoModule, + callPackage, + installShellFiles, + lib, + stdenv, +}: let common = callPackage ./common.nix { }; in @@ -8,13 +14,23 @@ buildGoModule { version src ldflags - postInstall vendorHash ; subPackages = "cmd/cli"; + nativeBuildInputs = [ installShellFiles ]; + env.CGO_ENABLED = 0; + postInstall = '' + ${common.postInstall} + '' + + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd woodpecker-cli \ + --bash <($out/bin/woodpecker-cli completion bash) \ + --fish <($out/bin/woodpecker-cli completion fish ) \ + --zsh <($out/bin/woodpecker-cli completion zsh) + ''; meta = common.meta // { description = "Command line client for the Woodpecker Continuous Integration server";