python312Packages.types-aiobotocore: 2.15.2 -> 2.15.2.post3 (#361801)
[NixPkgs.git] / pkgs / by-name / gi / git-spice / package.nix
blob57e1913adecef1558b6bb73c62676868c59255f3
2   lib,
3   stdenv,
4   buildGo123Module,
5   fetchFromGitHub,
6   git,
7   nix-update-script,
8   installShellFiles,
9 }:
11 buildGo123Module rec {
12   pname = "git-spice";
13   version = "0.8.1";
15   src = fetchFromGitHub {
16     owner = "abhinav";
17     repo = "git-spice";
18     rev = "refs/tags/v${version}";
19     hash = "sha256-n/ETHsM0BjviDVbcQ67l9cBEzzZXm86jlnmc8EdjxF4=";
20   };
22   vendorHash = "sha256-/qLknJ8cs7t5eZ0t+3kLwByxuTKWvnm9h9tuf5ueNds=";
24   subPackages = [ "." ];
26   nativeBuildInputs = [ installShellFiles ];
28   nativeCheckInputs = [ git ];
30   buildInputs = [ git ];
32   ldflags = [
33     "-s"
34     "-w"
35     "-X=main._version=${version}"
36   ];
38   __darwinAllowLocalNetworking = true;
40   preCheck = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) ''
41     # timeout
42     rm testdata/script/branch_submit_remote_prompt.txt
43     rm testdata/script/branch_submit_multiple_pr_templates.txt
44   '';
46   postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
47     installShellCompletion --cmd gs \
48       --bash <($out/bin/gs shell completion bash) \
49       --zsh <($out/bin/gs shell completion zsh) \
50       --fish <($out/bin/gs shell completion fish)
51   '';
53   passthru.updateScript = nix-update-script { };
55   meta = {
56     description = "Manage stacked Git branches";
57     homepage = "https://abhinav.github.io/git-spice/";
58     changelog = "https://github.com/abhinav/git-spice/blob/${src.rev}/CHANGELOG.md";
59     license = lib.licenses.gpl3Only;
60     maintainers = [ lib.maintainers.vinnymeller ];
61     mainProgram = "gs";
62   };