nixpkgs/pkgs/applications/networking/cluster/timoni/default.nix
2024-04-24 09:57:26 +00:00

50 lines
1.2 KiB
Nix

{ lib
, buildGo122Module
, fetchFromGitHub
, installShellFiles
}:
buildGo122Module rec {
pname = "timoni";
version = "0.21.0";
src = fetchFromGitHub {
owner = "stefanprodan";
repo = "timoni";
rev = "v${version}";
hash = "sha256-LN2VxXKjEaUgLSVc0G+OlhmaZ4anBmyXbOBOrGIeYG0=";
};
vendorHash = "sha256-Vj7P0o0UM35WTv9s1BAcW6MuzjIinADOFsuCK1bpKP0=";
subPackages = [ "cmd/timoni" ];
nativeBuildInputs = [ installShellFiles ];
# Some tests require running Kubernetes instance
doCheck = false;
passthru.updateScript = ./update.sh;
ldflags = [
"-s"
"-w"
"-X main.VERSION=${version}"
];
postInstall = ''
installShellCompletion --cmd timoni \
--bash <($out/bin/timoni completion bash) \
--fish <($out/bin/timoni completion fish) \
--zsh <($out/bin/timoni completion zsh)
'';
meta = with lib; {
homepage = "https://timoni.sh";
changelog = "https://github.com/stefanprodan/timoni/releases/tag/${src.rev}";
description = "A package manager for Kubernetes, powered by CUE and inspired by Helm";
mainProgram = "timoni";
license = licenses.asl20;
maintainers = with maintainers; [ votava ];
};
}