librewolf: 132.0.1 -> 132.0.1-1 (#355483)
[NixPkgs.git] / pkgs / by-name / gl / glab / package.nix
blobcfc66dea2a7c14d1aa491a239710a4412ad21e2a
2   lib,
3   buildGo123Module,
4   fetchFromGitLab,
5   installShellFiles,
6   stdenv,
7 }:
9 buildGo123Module rec {
10   pname = "glab";
11   version = "1.49.0";
13   src = fetchFromGitLab {
14     owner = "gitlab-org";
15     repo = "cli";
16     rev = "v${version}";
17     hash = "sha256-G9z9lISalj3ZXlvDY+qA+0NB6F7flBd1cTcGfxrM91U=";
18   };
20   vendorHash = "sha256-SsWZO77KqDPzyEK57WaK4NpnDWUtZPP0qur2EvEoiL0=";
22   ldflags = [
23     "-s"
24     "-w"
25     "-X main.version=${version}"
26   ];
28   preCheck = ''
29     # failed to read configuration:  mkdir /homeless-shelter: permission denied
30     export HOME=$TMPDIR
31   '';
33   subPackages = [ "cmd/glab" ];
35   nativeBuildInputs = [ installShellFiles ];
37   postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
38     make manpage
39     installManPage share/man/man1/*
40     installShellCompletion --cmd glab \
41       --bash <($out/bin/glab completion -s bash) \
42       --fish <($out/bin/glab completion -s fish) \
43       --zsh <($out/bin/glab completion -s zsh)
44   '';
46   meta = {
47     description = "GitLab CLI tool bringing GitLab to your command line";
48     license = lib.licenses.mit;
49     homepage = "https://gitlab.com/gitlab-org/cli";
50     changelog = "https://gitlab.com/gitlab-org/cli/-/releases/v${version}";
51     maintainers = with lib.maintainers; [
52       freezeboy
53       luftmensch-luftmensch
54     ];
55     mainProgram = "glab";
56   };