{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }: buildGoModule rec { pname = "fluxctl"; version = "1.20.2"; src = fetchFromGitHub { owner = "weaveworks"; repo = "flux"; rev = version; sha256 = "1a44lmrvi5f9jr04rblhcsg3zvqzvdp9wyw4m4h4scsqp5g7dfb7"; }; vendorSha256 = "1yzh6iglrzd43yqs1b6qh1i62b6qaz3232lgxyg3gmc81p0i5kr0"; nativeBuildInputs = [ installShellFiles ]; doCheck = false; subPackages = [ "cmd/fluxctl" ]; buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ]; postInstall = '' for shell in bash fish zsh; do $out/bin/fluxctl completion $shell > fluxctl.$shell installShellCompletion fluxctl.$shell done ''; meta = with stdenv.lib; { description = "CLI client for Flux, the GitOps Kubernetes operator"; homepage = "https://github.com/fluxcd/flux"; license = licenses.asl20; maintainers = with maintainers; [ Gonzih filalex77 ]; }; }