blob: c1db03ae19e0bdca62a956bf3c5a6e0df0e65080 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
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
}
|