From: Laurent Cheylus Subject: Patch for devel/lua-language-server to add version To: "ports " Cc: pvk@openbsd.org Date: Tue, 30 Sep 2025 17:11:26 +0200 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 '' +- end +- +- return m.version ++ return '%%LUA_VERSION%%' + end + + return m