@sebastienrousseau/dotfiles 0.2.502 → 0.2.504

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (412) hide show
  1. package/CHANGELOG.md +109 -9
  2. package/LICENSE +21 -1283
  3. package/README.md +6 -4
  4. package/docs/CONFIG_STRATEGY.md +124 -0
  5. package/docs/COPYRIGHT +1 -1
  6. package/docs/GOVERNANCE.md +98 -0
  7. package/docs/MAINTAINERS.md +41 -0
  8. package/docs/OPENCODE.md +127 -0
  9. package/docs/README.md +2 -0
  10. package/docs/STRUCTURE.md +102 -0
  11. package/docs/adr/ADR-011-nushell-tier3-keep.md +2 -2
  12. package/docs/architecture/AI_COST_OPTIMIZATION.md +143 -0
  13. package/docs/architecture/REPO_LAYOUT.md +8 -8
  14. package/docs/archive/MILESTONE_v0.2.493.md +1 -1
  15. package/docs/index.md +2 -2
  16. package/docs/interop/POWERSHELL.md +1 -1
  17. package/docs/manual/00-introduction.md +1 -1
  18. package/docs/manual/01-concepts/02-trust-model.md +1 -1
  19. package/docs/manual/03-reference/02-config-files.md +2 -2
  20. package/docs/manual/_toc.yml +1 -1
  21. package/docs/manual/command-index.md +72 -59
  22. package/docs/operations/CI_COMPOSITES.md +2 -2
  23. package/docs/operations/COMPLETIONS.md +2 -2
  24. package/docs/operations/COVERAGE.md +5 -5
  25. package/docs/operations/HARD_AUDIT_2026.md +11 -11
  26. package/docs/operations/MAINTENANCE.md +3 -3
  27. package/docs/operations/MANIFEST.md +127 -0
  28. package/docs/operations/RELEASE_PIPELINE.md +130 -0
  29. package/docs/operations/RFC_v0_2_503_reorganization.md +280 -0
  30. package/docs/operations/ROADMAP_2026.md +6 -6
  31. package/docs/operations/ROADMAP_V0_2_503.md +134 -0
  32. package/docs/operations/TESTING.md +17 -0
  33. package/docs/operations/TRACEABILITY.md +6 -3
  34. package/docs/operations/VERSION_SYNC.md +4 -4
  35. package/docs/reference/POWERSHELL_PARITY.md +8 -7
  36. package/docs/schema/dot-env-v1.json +110 -0
  37. package/docs/security/CI_EGRESS_ALLOWLIST.md +1 -1
  38. package/docs/security/CI_PINNING.md +17 -9
  39. package/docs/security/DEPS_DEV_EXCEPTIONS.md +2 -2
  40. package/docs/security/FUZZING.md +114 -0
  41. package/docs/security/INSTALL_VERIFICATION.md +2 -2
  42. package/docs/security/POLICY_RELEASES.md +2 -2
  43. package/docs/security/SCORECARD.md +58 -3
  44. package/docs/security/SHELL_EXEMPTIONS.md +4 -4
  45. package/docs/security/VERIFY_RELEASE.md +201 -0
  46. package/install.sh +118 -5
  47. package/package.json +1 -1
  48. package/scripts/README.md +123 -0
  49. package/scripts/ci/check-copyright-headers.sh +4 -93
  50. package/scripts/ci/check-shell-preamble.sh +4 -103
  51. package/scripts/ci/guard-gitleaks-checkout.sh +4 -54
  52. package/scripts/diagnostics/a2a-conformance.sh +4 -4
  53. package/scripts/diagnostics/alias-governance.sh +1 -1
  54. package/scripts/diagnostics/aliases-cheatsheet.sh +2 -2
  55. package/scripts/diagnostics/benchmark.sh +5 -5
  56. package/scripts/diagnostics/conflicts.sh +2 -2
  57. package/scripts/diagnostics/doctor-unified.sh +3 -3
  58. package/scripts/diagnostics/doctor.sh +10 -10
  59. package/scripts/diagnostics/drift-dashboard.sh +2 -2
  60. package/scripts/diagnostics/health.sh +4 -4
  61. package/scripts/diagnostics/history-analysis.sh +2 -2
  62. package/scripts/diagnostics/mcp-doctor.sh +10 -7
  63. package/scripts/diagnostics/perf.sh +5 -5
  64. package/scripts/diagnostics/scorecard.sh +4 -4
  65. package/scripts/diagnostics/security-score.sh +25 -6
  66. package/scripts/diagnostics/smoke-test.sh +2 -2
  67. package/scripts/diagnostics/snapshot.sh +2 -2
  68. package/scripts/diagnostics/verify.sh +4 -4
  69. package/scripts/diagnostics/version-locks.sh +13 -3
  70. package/scripts/diagnostics/workstation-attestation.sh +14 -14
  71. package/scripts/dot/commands/agent.sh +8 -0
  72. package/scripts/dot/commands/agents.sh +14 -4
  73. package/scripts/dot/commands/ai.sh +156 -37
  74. package/scripts/dot/commands/appearance.sh +2 -2
  75. package/scripts/dot/commands/core.sh +2 -2
  76. package/scripts/dot/commands/diagnostics.sh +5 -5
  77. package/scripts/dot/commands/env-emit.sh +202 -0
  78. package/scripts/dot/commands/fleet.sh +22 -16
  79. package/scripts/dot/commands/init.sh +4 -4
  80. package/scripts/dot/commands/lint.sh +9 -4
  81. package/scripts/dot/commands/manual.sh +3 -3
  82. package/scripts/dot/commands/meta.sh +12 -6
  83. package/scripts/dot/commands/patterns.sh +2 -2
  84. package/scripts/dot/commands/registry.sh +4 -4
  85. package/scripts/dot/commands/restore.sh +4 -4
  86. package/scripts/dot/commands/secrets.sh +4 -3
  87. package/scripts/dot/commands/security.sh +2 -2
  88. package/scripts/dot/commands/tools.sh +13 -3
  89. package/scripts/dot/powershell/Dot.psm1 +199 -0
  90. package/scripts/fonts/install-nerd-fonts.sh +2 -2
  91. package/scripts/git-hooks/pre-commit-audit.sh +3 -3
  92. package/scripts/git-hooks/pre-push +13 -0
  93. package/scripts/ops/ai-setup.sh +1 -1
  94. package/scripts/ops/bundle.sh +3 -3
  95. package/scripts/ops/chaos.sh +2 -2
  96. package/scripts/ops/chezmoi-apply.sh +12 -6
  97. package/scripts/ops/heal.sh +4 -4
  98. package/scripts/ops/post-apply-repair.sh +2 -2
  99. package/scripts/ops/prewarm.sh +2 -2
  100. package/scripts/ops/release.sh +4 -4
  101. package/scripts/ops/rollback.sh +4 -4
  102. package/scripts/ops/setup.sh +2 -2
  103. package/scripts/qa/check-version-consistency.sh +123 -0
  104. package/scripts/qa/coverage-baseline.sh +1 -1
  105. package/scripts/qa/docs-coverage.sh +2 -2
  106. package/scripts/qa/powershell-contract.ps1 +1 -1
  107. package/scripts/qa/scorecard-snapshot.sh +127 -0
  108. package/scripts/security/backup.sh +2 -2
  109. package/scripts/security/dns-doh.sh +4 -4
  110. package/scripts/security/encryption-check.sh +4 -4
  111. package/scripts/security/enforce-policies.sh +2 -2
  112. package/scripts/security/firewall.sh +4 -4
  113. package/scripts/security/lock-screen.sh +4 -4
  114. package/scripts/security/manage-secrets.sh +2 -2
  115. package/scripts/security/ssh-cert.sh +2 -2
  116. package/scripts/security/telemetry-kill.sh +4 -4
  117. package/scripts/security/usb-safety.sh +4 -4
  118. package/scripts/theme/extract-heic-frames.sh +114 -0
  119. package/scripts/theme/rebuild-themes.sh +31 -2
  120. package/scripts/theme/switch.sh +13 -6
  121. package/scripts/theme/wallpaper-sync.sh +297 -93
  122. package/scripts/tuning/linux.sh +2 -2
  123. package/scripts/tuning/macos.sh +2 -2
  124. package/scripts/version-sync.sh +74 -10
  125. package/dot_config/.module-manifest.json +0 -69
  126. package/dot_config/ai/identity.md +0 -23
  127. package/dot_config/ai/patterns/architect.md +0 -16
  128. package/dot_config/ai/patterns/hardener.md +0 -15
  129. package/dot_config/ai/patterns/refactor.md +0 -15
  130. package/dot_config/aider/aider.conf.yml +0 -32
  131. package/dot_config/alacritty/alacritty.toml.tmpl +0 -55
  132. package/dot_config/ansible/ansible.cfg +0 -11
  133. package/dot_config/atuin/config.toml.tmpl +0 -47
  134. package/dot_config/bat/config +0 -23
  135. package/dot_config/brave-flags.conf.tmpl +0 -7
  136. package/dot_config/btop/btop.conf +0 -16
  137. package/dot_config/btop/themes/tokyonight.theme +0 -34
  138. package/dot_config/bun/bunfig.toml.tmpl +0 -33
  139. package/dot_config/claude/mcp_servers.json +0 -20
  140. package/dot_config/containers/containers.conf +0 -14
  141. package/dot_config/curl/dot_curlrc +0 -18
  142. package/dot_config/dlv/config.yml +0 -39
  143. package/dot_config/docker/config.json +0 -15
  144. package/dot_config/dotfiles/agent-card.json +0 -29
  145. package/dot_config/dotfiles/agent-profiles.json +0 -92
  146. package/dot_config/dotfiles/boot/README.md +0 -13
  147. package/dot_config/dotfiles/grub/README.md +0 -13
  148. package/dot_config/dotfiles/lock/README.md +0 -13
  149. package/dot_config/dotfiles/mcp-lock.json +0 -33
  150. package/dot_config/dotfiles/mcp-policy.json +0 -52
  151. package/dot_config/dotfiles/mcp-registry.json +0 -47
  152. package/dot_config/dotfiles/model-registry.json +0 -20
  153. package/dot_config/dotfiles/policy-bundles.json +0 -38
  154. package/dot_config/dotfiles/prompt-registry.json +0 -16
  155. package/dot_config/dotfiles/versions.env +0 -18
  156. package/dot_config/duf/duf.conf +0 -6
  157. package/dot_config/duti/defaults.duti +0 -5
  158. package/dot_config/emoji/emoji.txt +0 -34
  159. package/dot_config/environment.d/50-ssh-agent.conf +0 -2
  160. package/dot_config/environment.d/90-wayland.conf +0 -19
  161. package/dot_config/fastfetch/config.jsonc +0 -28
  162. package/dot_config/firefox/user.js.tmpl +0 -58
  163. package/dot_config/fish/completions/dot-theme-sync.fish.tmpl +0 -9
  164. package/dot_config/fish/completions/dot.fish.tmpl +0 -115
  165. package/dot_config/fish/conf.d/000-perf-cache.fish +0 -56
  166. package/dot_config/fish/conf.d/aliases.fish.tmpl +0 -77
  167. package/dot_config/fish/conf.d/direnv.fish +0 -4
  168. package/dot_config/fish/conf.d/env.fish.tmpl +0 -48
  169. package/dot_config/fish/conf.d/functions.fish.tmpl +0 -22
  170. package/dot_config/fish/conf.d/init.fish.tmpl +0 -172
  171. package/dot_config/fish/conf.d/mise-activate.fish +0 -5
  172. package/dot_config/fish/config.fish.tmpl +0 -44
  173. package/dot_config/fish/fish_plugins +0 -1
  174. package/dot_config/fish/functions/_.fish +0 -3
  175. package/dot_config/fish/functions/_cached_eval.fish +0 -131
  176. package/dot_config/fish/functions/_cached_eval_clear.fish +0 -17
  177. package/dot_config/fish/functions/als.fish +0 -46
  178. package/dot_config/fish/functions/bg-upgrade.fish +0 -7
  179. package/dot_config/fish/functions/c.fish +0 -3
  180. package/dot_config/fish/functions/cat.fish +0 -9
  181. package/dot_config/fish/functions/d.fish +0 -7
  182. package/dot_config/fish/functions/dot.fish +0 -34
  183. package/dot_config/fish/functions/h.fish +0 -3
  184. package/dot_config/fish/functions/l.fish +0 -7
  185. package/dot_config/fish/functions/la.fish +0 -7
  186. package/dot_config/fish/functions/ll.fish +0 -7
  187. package/dot_config/fish/functions/log_error.fish +0 -13
  188. package/dot_config/fish/functions/log_info.fish +0 -13
  189. package/dot_config/fish/functions/lr.fish +0 -7
  190. package/dot_config/fish/functions/lra.fish +0 -7
  191. package/dot_config/fish/functions/ls.fish +0 -7
  192. package/dot_config/fish/functions/lt.fish +0 -7
  193. package/dot_config/fish/functions/lta.fish +0 -7
  194. package/dot_config/fish/functions/notify-run.fish +0 -11
  195. package/dot_config/fish/functions/q.fish +0 -3
  196. package/dot_config/fish/functions/silent-run.fish +0 -7
  197. package/dot_config/fish/functions/yy.fish +0 -8
  198. package/dot_config/flatpak/flatpak.list +0 -4
  199. package/dot_config/fontconfig/fonts.conf.tmpl +0 -57
  200. package/dot_config/foot/foot.ini.tmpl +0 -33
  201. package/dot_config/fuzzel/fuzzel.ini.tmpl +0 -18
  202. package/dot_config/fzf/fzf.zsh +0 -48
  203. package/dot_config/gem/gemrc +0 -9
  204. package/dot_config/gh/config.yml +0 -12
  205. package/dot_config/ghostty/config.tmpl +0 -165
  206. package/dot_config/git/allowed_signers.tmpl +0 -18
  207. package/dot_config/git/attributes +0 -12
  208. package/dot_config/git/commit-template +0 -10
  209. package/dot_config/git/hooks/executable_commit-msg +0 -146
  210. package/dot_config/git/ignore +0 -27
  211. package/dot_config/gnupg/gpg-agent.conf +0 -11
  212. package/dot_config/go/golangci.yml +0 -118
  213. package/dot_config/go/gopls.json +0 -30
  214. package/dot_config/goose/config.yaml +0 -29
  215. package/dot_config/gtk-3.0/gtk.css.tmpl +0 -184
  216. package/dot_config/gtk-3.0/settings.ini.tmpl +0 -27
  217. package/dot_config/gtk-4.0/gtk.css.tmpl +0 -252
  218. package/dot_config/gtk-4.0/settings.ini.tmpl +0 -18
  219. package/dot_config/htop/htoprc +0 -20
  220. package/dot_config/inputrc +0 -2
  221. package/dot_config/ipython/profile_default/ipython_config.py +0 -19
  222. package/dot_config/just/justfile +0 -122
  223. package/dot_config/k9s/config.yaml +0 -65
  224. package/dot_config/k9s/skins/catppuccin-mocha.yaml +0 -116
  225. package/dot_config/kanshi/config.tmpl +0 -22
  226. package/dot_config/karabiner/karabiner.json +0 -14
  227. package/dot_config/kitty/kitty.conf.tmpl +0 -53
  228. package/dot_config/lazydocker/config.yml +0 -186
  229. package/dot_config/lazygit/config.yml +0 -35
  230. package/dot_config/mako/config +0 -47
  231. package/dot_config/mas/masapps.txt +0 -5
  232. package/dot_config/micro/settings.json +0 -3
  233. package/dot_config/mimeapps.list +0 -77
  234. package/dot_config/minikube/config.json +0 -13
  235. package/dot_config/mise/config.toml +0 -99
  236. package/dot_config/mongosh/mongoshrc.js +0 -68
  237. package/dot_config/mpv/input.conf +0 -47
  238. package/dot_config/mpv/mpv.conf +0 -47
  239. package/dot_config/mycli/myclirc +0 -67
  240. package/dot_config/nano/nanorc +0 -28
  241. package/dot_config/ncdu/config +0 -12
  242. package/dot_config/niri/config.kdl.tmpl +0 -327
  243. package/dot_config/nushell/aliases.nu +0 -18
  244. package/dot_config/nushell/cached_eval.nu +0 -80
  245. package/dot_config/nushell/completions.nu.tmpl +0 -52
  246. package/dot_config/nushell/config.nu.tmpl +0 -86
  247. package/dot_config/nushell/env.nu.tmpl +0 -102
  248. package/dot_config/nushell/functions.nu.tmpl +0 -17
  249. package/dot_config/nvim/init.lua +0 -18
  250. package/dot_config/nvim/lazy-lock.json +0 -58
  251. package/dot_config/nvim/lua/config/autocmds.lua +0 -107
  252. package/dot_config/nvim/lua/config/keymaps.lua +0 -92
  253. package/dot_config/nvim/lua/config/lazy.lua +0 -44
  254. package/dot_config/nvim/lua/config/options.lua +0 -49
  255. package/dot_config/nvim/lua/plugins/ai.lua +0 -75
  256. package/dot_config/nvim/lua/plugins/coding.lua +0 -216
  257. package/dot_config/nvim/lua/plugins/completion.lua +0 -60
  258. package/dot_config/nvim/lua/plugins/dap.lua +0 -412
  259. package/dot_config/nvim/lua/plugins/editor.lua +0 -55
  260. package/dot_config/nvim/lua/plugins/git.lua +0 -10
  261. package/dot_config/nvim/lua/plugins/lsp.lua +0 -156
  262. package/dot_config/nvim/lua/plugins/markdown.lua +0 -18
  263. package/dot_config/nvim/lua/plugins/rust.lua +0 -34
  264. package/dot_config/nvim/lua/plugins/sessions.lua +0 -33
  265. package/dot_config/nvim/lua/plugins/ui.lua +0 -509
  266. package/dot_config/paru/paru.conf +0 -10
  267. package/dot_config/pip/pip.conf.tmpl +0 -32
  268. package/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl +0 -81
  269. package/dot_config/pueue/pueue.yml +0 -34
  270. package/dot_config/pypoetry/config.toml +0 -6
  271. package/dot_config/pyrightconfig.json +0 -5
  272. package/dot_config/raycast/README.md +0 -13
  273. package/dot_config/redis/redisclirc +0 -41
  274. package/dot_config/ripgrep/ripgreprc +0 -21
  275. package/dot_config/shell/00-core-paths.sh.tmpl +0 -141
  276. package/dot_config/shell/05-core-safety.sh +0 -48
  277. package/dot_config/shell/10-secrets.sh +0 -41
  278. package/dot_config/shell/40-fzf-defaults.sh.tmpl +0 -17
  279. package/dot_config/shell/40-ls-colors.sh +0 -49
  280. package/dot_config/shell/50-logic-functions-core.sh.tmpl +0 -11
  281. package/dot_config/shell/50-logic-functions.sh.tmpl +0 -11
  282. package/dot_config/shell/51-logic-functions-extra.sh.tmpl +0 -65
  283. package/dot_config/shell/90-ux-aliases.sh.tmpl +0 -121
  284. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +0 -55
  285. package/dot_config/shell/Brewfile +0 -207
  286. package/dot_config/shell/Brewfile.cask +0 -92
  287. package/dot_config/shell/Brewfile.cli +0 -127
  288. package/dot_config/shell/README.md +0 -284
  289. package/dot_config/shell/als_data.txt.tmpl +0 -65
  290. package/dot_config/shell/custom/auto_ls.zsh +0 -20
  291. package/dot_config/shell/custom/context_suggest.zsh +0 -68
  292. package/dot_config/shell/custom/error_analysis.zsh +0 -45
  293. package/dot_config/sops/dot_sops.yaml +0 -23
  294. package/dot_config/starship.toml.tmpl +0 -202
  295. package/dot_config/swaylock/config +0 -43
  296. package/dot_config/systemd/user/dotfiles-maintenance.service +0 -8
  297. package/dot_config/systemd/user/dotfiles-maintenance.timer +0 -11
  298. package/dot_config/systemd/user/pueued.service +0 -12
  299. package/dot_config/systemd/user/ssh-agent.service +0 -12
  300. package/dot_config/task/Taskfile.yml +0 -86
  301. package/dot_config/tflint/tflint.hcl +0 -9
  302. package/dot_config/tmux/tmux.conf.tmpl +0 -223
  303. package/dot_config/topgrade.toml.tmpl +0 -54
  304. package/dot_config/user-dirs.dirs +0 -10
  305. package/dot_config/vscode/extensions.txt +0 -11
  306. package/dot_config/vscode/settings.json.tmpl +0 -82
  307. package/dot_config/waybar/config.jsonc.tmpl +0 -90
  308. package/dot_config/waybar/style.css.tmpl +0 -211
  309. package/dot_config/wezterm/wezterm.lua.tmpl +0 -64
  310. package/dot_config/wget/wgetrc +0 -12
  311. package/dot_config/xdg-desktop-portal/niri-portals.conf +0 -5
  312. package/dot_config/yarn/yarnrc.yml +0 -36
  313. package/dot_config/yazi/keymap.toml +0 -67
  314. package/dot_config/yazi/theme.toml +0 -102
  315. package/dot_config/yazi/yazi.toml +0 -40
  316. package/dot_config/zathura/zathurarc +0 -52
  317. package/dot_config/zellij/config.kdl.tmpl +0 -79
  318. package/dot_config/zsh/dot_zprofile +0 -7
  319. package/dot_config/zsh/dot_zshenv +0 -5
  320. package/dot_config/zsh/dot_zshrc.tmpl +0 -688
  321. package/dot_config/zsh/rc.d/00-alias-shims.zsh +0 -99
  322. package/dot_config/zsh/rc.d/05-ssh-agent.zsh +0 -18
  323. package/dot_config/zsh/rc.d/10-env.zsh.tmpl +0 -28
  324. package/dot_config/zsh/rc.d/20-zinit.zsh +0 -65
  325. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +0 -214
  326. package/dot_config/zsh/rc.d/40-bell.zsh +0 -20
  327. package/dot_config/zsh/rc.d/50-login-fortune.zsh +0 -9
  328. package/dot_config/zsh/rc.d/99-alias-wrapper.zsh +0 -32
  329. package/dot_local/bin/executable_ai-update +0 -195
  330. package/dot_local/bin/executable_ai_core +0 -152
  331. package/dot_local/bin/executable_antigravity +0 -11
  332. package/dot_local/bin/executable_b64 +0 -84
  333. package/dot_local/bin/executable_bm +0 -79
  334. package/dot_local/bin/executable_cb +0 -39
  335. package/dot_local/bin/executable_dot +0 -636
  336. package/dot_local/bin/executable_dot-ai +0 -36
  337. package/dot_local/bin/executable_dot-bootstrap +0 -76
  338. package/dot_local/bin/executable_dot-launch-or-focus +0 -52
  339. package/dot_local/bin/executable_dot-load-benchmark +0 -31
  340. package/dot_local/bin/executable_dot-load-benchmark-pty +0 -77
  341. package/dot_local/bin/executable_dot-theme-sync +0 -952
  342. package/dot_local/bin/executable_dot_completion +0 -57
  343. package/dot_local/bin/executable_dtags +0 -28
  344. package/dot_local/bin/executable_epoch +0 -67
  345. package/dot_local/bin/executable_extract +0 -41
  346. package/dot_local/bin/executable_gbd +0 -52
  347. package/dot_local/bin/executable_gd +0 -42
  348. package/dot_local/bin/executable_git-ai-commit +0 -175
  349. package/dot_local/bin/executable_git-ai-diff +0 -169
  350. package/dot_local/bin/executable_gl +0 -101
  351. package/dot_local/bin/executable_hash +0 -161
  352. package/dot_local/bin/executable_hashsum +0 -160
  353. package/dot_local/bin/executable_hex +0 -115
  354. package/dot_local/bin/executable_jsonv +0 -78
  355. package/dot_local/bin/executable_jwt +0 -94
  356. package/dot_local/bin/executable_kill-port +0 -75
  357. package/dot_local/bin/executable_lorem +0 -118
  358. package/dot_local/bin/executable_mkscript +0 -35
  359. package/dot_local/bin/executable_monitor +0 -56
  360. package/dot_local/bin/executable_myip +0 -51
  361. package/dot_local/bin/executable_notify +0 -24
  362. package/dot_local/bin/executable_open +0 -38
  363. package/dot_local/bin/executable_pw +0 -27
  364. package/dot_local/bin/executable_rec-start +0 -46
  365. package/dot_local/bin/executable_rec-stop +0 -35
  366. package/dot_local/bin/executable_regex +0 -132
  367. package/dot_local/bin/executable_start-niri +0 -8
  368. package/dot_local/bin/executable_tmux-sessionizer +0 -314
  369. package/dot_local/bin/executable_tour +0 -177
  370. package/dot_local/bin/executable_up +0 -23
  371. package/dot_local/bin/executable_update +0 -142
  372. package/dot_local/bin/executable_uuid +0 -87
  373. package/dot_local/bin/executable_win +0 -32
  374. package/dot_local/bin/executable_yamlv +0 -57
  375. package/dot_local/share/bash-completion/completions/dot +0 -72
  376. package/dot_local/share/icons/hicolor/128x128/apps/rousseau.png +0 -0
  377. package/dot_local/share/icons/hicolor/16x16/apps/rousseau.png +0 -0
  378. package/dot_local/share/icons/hicolor/24x24/apps/rousseau.png +0 -0
  379. package/dot_local/share/icons/hicolor/256x256/apps/rousseau.png +0 -0
  380. package/dot_local/share/icons/hicolor/32x32/apps/rousseau.png +0 -0
  381. package/dot_local/share/icons/hicolor/48x48/apps/rousseau.png +0 -0
  382. package/dot_local/share/icons/hicolor/512x512/apps/rousseau.png +0 -0
  383. package/dot_local/share/icons/hicolor/64x64/apps/rousseau.png +0 -0
  384. package/dot_local/share/icons/hicolor/96x96/apps/rousseau.png +0 -0
  385. package/dot_local/share/icons/hicolor/scalable/apps/rousseau.png +0 -0
  386. package/dot_local/share/man/man1/dot.1 +0 -149
  387. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_download +0 -64
  388. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_install +0 -18
  389. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_list-all +0 -13
  390. package/dot_local/share/wayland-sessions/niri.desktop.tmpl +0 -6
  391. package/dot_local/share/zsh/completions/.keep +0 -0
  392. package/dot_local/share/zsh/completions/_dot +0 -287
  393. package/scripts/ci/check-dangerous-chmod.sh +0 -19
  394. package/scripts/ci/check-deps-dev.sh +0 -236
  395. package/scripts/ci/check-insecure-tls.sh +0 -61
  396. package/scripts/ci/check-regression-traceability.sh +0 -67
  397. package/scripts/ci/dot-cli-startup-bench.sh +0 -126
  398. package/scripts/ci/install-chezmoi-verified.sh +0 -67
  399. package/scripts/ci/lint-reusable-pins.sh +0 -78
  400. package/scripts/ci/run-coverage.sh +0 -451
  401. package/scripts/ci/validate-chezmoidata.sh +0 -25
  402. package/scripts/ci/validate-ci-config.sh +0 -224
  403. package/scripts/ci/windows-smoke-test.ps1 +0 -136
  404. package/scripts/docs/build-manual.sh +0 -883
  405. package/scripts/docs/check-manual.sh +0 -213
  406. package/scripts/dot/lib/bento.sh +0 -50
  407. package/scripts/dot/lib/log.sh +0 -200
  408. package/scripts/dot/lib/platform.sh +0 -112
  409. package/scripts/dot/lib/ui.sh +0 -650
  410. package/scripts/dot/lib/utils.sh +0 -377
  411. package/scripts/maintenance/check-updates.sh +0 -131
  412. package/scripts/release/package-policy-bundles.sh +0 -125
