{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }: buildGoModule rec { pname = "fluxctl"; version = "1.21.0"; src = fetchFromGitHub { owner = "weaveworks"; repo = "flux"; rev = version; sha256 = "007i6kb80142v19w2dm3667sskcvdp1ilg3q3f9gjgr9c5nrg1m2"; }; vendorSha256 = "01v4x2mk5jglnigq0iic52f84vzx56zh46i7v2wlq8ninj8y1k0x"; 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 Br1ght0ne ]; }; }