{ buildGoModule, stdenv, lib, installShellFiles, fetchFromGitHub, nix-update-script, }: buildGoModule rec { pname = "deck"; version = "1.52.0"; src = fetchFromGitHub { owner = "Kong"; repo = "deck"; tag = "v${version}"; hash = "sha256-fKcI40DqQwVw4YzPXVOXdij4LAwRkCp2U+TpjYmIO8I="; }; nativeBuildInputs = [ installShellFiles ]; env.CGO_ENABLED = 0; ldflags = [ "-s -w -X github.com/kong/deck/cmd.VERSION=${version}" "-X github.com/kong/deck/cmd.COMMIT=${src.rev}" ]; proxyVendor = true; # darwin/linux hash mismatch vendorHash = "sha256-h7wtQDw8kixqGK5RE9YQ6a/I3yRO1k/6qcHX/K4M6fc="; postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' installShellCompletion --cmd deck \ --bash <($out/bin/deck completion bash) \ --fish <($out/bin/deck completion fish) \ --zsh <($out/bin/deck completion zsh) ''; passthru.updateScript = nix-update-script { }; meta = { description = "Configuration management and drift detection tool for Kong"; homepage = "https://github.com/Kong/deck"; license = lib.licenses.asl20; mainProgram = "deck"; maintainers = with lib.maintainers; [ liyangau ]; }; }