fix: check also fdfind in healthcheck (#1318)

Support different binary names when checking if fd is installed.
This commit is contained in:
Jakub Łuczyński
2021-10-09 15:34:08 +02:00
committed by GitHub
parent 50e45f86d9
commit 917500dbe9

View File

@@ -25,6 +25,7 @@ local optional_dependencies = {
package = { package = {
{ {
name = "fd", name = "fd",
binaries = { "fd", "fdfind" },
url = "[sharkdp/fd](https://github.com/sharkdp/fd)", url = "[sharkdp/fd](https://github.com/sharkdp/fd)",
optional = true, optional = true,
}, },
@@ -42,16 +43,18 @@ local required_plugins = {
} }
local check_binary_installed = function(package) local check_binary_installed = function(package)
local file_extension = is_win and ".exe" or "" local binaries = package.binaries or { package.name }
local filename = package.name .. file_extension for _, binary in ipairs(binaries) do
if fn.executable(filename) == 0 then if is_win then
return binary = binary .. ".exe"
else end
local handle = io.popen(filename .. " --version") if fn.executable(binary) == 1 then
local handle = io.popen(binary .. " --version")
local binary_version = handle:read "*a" local binary_version = handle:read "*a"
handle:close() handle:close()
return true, binary_version return true, binary_version
end end
end
end end
local function lualib_installed(lib_name) local function lualib_installed(lib_name)