Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / version-management / gitsign / default.nix
blobcf804ddfb54c6d49a5b0b36286506a3c2e1e42e5
1 { lib, buildGoModule, fetchFromGitHub, stdenv, makeWrapper, gitMinimal, testers, gitsign }:
3 buildGoModule rec {
4   pname = "gitsign";
5   version = "0.8.0";
7   src = fetchFromGitHub {
8     owner = "sigstore";
9     repo = pname;
10     rev = "v${version}";
11     hash = "sha256-COgoj5MrX7VBwjgfH+Ud7gp0gE7gpsYoyd0Jv4uXoec=";
12   };
13   vendorHash = "sha256-btvFro0K0+9potwForIj/7h41l+LbUE0Gym9aHaWtEE=";
15   subPackages = [
16     "."
17     "cmd/gitsign-credential-cache"
18   ];
20   nativeBuildInputs = [ makeWrapper ];
22   ldflags = [ "-s" "-w" "-buildid=" "-X github.com/sigstore/gitsign/pkg/version.gitVersion=${version}" ];
24   preCheck = ''
25     # test all paths
26     unset subPackages
27   '';
29   postInstall = ''
30     for f in $out/bin/*; do
31       wrapProgram $f --prefix PATH : ${lib.makeBinPath [ gitMinimal ]}
32     done
33   '';
35   passthru.tests.version = testers.testVersion { package = gitsign; };
37   meta = {
38     homepage = "https://github.com/sigstore/gitsign";
39     changelog = "https://github.com/sigstore/gitsign/releases/tag/v${version}";
40     description = "Keyless Git signing using Sigstore";
41     license = lib.licenses.asl20;
42     maintainers = with lib.maintainers; [ lesuisse developer-guy ];
43   };