about summary refs log tree commit diff
path: root/pkgs/applications/networking/cluster/timoni
diff options
context:
space:
mode:
authorJan Votava <votava@deployment.cz>2023-07-20 10:33:19 +0700
committerJan Votava <votava@deployment.cz>2023-07-24 08:50:44 +0700
commit83c185b899cae4819f7890615f732f17b7b8e284 (patch)
tree82d678ad8c4b49cea86ca3423974bc18ebf55575 /pkgs/applications/networking/cluster/timoni
parent531b083070d30c98b01bb8b3d2080ef536aa385f (diff)
timoni: init at 0.10.0
Diffstat (limited to 'pkgs/applications/networking/cluster/timoni')
-rw-r--r--pkgs/applications/networking/cluster/timoni/default.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/applications/networking/cluster/timoni/default.nix b/pkgs/applications/networking/cluster/timoni/default.nix
new file mode 100644
index 0000000000000..1ce1420ce3ddb
--- /dev/null
+++ b/pkgs/applications/networking/cluster/timoni/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+}:
+
+buildGoModule rec {
+  pname = "timoni";
+  version = "0.10.0";
+
+  src = fetchFromGitHub {
+    owner = "stefanprodan";
+    repo = "timoni";
+    rev = "v${version}";
+    hash = "sha256-D49jpwldmtS7/+++4avqAGOhILaHmlUvnfjoV45KVc4=";
+  };
+
+  vendorHash = "sha256-QWNYBHxcKyAexnD6bHfJIDSOEST2J/09YKC/kDsXKHU=";
+
+  subPackages = [ "cmd/timoni" ];
+  nativeBuildInputs = [ installShellFiles ];
+
+  # Some tests require running Kubernetes instance
+  doCheck = false;
+
+  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";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ votava ];
+  };
+}