diff --git a/pkgs/by-name/om/omnictl/package.nix b/pkgs/by-name/om/omnictl/package.nix new file mode 100644 index 000000000000..4f803fe35626 --- /dev/null +++ b/pkgs/by-name/om/omnictl/package.nix @@ -0,0 +1,40 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "omnictl"; + version = "0.32.2"; + + src = fetchFromGitHub { + owner = "siderolabs"; + repo = "omni"; + rev = "v${version}"; + hash = "sha256-db/bYwMPrOZvD/YPtFaRK80yaYdsE70YPh0xQe0uVi4="; + }; + + vendorHash = "sha256-uwzVUdA51eT9fi2Wr0ilNPMpXx430UIYYWXQa1hpzRM="; + + ldflags = [ "-s" "-w" ]; + + GOWORK = "off"; + + subPackages = [ "cmd/omnictl" ]; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = '' + installShellCompletion --cmd omnictl \ + --bash <($out/bin/omnictl completion bash) \ + --fish <($out/bin/omnictl completion fish) \ + --zsh <($out/bin/omnictl completion zsh) + ''; + + doCheck = false; # no tests + + meta = with lib; { + description = "A CLI for the Sidero Omni Kubernetes management platform"; + mainProgram = "omnictl"; + homepage = "https://omni.siderolabs.com/"; + license = licenses.bsl11; + maintainers = with maintainers; [ raylas ]; + }; +}