From c97475eeabc08df8aa5dfe6d476866217aaa55dc Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Mon, 11 Apr 2022 19:54:16 +0200 Subject: fix(bootstrap): add fnl impl --- fnl/bootstrap.fnl | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 fnl/bootstrap.fnl (limited to 'fnl') diff --git a/fnl/bootstrap.fnl b/fnl/bootstrap.fnl new file mode 100644 index 0000000..8ee3e0f --- /dev/null +++ b/fnl/bootstrap.fnl @@ -0,0 +1,27 @@ +;; Bootstraping for fresh install +(module bootstrap {autoload {util util}}) + +(defn- fmt [s ...] (string.format s ...)) + +(def- packer-path (.. (vim.fn.stdpath :data) :site/pack)) + +(def- git-clone-url "!git clone --depth 1 https://github.com/%s/%s %s") + +(defn- execute [cmd] (vim.api.nvim_command cmd)) + +(defn- ensure-path [packer-path repository] + (fmt "%s/packer/start/%s" packer-path repository)) + +(defn- ensure [user repository] + (let [path (ensure-path packer-path repository)]) + (if (> (vim.fn.empty (vim.fn.glob path) 0)) + (do + (execute (fmt git-clone-url user repository path)) + (execute (fmt "packadd %s" repository)) + true) + false)) + +(defn run [] (let [is_bootstrapped (ensure :wbthomason :packer.nvim)] + (ensure :Olical :aniseed) + (ensure :lewis6991 :impatient.nvim) + is_bootstrapped)) -- cgit v1.2.3-70-g09d2