aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2026-08-02 19:04:18 +0200
committerLoek Le Blansch <loek@pipeframe.xyz>2026-08-02 19:04:18 +0200
commitd85d3cde2a62b36ad943a231b244c22a81159680 (patch)
tree31c836a58ba3b0754d35f83163d8ad00a2743f67
parentad9cfdc586ee37b4c534d173697b4404d6f51324 (diff)
add bootstrap scripts
-rw-r--r--home/dot_config/coc/extensions/package.json4
-rw-r--r--home/dot_config/coc/extensions/run_once_bootstrap.sh.tmpl14
-rw-r--r--home/dot_config/nvim/run_once_bootstrap.sh.tmpl11
-rw-r--r--home/dot_config/run_once_update_user_dirs.sh.tmpl9
-rw-r--r--home/dot_local/share/mode/run_once_bootstrap.sh.tmpl13
-rw-r--r--home/private_dot_ssh/run_once_bootstrap.sh8
6 files changed, 57 insertions, 2 deletions
diff --git a/home/dot_config/coc/extensions/package.json b/home/dot_config/coc/extensions/package.json
index b648463..62e2b64 100644
--- a/home/dot_config/coc/extensions/package.json
+++ b/home/dot_config/coc/extensions/package.json
@@ -6,14 +6,14 @@
"coc-html": ">=1.8.0",
"coc-java": ">=1.26.1",
"coc-json": ">=1.9.3",
- "coc-rust-analyzer": ">=0.85.0",
+ "coc-rust-analyzer": ">=0.89.2",
"coc-tsserver": ">=2.3.1",
"coc-vimtex": ">=1.1.5",
"coc-lua": ">=2.0.6",
"coc-deno": ">=3.15.0",
"coc-sh": ">=1.2.4",
"coc-solargraph": ">=1.2.4",
- "coc-pyright": ">=1.1.405",
+ "coc-pyright": ">=1.1.411",
"coc-cmake": ">=0.2.2"
},
"disabled": [],
diff --git a/home/dot_config/coc/extensions/run_once_bootstrap.sh.tmpl b/home/dot_config/coc/extensions/run_once_bootstrap.sh.tmpl
new file mode 100644
index 0000000..0998dfa
--- /dev/null
+++ b/home/dot_config/coc/extensions/run_once_bootstrap.sh.tmpl
@@ -0,0 +1,14 @@
+#!/bin/sh
+# vim:ft=sh
+
+# {{ include (joinPath .chezmoi.sourceDir "dot_config/coc/extensions/package.json") | sha1sum }}
+
+[ -z "$(command -v nvim)" ] && exit 0
+[ -z "$(command -v jq)" ] && exit 0
+
+COC_PLUGINS="$(jq --raw-output '.dependencies | keys | join(" ")' {{ joinPath .chezmoi.sourceDir "dot_config/coc/extensions/package.json" | quote }})"
+
+echo "updating coc plugins"
+nvim --headless +"CocInstall -sync $COC_PLUGINS" +qa
+
+exit 0
diff --git a/home/dot_config/nvim/run_once_bootstrap.sh.tmpl b/home/dot_config/nvim/run_once_bootstrap.sh.tmpl
new file mode 100644
index 0000000..9361a70
--- /dev/null
+++ b/home/dot_config/nvim/run_once_bootstrap.sh.tmpl
@@ -0,0 +1,11 @@
+#!/bin/sh
+# vim:ft=sh
+
+# {{ include (joinPath .chezmoi.sourceDir "dot_config/nvim/init.vim") | sha1sum }}
+
+[ -z "$(command -v nvim)" ] && exit 0
+
+echo "updating nvim plugins"
+nvim --headless +"PlugInstall --sync" +qa
+
+exit 0
diff --git a/home/dot_config/run_once_update_user_dirs.sh.tmpl b/home/dot_config/run_once_update_user_dirs.sh.tmpl
new file mode 100644
index 0000000..089d528
--- /dev/null
+++ b/home/dot_config/run_once_update_user_dirs.sh.tmpl
@@ -0,0 +1,9 @@
+#!/bin/sh
+# vim:ft=sh
+
+# {{ include (joinPath .chezmoi.sourceDir "dot_config/user-dirs.dirs") | sha1sum }}
+
+echo "create XDG user directories"
+xdg-user-dirs-update
+
+exit 0
diff --git a/home/dot_local/share/mode/run_once_bootstrap.sh.tmpl b/home/dot_local/share/mode/run_once_bootstrap.sh.tmpl
new file mode 100644
index 0000000..6b5f54d
--- /dev/null
+++ b/home/dot_local/share/mode/run_once_bootstrap.sh.tmpl
@@ -0,0 +1,13 @@
+#!/bin/sh
+# vim:ft=sh
+
+# save hash of this directory so this script is run if the files are modified
+# {{ output "find" (joinPath .chezmoi.sourceDir "dot_local/share/mode") "-type" "f" "-exec" "sha256sum" "{}" ";" | sha1sum }}
+
+[ -z "$(command -v mode)" ] && exit 0
+[ -z "$(command -v fork)" ] && exit 0
+
+echo "updating dynamic theme files"
+fork mode --no-reload {{ dig "mode" "theme" "dark" . }}
+
+exit 0
diff --git a/home/private_dot_ssh/run_once_bootstrap.sh b/home/private_dot_ssh/run_once_bootstrap.sh
new file mode 100644
index 0000000..dd6d274
--- /dev/null
+++ b/home/private_dot_ssh/run_once_bootstrap.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+# vim:ft=sh
+
+[ "$(find ~/.ssh -name 'id_*' -maxdepth 1 2>/dev/null | wc -l)" -ne 0 ] && exit 0
+
+echo "generating ssh keys"
+ssh-keygen -q -N "" < /dev/zero 1>/dev/null
+