From 086e90a7fafa68e0eec5554218d28845af71b3c4 Mon Sep 17 00:00:00 2001 From: Usu171 Date: Mon, 18 May 2026 16:27:26 +0800 Subject: [PATCH] keifu: init at 0.3.0 --- pkgs/by-name/ke/keifu/package.nix | 64 +++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 pkgs/by-name/ke/keifu/package.nix diff --git a/pkgs/by-name/ke/keifu/package.nix b/pkgs/by-name/ke/keifu/package.nix new file mode 100644 index 000000000000..7ce00967fc52 --- /dev/null +++ b/pkgs/by-name/ke/keifu/package.nix @@ -0,0 +1,64 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + libgit2, + openssl, + zlib, + makeWrapper, + gitMinimal, + stdenv, + libiconv, + nix-update-script, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "keifu"; + version = "0.3.0"; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "trasta298"; + repo = "keifu"; + tag = "v${finalAttrs.version}"; + hash = "sha256-Srw71Rswafu70kKI36dY1PtB4BQhpTYYzqbrWJuvaUM="; + }; + + cargoHash = "sha256-Ga405TV1uDSZbADrV+3aAeLDRfdPFHzdxxTEDu+f+b4="; + + nativeBuildInputs = [ + pkg-config + makeWrapper + ]; + + buildInputs = [ + libgit2 + openssl + zlib + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ]; + + env = { + OPENSSL_NO_VENDOR = true; + }; + + postInstall = '' + wrapProgram $out/bin/keifu \ + --prefix PATH : ${lib.makeBinPath [ gitMinimal ]} + ''; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "A TUI tool to visualize Git commit graphs with branch genealogy"; + homepage = "https://github.com/trasta298/keifu"; + changelog = "https://github.com/trasta298/keifu/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ + usu171 + ]; + mainProgram = "keifu"; + platforms = lib.platforms.unix; + }; +})