Index | Thread | Search

From:
Laurent Cheylus <foxy@free.fr>
Subject:
Patch for devel/lua-language-server to add version
To:
"ports " <ports@openbsd.org>
Cc:
pvk@openbsd.org
Date:
Tue, 30 Sep 2025 17:11:26 +0200

Download raw body.

Thread
Hi ports@

[cc pvk@ as maintainer]

first, thanks to pavel for the recent import of this LSP server for Lua :)

Patch for devel/lua-language-server version 3.15.0:

- add patch for script/version.lua + 'pre-configure' step in Makefile to add version (output for 'lua-language-server --version')
- modify files/lua-language-server to use XDG_STATE_HOME directory instead of temp dir for logs and meta => keep cache and logs between each invocation of lua_ls
- add 'NO_TEST = Yes' in Makefile => specific 'do-test' needed to run tests (NOK for now)

Build OK on current/amd64 and tests OK when using lua_ls as LSP server with Neovim (config for integrated LSP client).

Tests welcome and please commit if OK.

Laurent


Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/lua-language-server/Makefile,v
diff -u -p -r1.2 Makefile
--- Makefile	28 Sep 2025 12:46:23 -0000	1.2
+++ Makefile	30 Sep 2025 14:49:24 -0000
@@ -6,6 +6,7 @@ COMMENT =		language server for Lua
 
 V =			3.15.0
 PKGNAME =		lua-language-server-${V}
+REVISION = 		0
 
 DIST_TUPLE +=		github LuaLS lua-language-server ${V} . \
 	github CppCXY EmmyLuaCodeStyle 8500f3af178f097331d938378648078d023f4c7c 3rd/EmmyLuaCodeStyle \
@@ -36,7 +37,12 @@ MODULES =		lang/lua
 
 BUILD_DEPENDS =		devel/ninja
 
+NO_TEST =		Yes
+
 LUA_LS_HOME =		${PREFIX}/share/lua-language-server
+
+pre-configure:
+	sed -i 's/%%LUA_VERSION%%/${V}/' ${WRKSRC}/script/version.lua
 
 do-build:
 	${SETENV} ${MAKE_ENV} ninja -C ${WRKSRC}/3rd/luamake \
Index: files/lua-language-server
===================================================================
RCS file: /cvs/ports/devel/lua-language-server/files/lua-language-server,v
diff -u -p -r1.1.1.1 lua-language-server
--- files/lua-language-server	26 Sep 2025 09:50:28 -0000	1.1.1.1
+++ files/lua-language-server	30 Sep 2025 14:49:24 -0000
@@ -1,6 +1,6 @@
 #!/bin/sh
-TMPPATH=$(/usr/bin/mktemp -d '/tmp/lua-language-server.XXXXXXXXXX' || exit 1)
+STATE_PATH=${XDG_STATE_HOME:-$HOME/.local/state}/lua-language-server
 exec '${TRUEPREFIX}/share/lua-language-server/bin/lua-language-server' \
-    --logpath="${TMPPATH}/log" \
-    --metapath="${TMPPATH}/meta" \
+    --logpath="${STATE_PATH}/log" \
+    --metapath="${STATE_PATH}/meta" \
     "$@"
Index: patches/patch-script_version_lua
===================================================================
RCS file: patches/patch-script_version_lua
diff -N patches/patch-script_version_lua
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-script_version_lua	30 Sep 2025 14:49:24 -0000
@@ -0,0 +1,18 @@
+Set version
+
+Index: script/version.lua
+--- script/version.lua.orig
++++ script/version.lua
+@@ -20,11 +20,7 @@ end
+ local m = {}
+ 
+ function m.getVersion()
+-    if not m.version then
+-        m.version = loadVersion() or '<Unknown>'
+-    end
+-
+-    return m.version
++    return '%%LUA_VERSION%%'
+ end
+ 
+ return m