From 8989984b781367b2744c4857e73d8943311db241 Mon Sep 17 00:00:00 2001 From: kylo252 <59826753+kylo252@users.noreply.github.com> Date: Thu, 23 Jun 2022 16:11:47 +0200 Subject: feat(installer): add verify-plugins hook (#2751) --- lua/lvim/plugins.lua | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'lua/lvim/plugins.lua') diff --git a/lua/lvim/plugins.lua b/lua/lvim/plugins.lua index 9397318e..dd40b967 100644 --- a/lua/lvim/plugins.lua +++ b/lua/lvim/plugins.lua @@ -246,9 +246,19 @@ local core_plugins = { }, } -for _, entry in ipairs(core_plugins) do - if not os.getenv "LVIM_DEV_MODE" then - entry["lock"] = true +local default_snapshot_path = join_paths(get_lvim_base_dir(), "snapshots", "default.json") +local content = vim.fn.readfile(default_snapshot_path) +local default_sha1 = vim.fn.json_decode(content) + +local get_default_sha1 = function(spec) + local short_name, _ = require("packer.util").get_plugin_short_name(spec) + return default_sha1[short_name] and default_sha1[short_name].commit +end + +for _, spec in ipairs(core_plugins) do + if not vim.env.LVIM_DEV_MODE then + -- Manually lock the commit hash since Packer's snapshots are unreliable in headless mode + spec["commit"] = get_default_sha1(spec) end end -- cgit v1.2.3