mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-09 23:23:00 -04:00
72 lines
2.3 KiB
Bash
72 lines
2.3 KiB
Bash
# Copyright 2026 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit go-module shell-completion optfeature
|
|
|
|
DESCRIPTION="Language server for Dockerfiles, Compose files, and Bake files"
|
|
HOMEPAGE="https://github.com/docker/docker-language-server"
|
|
|
|
if [[ "${PV}" == 9999 ]]; then
|
|
inherit git-r3
|
|
EGIT_REPO_URI="https://github.com/docker/docker-language-server.git"
|
|
else
|
|
KEYWORDS="~amd64"
|
|
SRC_URI="https://github.com/docker/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
|
|
https://github.com/ingenarel/guru-depfiles/releases/download/${P}-deps.tar.xz/${P}-go-mod-deps.tar.xz ->
|
|
${P}-deps.tar.xz
|
|
"
|
|
fi
|
|
|
|
LICENSE="Apache-2.0"
|
|
#gentoo-go-license docker-language-server-0.20.1.ebuild
|
|
LICENSE+=" Apache-2.0 BSD-2 BSD ISC MIT MPL-2.0 Unicode-DFS-2016 "
|
|
# dependency licenses
|
|
# if it says unknown license, and it's for in_toto, it's Apache-2.0
|
|
SLOT="0"
|
|
RESTRICT="test"
|
|
BDEPEND=">=dev-lang/go-1.25.0"
|
|
PATCHES=(
|
|
"${FILESDIR}/telemetry-0.20.1.patch"
|
|
)
|
|
# the telemetry patch removes some unnessary bloat where the lsp would try to publish the telemetry (but will fail
|
|
# anyway because we don't have the api keys), otherwise i would actually use the telemetry use flag for this
|
|
|
|
src_unpack(){
|
|
if [[ "${PV}" == 9999 ]];then
|
|
git-r3_src_unpack
|
|
go-module_live_vendor
|
|
else
|
|
default
|
|
fi
|
|
}
|
|
|
|
src_compile(){
|
|
local VERSION
|
|
if [[ "${PV}" == 9999 ]]; then
|
|
VERSION="$(git show -s --format=%cs)-$(git rev-parse --short HEAD)"
|
|
else
|
|
VERSION="${PV}"
|
|
fi
|
|
CGO_ENABLED=0 ego build \
|
|
-ldflags="-s -w -X 'github.com/docker/docker-language-server/internal/pkg/cli/metadata.Version=${VERSION}'" \
|
|
-o ./bin/"${PN}" ./cmd/"${PN}"
|
|
}
|
|
|
|
src_install(){
|
|
dobin ./bin/"${PN}"
|
|
./bin/"${PN}" completion bash > "${PN}" || die "generating bash completion failed"
|
|
dobashcomp "${PN}"
|
|
./bin/"${PN}" completion zsh > "_${PN}" || die "generating zsh completion failed"
|
|
dozshcomp "_${PN}"
|
|
./bin/"${PN}" completion fish > "${PN}.fish" || die "generating fish completion failed"
|
|
dofishcomp "${PN}.fish"
|
|
}
|
|
|
|
pkg_postinst(){
|
|
# at the time of writing this, it doesn't say what features, just some optional features
|
|
# https://github.com/docker/docker-language-server/blob/5187ff578db630f5df5b5922a10d8415a5bb7d32/README.md?plain=1#L7
|
|
optfeature "some optional features" app-containers/docker-buildx
|
|
}
|