73 lines
2.6 KiB
Lua
73 lines
2.6 KiB
Lua
# MIT License
|
|
#
|
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
# of this software and associated documentation files (the "Software"), to deal
|
|
# in the Software without restriction, including without limitation the rights
|
|
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
# copies of the Software, and to permit persons to whom the Software is
|
|
# furnished to do so, subject to the following conditions:
|
|
#
|
|
# The above copyright notice and this permission notice shall be included in all
|
|
# copies or substantial portions of the Software.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
# SOFTWARE.
|
|
|
|
--[[
|
|
--
|
|
-- This file is not required for your own configuration,
|
|
-- but helps people determine if their system is setup correctly.
|
|
--
|
|
--]]
|
|
|
|
local check_version = function()
|
|
local verstr = tostring(vim.version())
|
|
if not vim.version.ge then
|
|
vim.health.error(string.format("Neovim out of date: '%s'. Upgrade to latest stable or nightly", verstr))
|
|
return
|
|
end
|
|
|
|
if vim.version.ge(vim.version(), '0.10-dev') then
|
|
vim.health.ok(string.format("Neovim version is: '%s'", verstr))
|
|
else
|
|
vim.health.error(string.format("Neovim out of date: '%s'. Upgrade to latest stable or nightly", verstr))
|
|
end
|
|
end
|
|
|
|
local check_external_reqs = function()
|
|
-- Basic utils: `git`, `make`, `unzip`
|
|
for _, exe in ipairs({ 'git', 'make', 'unzip', 'rg' }) do
|
|
local is_executable = vim.fn.executable(exe) == 1
|
|
if is_executable then
|
|
vim.health.ok(string.format("Found executable: '%s'", exe))
|
|
else
|
|
vim.health.warn(string.format("Could not find executable: '%s'", exe))
|
|
end
|
|
end
|
|
|
|
return true
|
|
end
|
|
|
|
return {
|
|
check = function()
|
|
vim.health.start('kickstart.nvim')
|
|
|
|
vim.health.info([[NOTE: Not every warning is a 'must-fix' in `:checkhealth`
|
|
|
|
Fix only warnings for plugins and languages you intend to use.
|
|
Mason will give warnings for languages that are not installed.
|
|
You do not need to install, unless you want to use those languages!]])
|
|
|
|
local uv = vim.uv or vim.loop
|
|
vim.health.info('System Information: ' .. vim.inspect(uv.os_uname()))
|
|
|
|
check_version()
|
|
check_external_reqs()
|
|
end,
|
|
}
|