summaryrefslogtreecommitdiff
path: root/dev-util/gitlab-cli/gitlab-cli-1.100.0.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/gitlab-cli/gitlab-cli-1.100.0.ebuild')
-rw-r--r--dev-util/gitlab-cli/gitlab-cli-1.100.0.ebuild59
1 files changed, 59 insertions, 0 deletions
diff --git a/dev-util/gitlab-cli/gitlab-cli-1.100.0.ebuild b/dev-util/gitlab-cli/gitlab-cli-1.100.0.ebuild
new file mode 100644
index 000000000000..c1db03ae19e0
--- /dev/null
+++ b/dev-util/gitlab-cli/gitlab-cli-1.100.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module shell-completion sysroot
+
+# update on every bump
+GIT_COMMIT=e345ca679f612b4990175d6e33839ba864bb02d2
+
+DESCRIPTION="the official gitlab command line interface"
+HOMEPAGE="https://gitlab.com/gitlab-org/cli"
+SRC_URI="https://gitlab.com/gitlab-org/cli/-/archive/v${PV}/${PN}-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+SRC_URI+=" https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-vendor.tar.xz"
+S="${WORKDIR}/cli-v${PV}-${GIT_COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# tests communicate with gitlab.com and require a personal access token
+RESTRICT="test"
+
+BDEPEND=">=dev-lang/go-1.26.3"
+
+QA_PRESTRIPPED=usr/bin/glab
+
+src_unpack() {
+ mkdir -p "${S}" || die
+ ln -s "../${P}/vendor" "${S}/vendor" || die
+ go-module_src_unpack
+ sed -e 's/check_update: true/check_update: false/' -i "${S}/internal/config/config.yaml.lock" || die
+ chmod 600 "${S}/internal/config/config.yaml.lock" || die
+}
+
+src_compile() {
+ emake \
+ GLAB_VERSION=v${PV} \
+ gen-config
+ emake \
+ BUILD_COMMIT_SHA=${GIT_COMMIT::8} \
+ GLAB_VERSION=v${PV} \
+ build manpage
+
+ einfo "generating shell completion files"
+ sysroot_try_run_prefixed bin/glab completion bash > "${T}"/glab.bash || die
+ sysroot_try_run_prefixed bin/glab completion zsh > "${T}"/glab.zsh || die
+ sysroot_try_run_prefixed bin/glab completion fish > "${T}"/glab.fish || die
+}
+
+src_install() {
+ dobin bin/glab
+ dodoc README.md
+ doman share/man/man1/*
+
+ [[ -s "${T}"/glab.bash ]] && newbashcomp "${T}"/glab.bash glab
+ [[ -s "${T}"/glab.zsh ]] && newzshcomp "${T}"/glab.zsh _glab
+ [[ -s "${T}"/glab.fish ]] && dofishcomp "${T}"/glab.fish
+}