Unverified Commit c1eaa283 authored by Pol Dellaiera's avatar Pol Dellaiera Committed by GitHub
Browse files

Backport #426485 to `release-25.05` (#426614)

parents cccca5d6 bffaa29c
Loading
Loading
Loading
Loading
+32 −6
Original line number Diff line number Diff line
@@ -3,23 +3,31 @@
  buildGoModule,
  fetchFromGitLab,
  installShellFiles,
  makeBinaryWrapper,
  stdenv,
  nix-update-script,
  writableTmpDirAsHomeHook,
  gitMinimal,
}:

buildGoModule (finalAttrs: {
  pname = "glab";
  version = "1.56.0";
  version = "1.62.0";

  src = fetchFromGitLab {
    owner = "gitlab-org";
    repo = "cli";
    rev = "v${finalAttrs.version}";
    hash = "sha256-dFyVhl4+WdQeoSZSY8JbkjJBhqOX/oN2b9q1CGlLhpc=";
    hash = "sha256-+dXMlNc54i/vEwYV0YRKXrdWejcgfXFW+tFq3tf8TZY=";
    leaveDotGit = true;
    postFetch = ''
      cd "$out"
      git rev-parse --short HEAD > $out/COMMIT
      find "$out" -name .git -print0 | xargs -0 rm -rf
    '';
  };

  vendorHash = "sha256-m4IWtK2PNjs2UxzVCT2oSx6Gic2flN4Fq8w0mNIhHxo=";
  vendorHash = "sha256-sgph04zjHvvgL0QJm2//h8jyDg/5NY7dq50C0G0hYYM=";

  ldflags = [
    "-s"
@@ -27,11 +35,16 @@ buildGoModule (finalAttrs: {
    "-X main.version=${finalAttrs.version}"
  ];

  nativeCheckInputs = [ writableTmpDirAsHomeHook ];
  preBuild = ''
    ldflags+=" -X main.commit=$(cat COMMIT)"
  '';

  subPackages = [ "cmd/glab" ];
  nativeBuildInputs = [
    installShellFiles
    makeBinaryWrapper
  ];

  nativeBuildInputs = [ installShellFiles ];
  subPackages = [ "cmd/glab" ];

  postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
    make manpage
@@ -40,6 +53,19 @@ buildGoModule (finalAttrs: {
      --bash <($out/bin/glab completion -s bash) \
      --fish <($out/bin/glab completion -s fish) \
      --zsh <($out/bin/glab completion -s zsh)

    wrapProgram $out/bin/glab \
      --set-default GLAB_CHECK_UPDATE 0 \
      --set-default GLAB_SEND_TELEMETRY 0
  '';

  nativeCheckInputs = [
    gitMinimal
    writableTmpDirAsHomeHook
  ];

  preCheck = ''
    git init
  '';

  passthru.updateScript = nix-update-script { };