commit:     b84ebe20b2c1f0f8d2b3b28c13a67aa1c23e409a
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 28 10:50:07 2025 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 28 16:34:47 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b84ebe20

dev-go/golangci-lint: add shell completion files

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 dev-go/golangci-lint/golangci-lint-2.0.2.ebuild | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/dev-go/golangci-lint/golangci-lint-2.0.2.ebuild 
b/dev-go/golangci-lint/golangci-lint-2.0.2.ebuild
index 1e7c1c241e68..7fd588351a36 100644
--- a/dev-go/golangci-lint/golangci-lint-2.0.2.ebuild
+++ b/dev-go/golangci-lint/golangci-lint-2.0.2.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-inherit go-module
+inherit go-module shell-completion toolchain-funcs
 
 DESCRIPTION="Fast linters runner for Go"
 HOMEPAGE="https://golangci-lint.run/ https://github.com/golangci/golangci-lint";
@@ -18,6 +18,13 @@ KEYWORDS="~amd64"
 
 src_compile() {
        emake build
+
+       if ! tc-is-cross-compiler; then
+               einfo "generating shell completion files"
+               ./golangci-lint completion bash > ${PN}.bash || die
+               ./golangci-lint completion zsh > ${PN}.zsh || die
+               ./golangci-lint completion fish > ${PN}.fish || die
+       fi
 }
 
 src_test() {
@@ -28,4 +35,12 @@ src_install() {
        dobin golangci-lint
        local DOCS=( README.md CHANGELOG.md )
        einstalldocs
+
+       if ! tc-is-cross-compiler; then
+               newbashcomp ${PN}.bash ${PN}
+               newzshcomp ${PN}.zsh _${PN}
+               dofishcomp ${PN}.fish
+       else
+               ewarn "Shell completion files not installed! Install them 
manually with '${PN} completion --help'"
+       fi
 }

Reply via email to