commit: b0ba1450ab2ae848b207ef8335615c7ed85da4ed
Author: Brahmajit Das <listout <AT> listout <DOT> xyz>
AuthorDate: Wed Jan 21 15:10:21 2026 +0000
Commit: Brahmajit Das <listout <AT> listout <DOT> xyz>
CommitDate: Wed Jan 21 15:10:21 2026 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=b0ba1450
dev-util/lua-language-server: add 3.17.1
Signed-off-by: Brahmajit Das <listout <AT> listout.xyz>
dev-util/lua-language-server/Manifest | 1 +
.../lua-language-server-3.17.1.ebuild | 95 ++++++++++++++++++++++
2 files changed, 96 insertions(+)
diff --git a/dev-util/lua-language-server/Manifest
b/dev-util/lua-language-server/Manifest
index cd2f6312f2..c8db524cc7 100644
--- a/dev-util/lua-language-server/Manifest
+++ b/dev-util/lua-language-server/Manifest
@@ -1,3 +1,4 @@
DIST lua-language-server-3.16.1.zip 31995002 BLAKE2B
2c51f7b7cbefc96230d61ac23925521d284ef9875346cad4f5bc3a2ad499393925687eda8057c13ed4279fff03f2ac1d82d3f261d4287d45f40a9791542506a0
SHA512
0fd267ceb35284a7d300af2c1c464ffd6cb2e1fe3945ea936fe5e2316af52838ada4eb9b018a6bb396e95f9eac27e00309d7ed51a7f4bc34529077c3438234cf
DIST lua-language-server-3.16.4.zip 32006835 BLAKE2B
84f4288b59b724a1332a10da03fd677d41a6062be9a0cb2f2f1f63cb4debca7332ec4d05a2b4b7b8969f18c9737c7c1b5b8d22e00688ec17cce8c9e414ec3533
SHA512
0787e5e2e5149e8a9df8e438b7e63cd55b6354f7fd6cc1cbd13b53df2efd4d185b64bb0fc25baf6800c7075e9f3e7c4826e619ab0786120e40e62679a531c332
DIST lua-language-server-3.17.0.zip 32018097 BLAKE2B
d6fcb2e8bc6a4d8aea59243939c48f25cf692b696da97b983a32c5ea163dd9bf728b01189562cec022194c4db6ff8d3c57a442b800d1082495e5dda4c889dbdf
SHA512
cff02240a6394cc0d9d7533beb88e11ca47b0806fc37976ae33ea75eca5928d78dbb0501189f5150183cc0d1991c61e086c06e88f50d0fa53954ffa04562e1fa
+DIST lua-language-server-3.17.1.zip 32018139 BLAKE2B
967835203328326e5556ec81512016af302cc7a5b26a9cc13df41946862eca771a29ddc8036f9bdeadc0a076a6c3d173dcc836737295a4a18c8c2fd6b40fade9
SHA512
e21771f4c9f2c693344b10014a8d40f48bf668ff170ffac6c0e1b1a53989c1e1036b19ea8f203add3423f8d701506f4331382c3391de657469f9333769f9e6b4
diff --git a/dev-util/lua-language-server/lua-language-server-3.17.1.ebuild
b/dev-util/lua-language-server/lua-language-server-3.17.1.ebuild
new file mode 100644
index 0000000000..f0bb35993f
--- /dev/null
+++ b/dev-util/lua-language-server/lua-language-server-3.17.1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua{5-{1,3,4},jit} )
+
+inherit ninja-utils toolchain-funcs lua-single prefix
+
+DESCRIPTION="Lua language server"
+HOMEPAGE="https://github.com/LuaLS/lua-language-server"
+SRC_URI="https://github.com/LuaLS/lua-language-server/releases/download/${PV}/${P}-submodules.zip
-> ${P}.zip"
+S="${WORKDIR}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="llvm-libunwind test"
+REQUIRE_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="
+ ${LUA_DEPS}
+ sys-libs/binutils-libs
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ app-alternatives/ninja
+ app-arch/unzip
+ !llvm-libunwind? ( sys-libs/libunwind )
+ llvm-libunwind? ( llvm-runtimes/libunwind )
+"
+RESTRICT="!test? ( test )"
+
+src_prepare() {
+ # Remove hardcoded gcc references
+ sed -i "/lm.cxx/a lm.cc = '$(tc-getCC)'" \
+ make.lua || die
+ sed -i "s/CC = gcc/ CC = ${tc-getCC}/" \
+ 3rd/lpeglabel/makefile || die
+ # Shipped file doesn't respect CFLAGS/CXXFLAGS/LDFLAGS
+ eapply "${FILESDIR}/3.16.4-linux.ninja.patch"
+ eapply_user
+ sed -i -e "s/^cc = REPLACE_ME/cc = $(tc-getCC)/" \
+ -e "s/^ar = REPLACE_AR/ar = $(tc-getAR)/" \
+ -e "s/CFLAGS/${CFLAGS}/" \
+ -e "s/CXXFLAGS/${CXXFLAGS}/" \
+ -e "s/LDFLAGS/${LDFLAGS}/" \
+ 3rd/luamake/compile/ninja/linux.ninja || die
+ if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
+ sed -i "s/-lstdc++fs//" 3rd/luamake/compile/ninja/linux.ninja
|| die
+ fi
+
+ prefixify_ro "${FILESDIR}/wrapper.sh"
+}
+
+src_compile() {
+ eninja -C 3rd/luamake -f compile/ninja/linux.ninja "$(usex test "test"
"luamake")"
+ use test && eninja -C 3rd/luamake -f compile/ninja/linux.ninja luamake
+ ./3rd/luamake/luamake init || die
+
+ # Generated file doesn't respect CFLAGS/CXXFLAGS/LDFLAGS
+ sed -i -e "s/^cc =.*./cc = REPLACE_ME/" \
+ -e "s/^ar =.*./ar = REPLACE_AR/" \
+ build/build.ninja || die
+
+ eapply "${FILESDIR}/3.16.4-build.ninja.patch"
+ sed -i -e "s/REPLACE_ME/$(tc-getCC)/" \
+ -e "s/REPLACE_AR/$(tc-getAR)/" \
+ -e "s|LUAMAKE_PATH|${S}/3rd/luamake/luamake|" \
+ -e "s/CFLAGS/${CFLAGS}/" \
+ -e "s/CXXFLAGS/${CXXFLAGS}/" \
+ -e "s/LDFLAGS/${LDFLAGS}/" \
+ build/build.ninja || die
+ if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
+ sed -i "s/-lstdc++fs//" build/build.ninja || die
+ fi
+
+ use test && eninja -f build/build.ninja || eninja -f build/build.ninja
all
+ rm -rf meta/198256b1
+}
+
+src_install() {
+ newbin "${T}/wrapper.sh" ${PN}
+
+ into /opt/${PN}
+ dobin bin/${PN}
+
+ insinto /opt/${PN}/bin
+ doins bin/main.lua
+
+ insinto /opt/${PN}
+ doins -r debugger.lua main.lua locale meta script
+
+ einstalldocs
+}