aboutsummaryrefslogtreecommitdiffstats
path: root/lua/nvim-lsp-installer/servers/omnisharp/init.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2021-09-10 13:38:39 +0200
committerGitHub <noreply@github.com>2021-09-10 13:38:39 +0200
commitd2ec0c0070c01ba0e3e8926031cfe848a016df44 (patch)
treebf57f20725e11125ed51caac547c483d4e642831 /lua/nvim-lsp-installer/servers/omnisharp/init.lua
parentCUSTOM_SERVERS.md: update docs (diff)
downloadmason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.tar
mason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.tar.gz
mason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.tar.bz2
mason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.tar.lz
mason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.tar.xz
mason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.tar.zst
mason-d2ec0c0070c01ba0e3e8926031cfe848a016df44.zip
rewrite some installers for broader cross-platform support (#85)
- Remove all usage of zx in favour of native Lua (via libuv) - Introduce new set of `std` installers The following servers will have to be reinstalled due to this change: 1. clangd 2. solargraph 3. sumneko_lua 4. tailwindcss
Diffstat (limited to 'lua/nvim-lsp-installer/servers/omnisharp/init.lua')
-rw-r--r--lua/nvim-lsp-installer/servers/omnisharp/init.lua27
1 files changed, 22 insertions, 5 deletions
diff --git a/lua/nvim-lsp-installer/servers/omnisharp/init.lua b/lua/nvim-lsp-installer/servers/omnisharp/init.lua
index 825ba811..4bb2a7ec 100644
--- a/lua/nvim-lsp-installer/servers/omnisharp/init.lua
+++ b/lua/nvim-lsp-installer/servers/omnisharp/init.lua
@@ -1,17 +1,34 @@
local server = require "nvim-lsp-installer.server"
-local installers = require "nvim-lsp-installer.installers"
local platform = require "nvim-lsp-installer.platform"
local path = require "nvim-lsp-installer.path"
-local zx = require "nvim-lsp-installer.installers.zx"
+local Data = require "nvim-lsp-installer.data"
+local std = require "nvim-lsp-installer.installers.std"
local root_dir = server.get_server_root_path "omnisharp"
+local VERSION = "v1.37.15"
+
+local target = Data.coalesce(
+ Data.when(platform.is_mac, "omnisharp-osx.zip"),
+ Data.when(platform.is_unix and platform.arch == "x64", "omnisharp-linux-x64.zip"),
+ Data.when(
+ platform.is_win,
+ Data.coalesce(
+ Data.when(platform.arch == "x64", "omnisharp-win-x64.zip"),
+ Data.when(platform.arch == "arm64", "omnisharp-win-arm64.zip")
+ )
+ )
+)
+
return server.Server:new {
name = "omnisharp",
root_dir = root_dir,
- installer = installers.when {
- unix = zx.file "./install.mjs",
- win = zx.file "./install.win.mjs",
+ installer = {
+ std.unzip_remote(
+ ("https://github.com/OmniSharp/omnisharp-roslyn/releases/download/%s/%s"):format(VERSION, target),
+ "omnisharp"
+ ),
+ std.chmod("+x", { "omnisharp/run" }),
},
default_options = {
cmd = {