@@ -1,115 +0,0 @@
1
- # Fish completion for 'dot' CLI
2
- # 🅳🅾🆃🅵🅸🅻🅴🆂 (v{{ .dotfiles_version }})
3
-
4
- # Disable file completions for subcommands
5
- complete -c dot -f
6
-
7
- # Core Commands
8
- complete -c dot -n "__fish_use_subcommand" -a apply -d "Apply dotfiles configuration"
9
- complete -c dot -n "__fish_use_subcommand" -a sync -d "Alias of apply"
10
- complete -c dot -n "__fish_use_subcommand" -a update -d "Pull latest changes and apply"
11
- complete -c dot -n "__fish_use_subcommand" -a clean-cache -d "Clear shell initialization caches"
12
- complete -c dot -n "__fish_use_subcommand" -a prewarm -d "Regenerate shell caches for ultra-fast startup"
13
- complete -c dot -n "__fish_use_subcommand" -a cl -d "Claude CLI with context patterns"
14
- complete -c dot -n "__fish_use_subcommand" -a copilot -d "GitHub Copilot CLI with context patterns"
15
- complete -c dot -n "__fish_use_subcommand" -a gemini -d "Gemini CLI with context patterns"
16
- complete -c dot -n "__fish_use_subcommand" -a kiro -d "Kiro CLI with context patterns"
17
- complete -c dot -n "__fish_use_subcommand" -a sgpt -d "Shell-GPT with context patterns"
18
- complete -c dot -n "__fish_use_subcommand" -a ollama -d "Ollama with context patterns"
19
- complete -c dot -n "__fish_use_subcommand" -a opencode -d "OpenCode with context patterns"
20
- complete -c dot -n "__fish_use_subcommand" -a aider -d "Aider with context patterns"
21
- complete -c dot -n "__fish_use_subcommand" -a add -d "Add a file to chezmoi source"
22
-
23
- # AI Pattern completions for AI CLIs
24
- for cmd in cl copilot gemini kiro sgpt ollama opencode aider
25
- complete -c dot -n "__fish_seen_subcommand_from $cmd" -s p -l pattern -x -a "(ls -1 ~/.config/ai/patterns 2>/dev/null | sed 's/\.md\$//')"
26
- end
27
- complete -c dot -n "__fish_use_subcommand" -a diff -d "Show chezmoi diff with exclusions"
28
- complete -c dot -n "__fish_use_subcommand" -a status -d "Show configuration drift"
29
- complete -c dot -n "__fish_use_subcommand" -a remove -d "Safely remove a managed file"
30
- complete -c dot -n "__fish_use_subcommand" -a cd -d "Print source directory path"
31
- complete -c dot -n "__fish_use_subcommand" -a edit -d "Open chezmoi source in $EDITOR"
32
- complete -c dot -n "__fish_use_subcommand" -a patterns -d "Manage AI steering patterns"
33
- complete -c dot -n "__fish_use_subcommand" -a commit -d "AI-powered conventional commit"
34
-
35
- # Diagnostics
36
- complete -c dot -n "__fish_use_subcommand" -a doctor -d "Check system health and configuration"
37
- complete -c dot -n "__fish_use_subcommand" -a heal -d "Auto-repair common dotfiles issues"
38
- complete -c dot -n "__fish_use_subcommand" -a health -d "Run comprehensive health check"
39
- complete -c dot -n "__fish_use_subcommand" -a smoke-test -d "Run automated toolchain verification"
40
- complete -c dot -n "__fish_use_subcommand" -a chaos -d "Simulate config corruption"
41
- complete -c dot -n "__fish_use_subcommand" -a scorecard -d "Show the unified scorecard"
42
- complete -c dot -n "__fish_use_subcommand" -a security-score -d "Score workstation security"
43
- complete -c dot -n "__fish_use_subcommand" -a drift -d "Drift dashboard"
44
- complete -c dot -n "__fish_use_subcommand" -a history -d "Shell history analysis"
45
- complete -c dot -n "__fish_use_subcommand" -a benchmark -d "Run shell startup benchmark"
46
- complete -c dot -n "__fish_use_subcommand" -a perf -d "Show current performance mode"
47
- complete -c dot -n "__fish_use_subcommand" -a snapshot -d "Capture workstation state"
48
- complete -c dot -n "__fish_use_subcommand" -a verify -d "Run verification checks"
49
- complete -c dot -n "__fish_use_subcommand" -a restore -d "Restore from backup or git ref"
50
- complete -c dot -n "__fish_use_subcommand" -a ai -d "Show AI helper status"
51
- complete -c dot -n "__fish_use_subcommand" -a ai-setup -d "Interactive setup for all AI CLI tools"
52
- complete -c dot -n "__fish_use_subcommand" -a ai-query -d "Context-aware RAG query over your dotfiles"
53
- complete -c dot -n "__fish_use_subcommand" -a attest -d "Export workstation attestation evidence"
54
- complete -c dot -n "__fish_use_subcommand" -a lint -d "Lint shell scripts"
55
-
56
- # Tools
57
- complete -c dot -n "__fish_use_subcommand" -a tools -d "Show or install nix packages"
58
- complete -c dot -n "__fish_use_subcommand" -a new -d "Create a new project from a template"
59
- complete -c dot -n "__fish_use_subcommand" -a sandbox -d "Launch a safe sandbox preview"
60
- complete -c dot -n "__fish_use_subcommand" -a keys -d "Show keybindings catalog"
61
- complete -c dot -n "__fish_use_subcommand" -a learn -d "Interactive tour"
62
- complete -c dot -n "__fish_use_subcommand" -a docs -d "Show repo README"
63
- complete -c dot -n "__fish_use_subcommand" -a env -d "Show managed tool versions"
64
- complete -c dot -n "__fish_use_subcommand" -a profile -d "Show or switch configuration profile"
65
-
66
- # Appearance
67
- complete -c dot -n "__fish_use_subcommand" -a theme -d "Switch terminal theme (dark/light)"
68
- complete -c dot -n "__fish_use_subcommand" -a wallpaper -d "Apply a wallpaper"
69
- complete -c dot -n "__fish_use_subcommand" -a fonts -d "Install Nerd Fonts"
70
-
71
- # Secrets & Security
72
- complete -c dot -n "__fish_use_subcommand" -a secrets-init -d "Initialize age key for secrets"
73
- complete -c dot -n "__fish_use_subcommand" -a secrets -d "Edit encrypted secrets"
74
- complete -c dot -n "__fish_use_subcommand" -a bundle -d "Create offline archive"
75
- complete -c dot -n "__fish_use_subcommand" -a upgrade -d "Update flake, plugins, and dotfiles"
76
- complete -c dot -n "__fish_use_subcommand" -a mcp -d "Inspect MCP policy and registry"
77
- complete -c dot -n "__fish_use_subcommand" -a mode -d "Show or set the agent profile"
78
- complete -c dot -n "__fish_use_subcommand" -a agent -d "Show agent metadata and logs"
79
- complete -c dot -n "__fish_use_subcommand" -a search -d "Find commands by keyword"
80
-
81
- # Meta
82
- complete -c dot -n "__fish_use_subcommand" -a "version --version" -d "Show version"
83
- complete -c dot -n "__fish_use_subcommand" -a help -d "Show help"
84
-
85
- # Focused command flags
86
- complete -c dot -n "__fish_seen_subcommand_from doctor" -s H -l heal -d "Auto-repair common issues"
87
- complete -c dot -n "__fish_seen_subcommand_from doctor" -s s -l score -d "Show score output"
88
- complete -c dot -n "__fish_seen_subcommand_from doctor" -s j -l json -d "Emit JSON summary"
89
- complete -c dot -n "__fish_seen_subcommand_from doctor" -s A -l ai -d "Include AI diagnostics"
90
- complete -c dot -n "__fish_seen_subcommand_from attest" -s j -l json -d "Emit JSON output"
91
- complete -c dot -n "__fish_seen_subcommand_from attest" -s w -l write -r -d "Write attestation to a file"
92
- complete -c dot -n "__fish_seen_subcommand_from lint" -s c -l check -d "Run check-only mode"
93
- complete -c dot -n "__fish_seen_subcommand_from lint" -s f -l fix -d "Apply safe fixes"
94
- complete -c dot -n "__fish_seen_subcommand_from mcp" -s s -l strict -d "Treat policy warnings as errors"
95
- complete -c dot -n "__fish_seen_subcommand_from mcp" -s j -l json -d "Emit JSON summary"
96
- complete -c dot -n "__fish_seen_subcommand_from mcp" -a registry -d "Show the MCP registry"
97
- complete -c dot -n "__fish_seen_subcommand_from health" -s v -l verbose -d "Show detailed checks"
98
- complete -c dot -n "__fish_seen_subcommand_from health" -s j -l json -d "Emit JSON summary"
99
- complete -c dot -n "__fish_seen_subcommand_from health" -s f -l fix -d "Apply common fixes"
100
- complete -c dot -n "__fish_seen_subcommand_from health" -s F -l force -d "Apply fixes without prompts"
101
- complete -c dot -n "__fish_seen_subcommand_from perf" -s j -l json -d "Emit JSON timing data"
102
- complete -c dot -n "__fish_seen_subcommand_from perf" -s p -l profile -d "Include profile output"
103
- complete -c dot -n "__fish_seen_subcommand_from perf" -s r -l runs -x -d "Set the number of runs"
104
- complete -c dot -n "__fish_seen_subcommand_from perf" -s t -l target -x -d "Set the timing target in milliseconds"
105
- complete -c dot -n "__fish_seen_subcommand_from security-score" -s v -l verbose -d "Show detailed scoring"
106
- complete -c dot -n "__fish_seen_subcommand_from security-score" -s q -l quiet -d "Reduce output noise"
107
- complete -c dot -n "__fish_seen_subcommand_from security-score" -s j -l json -d "Emit JSON summary"
108
- complete -c dot -n "__fish_seen_subcommand_from snapshot" -s b -l baseline -d "Capture the baseline snapshot"
109
- complete -c dot -n "__fish_seen_subcommand_from snapshot" -s f -l force -d "Overwrite an existing snapshot"
110
- complete -c dot -n "__fish_seen_subcommand_from verify" -s s -l security -d "Run security verification"
111
- complete -c dot -n "__fish_seen_subcommand_from restore" -s l -l list -d "List available backups"
112
- complete -c dot -n "__fish_seen_subcommand_from restore" -s L -l latest -d "Restore the latest backup"
113
- complete -c dot -n "__fish_seen_subcommand_from restore" -s g -l git -x -d "Restore from a git ref"
114
- complete -c dot -n "__fish_seen_subcommand_from restore" -s d -l diff -x -d "Show a diff for a git ref"
115
- complete -c dot -n "__fish_seen_subcommand_from restore" -s n -l dry-run -d "Preview the restore"
@@ -1,56 +0,0 @@
1
- # Startup performance cache
2
- # Loaded before vendor conf.d — intercepts slow commands with cached results.
3
-
4
- # Fast fish_add_path replacement — builtins only, no argparse overhead.
5
- # Shadows the standard fish_add_path function (autoloaded from /usr/share/fish/).
6
- # Handles the common calling conventions used by vendor conf.d scripts.
7
- function fish_add_path
8
- set -l append false
9
- set -l paths
10
- for arg in $argv
11
- switch $arg
12
- case --append -a
13
- set append true
14
- case --global --path -g -p -P -U
15
- # Accepted and ignored — we always use global scope + PATH
16
- case '--*' '-*'
17
- # Ignore unknown flags
18
- case '*'
19
- set -a paths $arg
20
- end
21
- end
22
- for p in $paths
23
- if not contains -- $p $PATH
24
- if $append
25
- set -g --append PATH $p
26
- else
27
- set -g --prepend PATH $p
28
- end
29
- end
30
- end
31
- end
32
-
33
- # Cache flatpak --installations (saves ~11ms per startup).
34
- # The vendor /usr/share/fish/vendor_conf.d/flatpak.fish calls this on every
35
- # shell start. We wrap it so only the first call after cache expiry is slow.
36
- # Cache is refreshed by `dot prewarm` or manually:
37
- # command flatpak --installations > ~/.cache/fish/flatpak-installations
38
- if type -q flatpak
39
- function flatpak --wraps flatpak
40
- if test (count $argv) -eq 1; and test "$argv[1]" = --installations
41
- set -l cache "$HOME/.cache/fish/flatpak-installations"
42
- if test -f "$cache"
43
- while read -l line
44
- echo $line
45
- end <"$cache"
46
- return 0
47
- end
48
- mkdir -p "$HOME/.cache/fish"
49
- command flatpak --installations 2>/dev/null | tee "$cache"
50
- return 0
51
- end
52
- command flatpak $argv
53
- end
54
- end
55
-
56
- status is-interactive; or return
@@ -1,77 +0,0 @@
1
- {{- $fishFuncsPattern := joinPath .chezmoi.sourceDir "dot_config/fish/functions/*.fish" -}}
2
- {{- $fishFuncs := glob $fishFuncsPattern -}}
3
- # Fish aliases — bridged from bash alias library (Generated by Chezmoi)
4
- # Edit .chezmoitemplates/aliases/ source files, not this file.
5
- #
6
- # Data flow: .chezmoitemplates/aliases/ -> 90/91-ux-aliases*.sh -> bash bridge -> cache
7
-
8
- if status is-interactive
9
- set -l _cache_dir "$HOME/.cache/fish"
10
- set -l _alias_cache "$_cache_dir/bash-aliases.fish"
11
- set -l _src_eager "$HOME/.config/shell/90-ux-aliases.sh"
12
- set -l _src_lazy "$HOME/.config/shell/91-ux-aliases-lazy.sh"
13
-
14
- # Native fish functions that must not be overridden by bash aliases
15
- set -l _skip{{ range $fishFuncs }} {{ trimSuffix ".fish" (base .) }}{{ end }}
16
-
17
- # Rebuild cache when alias sources change or cache is missing
18
- set -l _stale 0
19
- if not test -f "$_alias_cache"
20
- set _stale 1
21
- else if test -f "$_src_eager"; and test "$_src_eager" -nt "$_alias_cache"
22
- set _stale 1
23
- else if test -f "$_src_lazy"; and test "$_src_lazy" -nt "$_alias_cache"
24
- set _stale 1
25
- end
26
-
27
- if test "$_stale" = 1
28
- mkdir -p "$_cache_dir"
29
- # Source bash aliases, filter fish-incompatible syntax, write cache
30
- env -i HOME="$HOME" PATH="$PATH" bash --norc --noprofile -c '
31
- source "$HOME/.config/shell/90-ux-aliases.sh" 2>/dev/null
32
- source "$HOME/.config/shell/91-ux-aliases-lazy.sh" 2>/dev/null
33
- alias -p 2>/dev/null | while IFS= read -r line; do
34
- name="${line#alias }"
35
- name="${name#-- }"
36
- name="${name%%=*}"
37
- [[ "$name" =~ ^[a-zA-Z_][a-zA-Z0-9_.-]*$ ]] || continue
38
- val="${line#*=}"
39
- # Skip bash-specific syntax incompatible with fish
40
- case "$val" in
41
- *\$\{*) continue ;;
42
- *"; then "*) continue ;;
43
- *"[[ "*) continue ;;
44
- *\`*) continue ;;
45
- esac
46
- printf "alias %s=%s\n" "$name" "$val"
47
- done
48
- ' 2>/dev/null | while read -l _line
49
- set -l _parts (string match -r '^alias ([^=]+)=' -- "$_line")
50
- set -l _name
51
- if set -q _parts[2]
52
- set _name $_parts[2]
53
- end
54
- set -l _target (string replace -r '^alias [^=]+=["'\'']?([^ "'\'']+).*$' '$1' -- "$_line")
55
- if set -q _name[1]; and not contains -- "$_name" $_skip
56
- if string match -rq '^dot_[a-z0-9_]+$' -- "$_target"
57
- continue
58
- end
59
- echo "$_line"
60
- end
61
- end >"$_alias_cache.tmp"
62
- mv "$_alias_cache.tmp" "$_alias_cache"
63
- end
64
-
65
- # Source cached aliases
66
- if test -s "$_alias_cache"
67
- source "$_alias_cache"
68
- end
69
-
70
- # Remove stale alias wrappers that reference bash-only helper functions.
71
- if functions -q cat; and not functions -q dot_cat
72
- set -l _cat_def (functions cat)
73
- if string match -rq 'dot_cat \$argv' -- "$_cat_def"
74
- functions -e cat
75
- end
76
- end
77
- end
@@ -1,4 +0,0 @@
1
- # Shadow vendor `/opt/homebrew/share/fish/vendor_conf.d/direnv.fish`.
2
- # fish dedupes conf.d files by basename — user conf.d wins. Direnv is
3
- # loaded lazily by `_dotfiles_async_init` in init.fish via `_cached_eval
4
- # direnv hook fish`, avoiding the unconditional cost on every shell start.
@@ -1,48 +0,0 @@
1
- # 🅳🅾🆃🅵🅸🅻🅴🆂 (v{{ .dotfiles_version }}) — Environment, PATH, and tool defaults
2
- # Consolidated for startup performance (fewer conf.d files = less source overhead).
3
- # Values baked at chezmoi apply time where possible — no subshells at startup.
4
-
5
- # ── PATH Construction ────────────────────────────────────────────
6
- # Uses direct set -p (builtin) instead of fish_add_path for speed.
7
- # Lowest priority first, highest last (each set -p pushes to front).
8
- set -gx PIPX_HOME (set -q XDG_DATA_HOME; and echo "$XDG_DATA_HOME"; or echo "$HOME/.local/share")/pipx
9
- set -gx PIPX_BIN_DIR (set -q XDG_BIN_HOME; and echo "$XDG_BIN_HOME"; or echo "$HOME/.local/bin")
10
- set -gx BUN_INSTALL "$HOME/.bun"
11
-
12
- for p in \
13
- /usr/sbin /sbin /usr/bin /bin \
14
- /opt/homebrew/sbin /opt/homebrew/bin \
15
- /opt/homebrew/opt/ruby/bin \
16
- "$HOME/.gem/ruby/bin" \
17
- "$PIPX_BIN_DIR" \
18
- "$HOME/.cargo/bin" \
19
- "$HOME/go/bin" \
20
- "$BUN_INSTALL/bin" \
21
- "$HOME/.node_modules/bin" \
22
- "$HOME/.luarocks/bin" \
23
- {{- if eq .chezmoi.os "darwin" }}
24
- /Library/Apple/usr/bin \
25
- {{- end }}
26
- "$HOME/.local/bin" \
27
- "$HOME/.local/share/mise/shims" \
28
- "$HOME/bin"
29
- contains -- "$p" $PATH; or set -p PATH "$p"
30
- end
31
-
32
- # ── Build artifacts → /tmp (cleared on reboot) ─────────────────
33
- mkdir -p /tmp/builds
34
-
35
- # ── Direnv ──────────────────────────────────────────────────────
36
- set -gx DIRENV_LOG_FORMAT ""
37
-
38
- # ── Environment Variables ────────────────────────────────────────
39
- status is-interactive; or return
40
-
41
- set -gx HOSTNAME '{{ output "hostname" | trim }}'
42
-
43
- # ── FZF Defaults ─────────────────────────────────────────────────
44
- if test -f "$HOME/.config/shell/40-fzf-defaults.sh"
45
- set -gx FZF_DEFAULT_COMMAND 'fd --type f --strip-cwd-prefix --hidden --follow --exclude .git'
46
- set -gx FZF_CTRL_T_COMMAND "$FZF_DEFAULT_COMMAND"
47
- set -gx FZF_DEFAULT_OPTS "--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 --color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc --color=marker:#f5e0dc,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8 --multi --layout=reverse --border --height=40% --preview-window='right:60%:wrap' --preview 'if [ -d {} ]; then eza --tree --level 2 --icons {} | head -200; else bat --style=numbers --color=always --line-range :500 {} 2>/dev/null; or cat {} | head -500; end'"
48
- end
@@ -1,22 +0,0 @@
1
- {{- $root := . -}}
2
- {{- $groupsPath := joinPath $root.chezmoi.sourceDir ".chezmoitemplates/functions/groups.json" -}}
3
- {{- $groups := (fromJson (include $groupsPath)) -}}
4
- {{- $fishFuncsPattern := joinPath $root.chezmoi.sourceDir "dot_config/fish/functions/*.fish" -}}
5
- {{- $fishFuncs := glob $fishFuncsPattern -}}
6
- # Fish function wrappers (Generated by Chezmoi)
7
- # Delegates to bash function library in ~/.config/shell/50-logic-functions.sh
8
- # Edit .chezmoitemplates/functions/ source files, not this file.
9
-
10
- if status is-interactive
11
- {{- range $group, $files := $groups }}
12
- {{- range $files }}
13
- {{- $func := trimSuffix ".sh" (base .) }}
14
- {{- $nativePath := joinPath $root.chezmoi.sourceDir (printf "dot_config/fish/functions/%s.fish" $func) }}
15
- {{- if not (has $nativePath $fishFuncs) }}
16
- function {{ $func }} --description 'Dotfiles: {{ $func }}'
17
- bash -c 'source "$HOME/.config/shell/50-logic-functions.sh" 2>/dev/null; {{ $func }} "$@"' -- $argv
18
- end
19
- {{- end }}
20
- {{- end }}
21
- {{- end }}
22
- end
@@ -1,172 +0,0 @@
1
- # 🅳🅾🆃🅵🅸🅻🅴🆂 (v{{ .dotfiles_version }}) — Interactive initialization
2
- # Consolidated: init + keybindings + modern-core + carapace
3
- # Non-interactive shells skip this entire file.
4
-
5
- if not status is-interactive
6
- return
7
- end
8
-
9
- # ── Shell Cache ──────────────────────────────────────────────────
10
- set -g SHELL_CACHE "$XDG_CACHE_HOME"
11
- if test -z "$SHELL_CACHE"
12
- set SHELL_CACHE "$HOME/.cache"
13
- end
14
- set SHELL_CACHE "$SHELL_CACHE/fish"
15
- mkdir -p "$SHELL_CACHE"
16
-
17
- # ── Artifact Mode ────────────────────────────────────────────────
18
- if not set -q DOTFILES_ARTIFACT_MODE
19
- set -gx DOTFILES_ARTIFACT_MODE 0
20
- end
21
-
22
- if test "$DOTFILES_ARTIFACT_MODE" = "1"
23
- function fish_prompt
24
- set_color green
25
- echo -n "➜ "
26
- set_color normal
27
- end
28
- function fish_right_prompt; end
29
- set -g fish_greeting ""
30
- end
31
-
32
- # ── Starship (eager — must survive cache clears) ────────────────
33
- function _dotfiles_source_cached_init --argument-names tool file
34
- if test -n "$XDG_CACHE_HOME"
35
- set -l cache_root "$XDG_CACHE_HOME"
36
- else
37
- set -l cache_root "$HOME/.cache"
38
- end
39
-
40
- set -l cache_file "$cache_root/fish/$file"
41
- if test -s "$cache_file"
42
- source "$cache_file"
43
- return 0
44
- end
45
-
46
- if command -v $tool >/dev/null 2>&1
47
- _cached_eval $tool init fish
48
- return $status
49
- end
50
-
51
- return 1
52
- end
53
-
54
- if test "$DOTFILES_ARTIFACT_MODE" = "0"; and command -v starship >/dev/null
55
- if not _dotfiles_source_cached_init starship starship-init.fish
56
- starship init fish | source
57
- end
58
- # Transient Prompt: collapse past prompts to the [character] glyph
59
- # after Enter, reducing scrollback noise.
60
- if functions -q enable_transience
61
- enable_transience
62
- end
63
- end
64
-
65
- # ── Lazy Hydration (deferred to first prompt) ────────────────────
66
- function _dotfiles_async_init
67
- # Mise
68
- if command -v mise >/dev/null
69
- if not test -s "$SHELL_CACHE/mise-init.fish"
70
- _cached_eval mise activate fish
71
- else
72
- source "$SHELL_CACHE/mise-init.fish"
73
- end
74
- end
75
- # Atuin
76
- if command -v atuin >/dev/null
77
- if not test -s "$SHELL_CACHE/atuin-init.fish"
78
- _cached_eval atuin init fish
79
- else
80
- source "$SHELL_CACHE/atuin-init.fish"
81
- end
82
- end
83
- # Zoxide (--cmd=cd replaces cd with zoxide-aware version)
84
- if command -v zoxide >/dev/null
85
- if not test -s "$SHELL_CACHE/zoxide-init.fish"
86
- _cached_eval zoxide init --cmd=cd fish
87
- else
88
- source "$SHELL_CACHE/zoxide-init.fish"
89
- end
90
- end
91
- # FZF
92
- if command -v fzf >/dev/null
93
- if not test -s "$SHELL_CACHE/fzf-init.fish"
94
- _cached_eval fzf --fish
95
- else
96
- source "$SHELL_CACHE/fzf-init.fish"
97
- end
98
- end
99
- # Direnv
100
- if command -v direnv >/dev/null
101
- if not test -s "$SHELL_CACHE/direnv-init.fish"
102
- _cached_eval direnv hook fish
103
- else
104
- source "$SHELL_CACHE/direnv-init.fish"
105
- end
106
- end
107
- # Carapace completions (cached)
108
- if command -v carapace >/dev/null 2>&1
109
- set -l carapace_cache "$SHELL_CACHE/carapace-init.fish"
110
- if test -s "$carapace_cache"
111
- source "$carapace_cache"
112
- else
113
- set -l _carapace_tmp "$carapace_cache.tmp.$fish_pid"
114
- if carapace _carapace fish >"$_carapace_tmp" 2>/dev/null
115
- mv "$_carapace_tmp" "$carapace_cache"
116
- source "$carapace_cache"
117
- else
118
- rm -f "$_carapace_tmp"
119
- end
120
- end
121
- end
122
- # Pueue daemon (deferred here to avoid blocking shell startup)
123
- if command -v pueue >/dev/null; and not pueue status >/dev/null 2>&1
124
- if command -v pueued >/dev/null
125
- pueued -d >/dev/null 2>&1
126
- end
127
- end
128
- end
129
-
130
- function _dotfiles_trigger_hydration --on-event fish_prompt
131
- functions -e _dotfiles_trigger_hydration
132
- functions -e _dotfiles_trigger_hydration_on_missing
133
- _dotfiles_async_init
134
- if test "$DOTFILES_ARTIFACT_MODE" = "1"
135
- begin
136
- bash "$HOME/.dotfiles/scripts/dot/lib/bento.sh" </dev/null
137
- kill -WINCH $fish_pid
138
- end &
139
- end
140
- end
141
-
142
- # Belt-and-braces: if the user types an unknown command BEFORE the
143
- # first prompt fires (e.g. `fish -ic 'foo'` from a script that
144
- # doesn't render a prompt), trigger the same lazy-layer load via
145
- # fish_command_not_found. The hydration function may already have
146
- # fired and removed itself — guard against double-load. (Closes
147
- # AC#2 of #880; fish's analogue to zsh's function_not_found.)
148
- function _dotfiles_trigger_hydration_on_missing --on-event fish_command_not_found
149
- functions -e _dotfiles_trigger_hydration_on_missing
150
- functions -e _dotfiles_trigger_hydration
151
- _dotfiles_async_init
152
- # After hydration, the command may now resolve; let fish's default
153
- # not-found handler print the standard message for whatever the
154
- # user typed.
155
- end
156
-
157
- # ── Keybindings (Fish 4.x enhanced) ─────────────────────────────
158
- bind ctrl-backspace backward-kill-word
159
- bind alt-enter 'commandline -f accept-autosuggestion; commandline -f execute'
160
- bind ctrl-z undo
161
- bind ctrl-shift-z redo
162
- bind alt-up 'prevd; commandline -f repaint'
163
- bind alt-down 'nextd; commandline -f repaint'
164
- bind ctrl-left backward-word
165
- bind ctrl-right forward-word
166
- bind alt-l 'echo; ls; commandline -f repaint'
167
- bind alt-. history-token-search-backward
168
- bind ctrl-g 'echo; git status --short 2>/dev/null || echo "Not a git repo"; commandline -f repaint'
169
- bind alt-e edit_command_buffer
170
- if command -q fzf
171
- bind ctrl-t 'set -l result (fzf --height 40% --reverse 2>/dev/null); and commandline -it -- $result; commandline -f repaint'
172
- end
@@ -1,5 +0,0 @@
1
- # Shadow vendor `/opt/homebrew/share/fish/vendor_conf.d/mise-activate.fish`.
2
- # fish dedupes conf.d files by basename — user conf.d wins. Mise is loaded
3
- # lazily by `_dotfiles_async_init` in init.fish via `_cached_eval mise
4
- # activate fish`, which is ~10× faster than the vendor's eager hook-env
5
- # call on every shell start (saves ~140ms in fish startup).
@@ -1,44 +0,0 @@
1
- # 🅳🅾🆃🅵🅸🅻🅴🆂 (v{{ .dotfiles_version }}) - <https://dotfiles.io>
2
- # Made With ❤️ in London, United Kingdom
3
- # Designed by
4
- # Copyright (c) 2015-2026. All rights reserved.
5
- # License: MIT
6
-
7
- # Performance optimization - skip if not interactive
8
- status is-interactive; or return
9
-
10
- # Only source once
11
- if set -q FISH_CONFIG_SOURCED
12
- return
13
- end
14
- set -g FISH_CONFIG_SOURCED 1
15
-
16
- {{- /* Input Validation: Ensure crucial variables are set */ -}}
17
- {{- if not .chezmoi.homeDir -}}
18
- {{- fail "Critical Error: .chezmoi.homeDir is not set!" -}}
19
- {{- end -}}
20
-
21
- # Load local customizations if they exist
22
- if test -f "$HOME/.config/fish/config.fish.local"
23
- source "$HOME/.config/fish/config.fish.local"
24
- end
25
-
26
- # Ensure LS_COLORS is set for fish (bridged from bash dircolors setup)
27
- if not set -q LS_COLORS
28
- set -l _dircolors_cache "$HOME/.cache/shell/dircolors.sh"
29
- if test -f "$_dircolors_cache"
30
- # Extract LS_COLORS value from cached dircolors output
31
- set -l _val (string match -r "LS_COLORS='([^']+)'" < "$_dircolors_cache")
32
- if set -q _val[2]
33
- set -gx LS_COLORS "$_val[2]"
34
- end
35
- else if command -q dircolors
36
- set -gx LS_COLORS (dircolors -c 2>/dev/null | string match -r "LS_COLORS='([^']+)'" | tail -1)
37
- else if test (uname -s) = "Darwin"
38
- set -gx CLICOLOR 1
39
- set -gx LSCOLORS "ExFxCxDxBxegedabagacad"
40
- end
41
- end
42
-
43
- # Welcome message
44
- set -g fish_greeting ""
@@ -1 +0,0 @@
1
- jorgebucaran/fisher
@@ -1,3 +0,0 @@
1
- function _ --description 'Run command with sudo'
2
- sudo $argv
3
- end