fix: replace native library after quitting

This commit is contained in:
əlemi 2024-09-10 16:19:05 +02:00
parent 485f2f941f
commit b3bc67cd38
Signed by: alemi
GPG key ID: A4895B84D311642C

View file

@ -1,6 +1,5 @@
local plugin_dir = vim.fn.fnamemodify(debug.getinfo(1, "S").source:sub(2), ":p:h") -- got this from https://lazy.folke.io/developers#building local plugin_dir = vim.fn.fnamemodify(debug.getinfo(1, "S").source:sub(2), ":p:h") -- got this from https://lazy.folke.io/developers#building
-- TODO not the best loader but a simple example? urls dont work
local os_uname = vim.loop.os_uname() local os_uname = vim.loop.os_uname()
local arch = os_uname.machine local arch = os_uname.machine
@ -19,7 +18,18 @@ end
-- shasum = vim.fn.system("sha256sum " .. path .. 'native' .. ext) -- shasum = vim.fn.system("sha256sum " .. path .. 'native' .. ext)
-- end -- end
local native_path = plugin_dir .. "/lua/codemp/native." .. ext local native_path = plugin_dir .. "/lua/codemp/new-native." .. ext
local replace_native_path = plugin_dir .. "/lua/codemp/native." .. ext
local download_url_native = string.format("https://code.mp/releases/lua/codemp-lua-%s-%s.%s", arch, platform, ext) local download_url_native = string.format("https://code.mp/releases/lua/codemp-lua-%s-%s.%s", arch, platform, ext)
print("downloading codemp native lua extension...") print("downloading codemp native lua extension...")
vim.system({"curl", "-s", "-o", native_path, download_url_native }):wait() -- TODO can we run this asynchronously? vim.system({"curl", "-s", "-o", native_path, download_url_native }):wait() -- TODO can we run this asynchronously?
print("downloaded! exit nvim to reload library")
vim.api.nvim_create_autocmd(
{"ExitPre"},
{
callback = function (_ev)
vim.system({"sleep", "1", ";", "mv", native_path, replace_native_path}, { detach = true })
end
}
)