1{
2 lib,
3 vscode-utils,
4 lua-language-server,
5}:
6
7vscode-utils.buildVscodeMarketplaceExtension {
8 mktplcRef = {
9 name = "lua";
10 publisher = "sumneko";
11 version = "3.15.0";
12 hash = "sha256-wcOo1gmWgPJJNQog2+emM05RE1fTtLqFANWfN3ExTnM=";
13 };
14
15 # Running chmod in runtime will lock up extension
16 # indefinitely if the binary is in nix store.
17 postPatch = ''
18 substituteInPlace client/out/src/languageserver.js \
19 --replace-fail 'await fs.promises.chmod(command, "777");' ""
20 '';
21
22 postInstall = ''
23 ln -sf ${lua-language-server}/bin/lua-language-server \
24 $out/$installPrefix/server/bin/lua-language-server
25 '';
26
27 meta = {
28 description = "Lua language server provides various language features for Lua to make development easier and faster";
29 homepage = "https://marketplace.visualstudio.com/items?itemName=sumneko.lua";
30 license = lib.licenses.mit;
31 maintainers = [ lib.maintainers.lblasc ];
32 };
33}