{ lib, stdenv, buildGoModule, fetchFromGitHub, installShellFiles, testers, roxctl, }: buildGoModule rec { pname = "roxctl"; version = "4.9.2"; src = fetchFromGitHub { owner = "stackrox"; repo = "stackrox"; rev = version; sha256 = "sha256-A9uumIOtuRXMIy0K5BEUp4iICr1jVWiXxfSTESQYkIg="; }; vendorHash = "sha256-AWR24cqv0h/lESMit4U4FnaxkBLl1fe/TlXeE8rI9EE="; nativeBuildInputs = [ installShellFiles ]; subPackages = [ "roxctl" ]; ldflags = [ "-s" "-w" "-X github.com/stackrox/rox/pkg/version/internal.MainVersion=${version}" ]; postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' installShellCompletion --cmd roxctl \ --bash <($out/bin/roxctl completion bash) \ --fish <($out/bin/roxctl completion fish) \ --zsh <($out/bin/roxctl completion zsh) ''; passthru.tests.version = testers.testVersion { package = roxctl; command = "roxctl version"; }; meta = { description = "Command-line client of the StackRox Kubernetes Security Platform"; mainProgram = "roxctl"; license = lib.licenses.asl20; homepage = "https://www.stackrox.io"; maintainers = with lib.maintainers; [ stehessel ]; }; }