streamlink: 7.1.1 -> 7.1.2 (#373269)
[NixPkgs.git] / pkgs / by-name / ag / age / package.nix
blob00cd7e4e24f3d81c75f757628da6e04c8a820c9a
2   lib,
3   buildGoModule,
4   fetchFromGitHub,
5   fetchpatch,
6   installShellFiles,
7 }:
9 buildGoModule rec {
10   pname = "age";
11   version = "1.2.1";
13   src = fetchFromGitHub {
14     owner = "FiloSottile";
15     repo = "age";
16     rev = "v${version}";
17     hash = "sha256-9ZJdrmqBj43zSvStt0r25wjSfnvitdx3GYtM3urHcaA=";
18   };
20   vendorHash = "sha256-ilRLEV7qOBZbqzg2XQi4kt0JAb/1ftT4JmahYT0zSRU=";
22   ldflags = [
23     "-s"
24     "-w"
25     "-X main.Version=${version}"
26   ];
28   nativeBuildInputs = [ installShellFiles ];
30   preInstall = ''
31     installManPage doc/*.1
32   '';
34   doInstallCheck = true;
35   installCheckPhase = ''
36     if [[ "$("$out/bin/${pname}" --version)" == "${version}" ]]; then
37       echo '${pname} smoke check passed'
38     else
39       echo '${pname} smoke check failed'
40       return 1
41     fi
42   '';
44   # plugin test is flaky, see https://github.com/FiloSottile/age/issues/517
45   checkFlags = [
46     "-skip"
47     "TestScript/plugin"
48   ];
50   meta = with lib; {
51     changelog = "https://github.com/FiloSottile/age/releases/tag/v${version}";
52     homepage = "https://age-encryption.org/";
53     description = "Modern encryption tool with small explicit keys";
54     license = licenses.bsd3;
55     mainProgram = "age";
56     maintainers = with maintainers; [ tazjin ];
57   };