diff options
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/mason-core/managers/powershell/init.lua | 6 | ||||
| -rw-r--r-- | lua/mason/health/init.lua | 12 |
2 files changed, 14 insertions, 4 deletions
diff --git a/lua/mason-core/managers/powershell/init.lua b/lua/mason-core/managers/powershell/init.lua index 5cc5e21d..161ee4b2 100644 --- a/lua/mason-core/managers/powershell/init.lua +++ b/lua/mason-core/managers/powershell/init.lua @@ -8,6 +8,8 @@ local PWSHOPT = { security_protocol = [[ [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; ]], } +local powershell = vim.fn.executable "pwsh" == 1 and "pwsh" or "powershell" + ---@param script string ---@param opts JobSpawnOpts? ---@param custom_spawn JobSpawn? @@ -15,7 +17,7 @@ function M.script(script, opts, custom_spawn) opts = opts or {} ---@type JobSpawn local spawner = custom_spawn or spawn - return spawner.powershell(vim.tbl_extend("keep", { + return spawner[powershell](vim.tbl_extend("keep", { "-NoProfile", on_spawn = function(_, stdio) local stdin = stdio[1] @@ -35,7 +37,7 @@ function M.command(command, opts, custom_spawn) opts = opts or {} ---@type JobSpawn local spawner = custom_spawn or spawn - return spawner.powershell(vim.tbl_extend("keep", { + return spawner[powershell](vim.tbl_extend("keep", { "-NoProfile", "-Command", PWSHOPT.progress_preference .. PWSHOPT.security_protocol .. command, diff --git a/lua/mason/health/init.lua b/lua/mason/health/init.lua index 5003bb0a..0e33911d 100644 --- a/lua/mason/health/init.lua +++ b/lua/mason/health/init.lua @@ -221,8 +221,16 @@ function M.check() relaxed = platform.is.win, }, check { cmd = "tar", args = { "--version" }, name = "tar" }, - -- when(platform.is.win, check { cmd = "powershell.exe", args = { "-Version" }, name = "PowerShell" }), -- TODO fix me - -- when(platform.is.win, check { cmd = "cmd.exe", args = { "-Version" }, name = "cmd" }) -- TODO fix me + check { + cmd = "pwsh", + args = { + "-NoProfile", + "-Command", + [[$PSVersionTable.PSVersion, $PSVersionTable.OS, $PSVersionTable.Platform -join " "]], + }, + name = "pwsh", + relaxed = not platform.is.win, + }, } if platform.is.unix then |
