diff options
| author | William Boman <william@redwill.se> | 2021-12-17 12:49:52 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-17 12:49:52 +0100 |
| commit | e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b (patch) | |
| tree | 4be382e31ec1aa066be54c482cc92fb49a8a0cbd /lua/nvim-lsp-installer/servers/sumneko_lua/init.lua | |
| parent | add sourcekit for Swift (#336) (diff) | |
| download | mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.tar mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.tar.gz mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.tar.bz2 mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.tar.lz mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.tar.xz mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.tar.zst mason-e9d1daee2cdb2c9b2a7e1926d7476dc3fdbb4b1b.zip | |
fix(sumneko_lua): (breaking) support new archive structure (#341)
Fixes #339.
Diffstat (limited to 'lua/nvim-lsp-installer/servers/sumneko_lua/init.lua')
| -rw-r--r-- | lua/nvim-lsp-installer/servers/sumneko_lua/init.lua | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/lua/nvim-lsp-installer/servers/sumneko_lua/init.lua b/lua/nvim-lsp-installer/servers/sumneko_lua/init.lua index 82db4f26..907545be 100644 --- a/lua/nvim-lsp-installer/servers/sumneko_lua/init.lua +++ b/lua/nvim-lsp-installer/servers/sumneko_lua/init.lua @@ -5,13 +5,9 @@ local Data = require "nvim-lsp-installer.data" local std = require "nvim-lsp-installer.installers.std" local context = require "nvim-lsp-installer.installers.context" -return function(name, root_dir) - local bin_dir = Data.coalesce( - Data.when(platform.is_mac, "macOS"), - Data.when(platform.is_linux, "Linux"), - Data.when(platform.is_win, "Windows") - ) +local coalesce, when = Data.coalesce, Data.when +return function(name, root_dir) return server.Server:new { name = name, root_dir = root_dir, @@ -19,19 +15,32 @@ return function(name, root_dir) homepage = "https://github.com/sumneko/lua-language-server", installer = { context.use_github_release_file("sumneko/vscode-lua", function(version) - return ("lua-%s.vsix"):format(version:gsub("^v", "")) + local target = coalesce( + when( + platform.is_mac, + coalesce( + when(platform.arch == "x64", "vscode-lua-%s-darwin-x64.vsix"), + when(platform.arch == "arm64", "vscode-lua-%s-darwin-arm64.vsix") + ) + ), + when(platform.is_linux and platform.arch == "x64", "vscode-lua-%s-linux-x64.vsix"), + when( + platform.is_win, + coalesce( + when(platform.arch == "x64", "vscode-lua-%s-win32-x64.vsix"), + when(platform.arch == "x86", "vscode-lua-%s-win32-ia32.vsix") + ) + ) + ) + + return target and target:format(version) end), context.capture(function(ctx) return std.unzip_remote(ctx.github_release_file) end), - -- see https://github.com/sumneko/vscode-lua/pull/43 - std.chmod( - "+x", - { "extension/server/bin/macOS/lua-language-server", "extension/server/bin/Linux/lua-language-server" } - ), }, default_options = { - cmd = { path.concat { root_dir, "extension", "server", "bin", bin_dir, "lua-language-server" } }, + cmd = { path.concat { root_dir, "extension", "server", "bin", "lua-language-server" } }, }, } end |
