@sebastienrousseau/dotfiles 0.2.499 → 0.2.500

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 (538) hide show
  1. package/CHANGELOG.md +375 -0
  2. package/LICENSE +1283 -0
  3. package/README.md +284 -0
  4. package/docs/.vitepress/reports/localization-readability-audit.md +69 -0
  5. package/docs/AI.md +102 -0
  6. package/docs/COPYRIGHT +4 -3
  7. package/docs/NAMING_CONVENTIONS.md +95 -0
  8. package/docs/README.md +78 -0
  9. package/docs/adr/ADR-001-ci-cd-pipeline.md +101 -0
  10. package/docs/adr/ADR-002-shell-performance.md +121 -0
  11. package/docs/adr/ADR-003-security-first.md +140 -0
  12. package/docs/adr/ADR-004-cli-architecture.md +157 -0
  13. package/docs/adr/ADR-005-chezmoi-choice.md +89 -0
  14. package/docs/adr/ADR-006-shell-selection.md +115 -0
  15. package/docs/adr/ADR-007-multi-shell-parity.md +53 -0
  16. package/docs/adr/ADR-008-alias-system-architecture.md +85 -0
  17. package/docs/adr/README.md +32 -0
  18. package/docs/architecture/ARCHITECTURE.md +113 -0
  19. package/docs/architecture/INTEROP.md +36 -0
  20. package/docs/architecture/REPO_LAYOUT.md +237 -0
  21. package/docs/architecture/WALKTHROUGH.md +82 -0
  22. package/docs/architecture/fleet-deployment.md +73 -0
  23. package/docs/archive/EUXIS_2026_REVIEW.md +119 -0
  24. package/docs/archive/LEGACY_ROADMAP.md +142 -0
  25. package/docs/archive/MILESTONE_v0.2.493.md +43 -0
  26. package/docs/{PLAN.md → archive/PLAN.md} +4 -4
  27. package/docs/archive/REPO_AUDIT.md +23 -0
  28. package/docs/guides/INSTALL.md +140 -0
  29. package/docs/guides/NEOVIM_IDE_GUIDE.md +52 -0
  30. package/docs/guides/THEMING.md +222 -0
  31. package/docs/guides/TROUBLESHOOTING.md +148 -0
  32. package/docs/guides/WSL2_NIX_TROUBLESHOOTING.md +723 -0
  33. package/docs/index.md +39 -0
  34. package/docs/interop/A2A.md +32 -0
  35. package/docs/manual/00-introduction.md +85 -0
  36. package/docs/manual/01-concepts/01-architecture.md +134 -0
  37. package/docs/manual/01-concepts/02-trust-model.md +178 -0
  38. package/docs/manual/01-concepts/03-theme-engine.md +182 -0
  39. package/docs/manual/01-concepts/04-fleet.md +142 -0
  40. package/docs/manual/01-concepts/05-self-healing.md +197 -0
  41. package/docs/manual/02-tutorials/01-first-install.md +192 -0
  42. package/docs/manual/02-tutorials/02-add-wallpaper.md +211 -0
  43. package/docs/manual/02-tutorials/03-create-profile.md +238 -0
  44. package/docs/manual/02-tutorials/04-encrypt-secret.md +275 -0
  45. package/docs/manual/02-tutorials/05-deploy-fleet.md +279 -0
  46. package/docs/manual/03-reference/01-dot-cli.md +413 -0
  47. package/docs/manual/03-reference/02-config-files.md +259 -0
  48. package/docs/manual/03-reference/03-environment.md +120 -0
  49. package/docs/manual/03-reference/04-templates.md +184 -0
  50. package/docs/manual/03-reference/05-feature-flags.md +118 -0
  51. package/docs/manual/04-cookbook/01-recipes.md +281 -0
  52. package/docs/manual/04-cookbook/02-troubleshooting.md +319 -0
  53. package/docs/manual/04-cookbook/03-faq.md +167 -0
  54. package/docs/manual/05-appendices/A-platform-matrix.md +97 -0
  55. package/docs/manual/05-appendices/B-security-checklist.md +78 -0
  56. package/docs/manual/05-appendices/C-glossary.md +36 -0
  57. package/docs/manual/05-appendices/D-bibliography.md +54 -0
  58. package/docs/manual/05-appendices/E-license.md +34 -0
  59. package/docs/manual/_toc.yml +58 -0
  60. package/docs/manual/command-index.md +58 -0
  61. package/docs/manual/concept-index.md +164 -0
  62. package/docs/operations/ATTESTATION.md +39 -0
  63. package/docs/operations/MAINTENANCE.md +59 -0
  64. package/docs/operations/MIGRATION.md +101 -0
  65. package/docs/operations/OPERATIONS.md +164 -0
  66. package/docs/operations/RELIABILITY.md +116 -0
  67. package/docs/{ROADMAP.md → operations/ROADMAP.md} +22 -22
  68. package/docs/operations/TESTING.md +195 -0
  69. package/docs/operations/TRACEABILITY.md +31 -0
  70. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +61 -0
  71. package/docs/operations/VERSION_SYNC.md +344 -0
  72. package/docs/reference/ALIASES.md +124 -0
  73. package/docs/reference/ALIASES_CHEATSHEET.md +28 -0
  74. package/docs/reference/ALIASES_DEPRECATIONS.md +9 -0
  75. package/docs/reference/FEATURES.md +62 -0
  76. package/docs/reference/FONTS.md +108 -0
  77. package/docs/reference/PROFILES.md +65 -0
  78. package/docs/reference/SCREENSHOTS.md +117 -0
  79. package/docs/reference/SCRIPTS.md +67 -0
  80. package/docs/reference/SUPPORT_MATRIX.md +74 -0
  81. package/docs/reference/THEMES.md +113 -0
  82. package/docs/reference/TOOLS.md +105 -0
  83. package/docs/reference/UTILS.md +151 -0
  84. package/docs/security/AI_ACT_COMPLIANCE.md +90 -0
  85. package/docs/security/AUTOMATION_SECRETS.md +22 -0
  86. package/docs/security/COMPLIANCE.md +453 -0
  87. package/docs/security/ENCRYPTION.md +52 -0
  88. package/docs/security/FMEA.md +155 -0
  89. package/docs/security/INCIDENT_RESPONSE.md +575 -0
  90. package/docs/security/KEYS.md +45 -0
  91. package/docs/security/KEY_ROTATION.md +219 -0
  92. package/docs/security/MCP_POLICY.md +69 -0
  93. package/docs/security/POLICY_RELEASES.md +33 -0
  94. package/docs/security/README.md +24 -0
  95. package/docs/security/SECRETS.md +146 -0
  96. package/docs/security/SECURITY.md +41 -0
  97. package/docs/security/SECURITY_CHECKLIST.md +44 -0
  98. package/docs/security/SOUP_REGISTER.md +32 -0
  99. package/docs/security/THREAT_MODEL.md +120 -0
  100. package/docs/security/VERIFICATION_VALIDATION.md +224 -0
  101. package/docs/themes/README.md +6 -0
  102. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +26 -0
  103. package/docs/themes/hero-shot.svg +78 -0
  104. package/dot_config/.module-manifest.json +69 -0
  105. package/dot_config/ai/identity.md +20 -0
  106. package/dot_config/ai/patterns/architect.md +14 -0
  107. package/dot_config/ai/patterns/hardener.md +13 -0
  108. package/dot_config/ai/patterns/refactor.md +13 -0
  109. package/dot_config/aider/aider.conf.yml +32 -0
  110. package/dot_config/alacritty/alacritty.toml.tmpl +55 -0
  111. package/dot_config/ansible/ansible.cfg +11 -0
  112. package/dot_config/atuin/config.toml +40 -0
  113. package/dot_config/bat/config +23 -0
  114. package/dot_config/brave-flags.conf.tmpl +7 -0
  115. package/dot_config/btop/btop.conf +16 -0
  116. package/dot_config/btop/themes/tokyonight.theme +34 -0
  117. package/dot_config/bun/bunfig.toml.tmpl +33 -0
  118. package/dot_config/claude/mcp_servers.json +20 -0
  119. package/dot_config/containers/containers.conf +14 -0
  120. package/dot_config/curl/dot_curlrc +18 -0
  121. package/dot_config/dlv/config.yml +39 -0
  122. package/dot_config/docker/config.json +15 -0
  123. package/dot_config/dotfiles/agent-card.json +29 -0
  124. package/dot_config/dotfiles/agent-profiles.json +92 -0
  125. package/dot_config/dotfiles/boot/README.md +11 -0
  126. package/dot_config/dotfiles/grub/README.md +11 -0
  127. package/dot_config/dotfiles/lock/README.md +11 -0
  128. package/dot_config/dotfiles/mcp-lock.json +33 -0
  129. package/dot_config/dotfiles/mcp-policy.json +52 -0
  130. package/dot_config/dotfiles/mcp-registry.json +47 -0
  131. package/dot_config/dotfiles/model-registry.json +20 -0
  132. package/dot_config/dotfiles/policy-bundles.json +38 -0
  133. package/dot_config/dotfiles/prompt-registry.json +16 -0
  134. package/dot_config/dotfiles/versions.env +18 -0
  135. package/dot_config/duf/duf.conf +6 -0
  136. package/dot_config/duti/defaults.duti +5 -0
  137. package/dot_config/emoji/emoji.txt +34 -0
  138. package/dot_config/environment.d/50-ssh-agent.conf +2 -0
  139. package/dot_config/environment.d/90-wayland.conf +19 -0
  140. package/dot_config/fastfetch/config.jsonc +28 -0
  141. package/dot_config/firefox/user.js.tmpl +58 -0
  142. package/dot_config/fish/completions/dot-theme-sync.fish.tmpl +9 -0
  143. package/dot_config/fish/completions/dot.fish.tmpl +115 -0
  144. package/dot_config/fish/conf.d/000-perf-cache.fish +56 -0
  145. package/dot_config/fish/conf.d/aliases.fish.tmpl +77 -0
  146. package/dot_config/fish/conf.d/env.fish.tmpl +48 -0
  147. package/dot_config/fish/conf.d/functions.fish.tmpl +22 -0
  148. package/dot_config/fish/conf.d/init.fish.tmpl +151 -0
  149. package/dot_config/fish/config.fish.tmpl +44 -0
  150. package/dot_config/fish/fish_plugins +1 -0
  151. package/dot_config/fish/functions/_.fish +3 -0
  152. package/dot_config/fish/functions/_cached_eval.fish +58 -0
  153. package/dot_config/fish/functions/als.fish +46 -0
  154. package/dot_config/fish/functions/bg-upgrade.fish +7 -0
  155. package/dot_config/fish/functions/c.fish +3 -0
  156. package/dot_config/fish/functions/cat.fish +9 -0
  157. package/dot_config/fish/functions/d.fish +7 -0
  158. package/dot_config/fish/functions/dot.fish +34 -0
  159. package/dot_config/fish/functions/h.fish +3 -0
  160. package/dot_config/fish/functions/l.fish +7 -0
  161. package/dot_config/fish/functions/la.fish +7 -0
  162. package/dot_config/fish/functions/ll.fish +7 -0
  163. package/dot_config/fish/functions/log_error.fish +13 -0
  164. package/dot_config/fish/functions/log_info.fish +13 -0
  165. package/dot_config/fish/functions/lr.fish +7 -0
  166. package/dot_config/fish/functions/lra.fish +7 -0
  167. package/dot_config/fish/functions/ls.fish +7 -0
  168. package/dot_config/fish/functions/lt.fish +7 -0
  169. package/dot_config/fish/functions/lta.fish +7 -0
  170. package/dot_config/fish/functions/notify-run.fish +11 -0
  171. package/dot_config/fish/functions/q.fish +3 -0
  172. package/dot_config/fish/functions/silent-run.fish +7 -0
  173. package/dot_config/fish/functions/yy.fish +8 -0
  174. package/dot_config/flatpak/flatpak.list +4 -0
  175. package/dot_config/fontconfig/fonts.conf.tmpl +57 -0
  176. package/dot_config/foot/foot.ini.tmpl +33 -0
  177. package/dot_config/fuzzel/fuzzel.ini.tmpl +18 -0
  178. package/dot_config/fzf/fzf.zsh +48 -0
  179. package/dot_config/gem/gemrc +9 -0
  180. package/dot_config/gh/config.yml +12 -0
  181. package/dot_config/ghostty/config.tmpl +165 -0
  182. package/dot_config/git/allowed_signers.tmpl +18 -0
  183. package/dot_config/git/attributes +12 -0
  184. package/dot_config/git/commit-template +10 -0
  185. package/dot_config/git/ignore +27 -0
  186. package/dot_config/gnupg/gpg-agent.conf +11 -0
  187. package/dot_config/go/golangci.yml +118 -0
  188. package/dot_config/go/gopls.json +30 -0
  189. package/dot_config/goose/config.yaml +29 -0
  190. package/dot_config/gtk-3.0/gtk.css.tmpl +184 -0
  191. package/dot_config/gtk-3.0/settings.ini.tmpl +27 -0
  192. package/dot_config/gtk-4.0/gtk.css.tmpl +252 -0
  193. package/dot_config/gtk-4.0/settings.ini.tmpl +18 -0
  194. package/dot_config/htop/htoprc +20 -0
  195. package/dot_config/inputrc +2 -0
  196. package/dot_config/ipython/profile_default/ipython_config.py +19 -0
  197. package/dot_config/just/justfile +122 -0
  198. package/dot_config/k9s/config.yaml +65 -0
  199. package/dot_config/k9s/skins/catppuccin-mocha.yaml +116 -0
  200. package/dot_config/kanshi/config.tmpl +22 -0
  201. package/dot_config/karabiner/karabiner.json +14 -0
  202. package/dot_config/kitty/kitty.conf.tmpl +53 -0
  203. package/dot_config/lazydocker/config.yml +186 -0
  204. package/dot_config/lazygit/config.yml +35 -0
  205. package/dot_config/mako/config +47 -0
  206. package/dot_config/mas/masapps.txt +5 -0
  207. package/dot_config/micro/settings.json +3 -0
  208. package/dot_config/mimeapps.list +77 -0
  209. package/dot_config/minikube/config.json +13 -0
  210. package/dot_config/mise/config.toml +99 -0
  211. package/dot_config/mongosh/mongoshrc.js +68 -0
  212. package/dot_config/mpv/input.conf +47 -0
  213. package/dot_config/mpv/mpv.conf +47 -0
  214. package/dot_config/mycli/myclirc +67 -0
  215. package/dot_config/nano/nanorc +28 -0
  216. package/dot_config/ncdu/config +12 -0
  217. package/dot_config/niri/config.kdl.tmpl +327 -0
  218. package/dot_config/nushell/aliases.nu +18 -0
  219. package/dot_config/nushell/completions.nu.tmpl +52 -0
  220. package/dot_config/nushell/config.nu.tmpl +86 -0
  221. package/dot_config/nushell/env.nu.tmpl +94 -0
  222. package/dot_config/nushell/functions.nu.tmpl +17 -0
  223. package/dot_config/nvim/init.lua +18 -0
  224. package/dot_config/nvim/lazy-lock.json +58 -0
  225. package/dot_config/nvim/lua/config/autocmds.lua +107 -0
  226. package/dot_config/nvim/lua/config/keymaps.lua +92 -0
  227. package/dot_config/nvim/lua/config/lazy.lua +44 -0
  228. package/dot_config/nvim/lua/config/options.lua +49 -0
  229. package/dot_config/nvim/lua/plugins/ai.lua +75 -0
  230. package/dot_config/nvim/lua/plugins/coding.lua +216 -0
  231. package/dot_config/nvim/lua/plugins/completion.lua +60 -0
  232. package/dot_config/nvim/lua/plugins/dap.lua +412 -0
  233. package/dot_config/nvim/lua/plugins/editor.lua +55 -0
  234. package/dot_config/nvim/lua/plugins/git.lua +10 -0
  235. package/dot_config/nvim/lua/plugins/lsp.lua +156 -0
  236. package/dot_config/nvim/lua/plugins/markdown.lua +18 -0
  237. package/dot_config/nvim/lua/plugins/rust.lua +34 -0
  238. package/dot_config/nvim/lua/plugins/sessions.lua +33 -0
  239. package/dot_config/nvim/lua/plugins/ui.lua +509 -0
  240. package/dot_config/paru/paru.conf +10 -0
  241. package/dot_config/pip/pip.conf.tmpl +32 -0
  242. package/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl +81 -0
  243. package/dot_config/pueue/pueue.yml +34 -0
  244. package/dot_config/pypoetry/config.toml +6 -0
  245. package/dot_config/pyrightconfig.json +5 -0
  246. package/dot_config/raycast/README.md +13 -0
  247. package/dot_config/redis/redisclirc +41 -0
  248. package/dot_config/ripgrep/ripgreprc +21 -0
  249. package/dot_config/shell/00-core-paths.sh.tmpl +133 -0
  250. package/dot_config/shell/05-core-safety.sh +47 -0
  251. package/dot_config/shell/10-secrets.sh +40 -0
  252. package/dot_config/shell/40-fzf-defaults.sh.tmpl +16 -0
  253. package/dot_config/shell/40-ls-colors.sh +48 -0
  254. package/dot_config/shell/50-logic-functions-core.sh.tmpl +10 -0
  255. package/dot_config/shell/50-logic-functions.sh.tmpl +10 -0
  256. package/dot_config/shell/51-logic-functions-extra.sh.tmpl +64 -0
  257. package/dot_config/shell/90-ux-aliases.sh.tmpl +120 -0
  258. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +54 -0
  259. package/dot_config/shell/Brewfile +207 -0
  260. package/dot_config/shell/Brewfile.cask +92 -0
  261. package/dot_config/shell/Brewfile.cli +127 -0
  262. package/dot_config/shell/README.md +267 -0
  263. package/dot_config/shell/als_data.txt.tmpl +65 -0
  264. package/dot_config/shell/custom/auto_ls.zsh +20 -0
  265. package/dot_config/shell/custom/context_suggest.zsh +68 -0
  266. package/dot_config/shell/custom/error_analysis.zsh +45 -0
  267. package/dot_config/sops/dot_sops.yaml +23 -0
  268. package/dot_config/starship.toml.tmpl +202 -0
  269. package/dot_config/swaylock/config +43 -0
  270. package/dot_config/systemd/user/dotfiles-maintenance.service +8 -0
  271. package/dot_config/systemd/user/dotfiles-maintenance.timer +11 -0
  272. package/dot_config/systemd/user/pueued.service +12 -0
  273. package/dot_config/systemd/user/ssh-agent.service +12 -0
  274. package/dot_config/task/Taskfile.yml +86 -0
  275. package/dot_config/tflint/tflint.hcl +9 -0
  276. package/dot_config/tmux/tmux.conf.tmpl +223 -0
  277. package/dot_config/topgrade.toml.tmpl +54 -0
  278. package/dot_config/user-dirs.dirs +9 -0
  279. package/dot_config/vscode/extensions.txt +11 -0
  280. package/dot_config/vscode/settings.json.tmpl +82 -0
  281. package/dot_config/waybar/config.jsonc.tmpl +90 -0
  282. package/dot_config/waybar/style.css.tmpl +211 -0
  283. package/dot_config/wezterm/wezterm.lua.tmpl +64 -0
  284. package/dot_config/wget/wgetrc +12 -0
  285. package/dot_config/xdg-desktop-portal/niri-portals.conf +5 -0
  286. package/dot_config/yarn/yarnrc.yml +36 -0
  287. package/dot_config/yazi/keymap.toml +67 -0
  288. package/dot_config/yazi/theme.toml +102 -0
  289. package/dot_config/yazi/yazi.toml +40 -0
  290. package/dot_config/zathura/zathurarc +52 -0
  291. package/dot_config/zellij/config.kdl.tmpl +79 -0
  292. package/dot_config/zsh/dot_zprofile +7 -0
  293. package/dot_config/zsh/dot_zshenv +5 -0
  294. package/dot_config/zsh/dot_zshrc.tmpl +498 -0
  295. package/dot_config/zsh/rc.d/00-alias-shims.zsh +77 -0
  296. package/dot_config/zsh/rc.d/05-ssh-agent.zsh +18 -0
  297. package/dot_config/zsh/rc.d/10-env.zsh.tmpl +28 -0
  298. package/dot_config/zsh/rc.d/20-zinit.zsh +65 -0
  299. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +194 -0
  300. package/dot_config/zsh/rc.d/40-bell.zsh +20 -0
  301. package/dot_config/zsh/rc.d/50-login-fortune.zsh +9 -0
  302. package/dot_config/zsh/rc.d/99-alias-wrapper.zsh +32 -0
  303. package/dot_local/bin/__pycache__/executable_dot-load-benchmark-ptycpython-312.pyc +0 -0
  304. package/dot_local/bin/executable_ai-update +195 -0
  305. package/dot_local/bin/executable_ai_core +152 -0
  306. package/dot_local/bin/executable_antigravity +11 -0
  307. package/dot_local/bin/executable_b64 +84 -0
  308. package/dot_local/bin/executable_bm +77 -0
  309. package/dot_local/bin/executable_cb +39 -0
  310. package/dot_local/bin/executable_dot +589 -0
  311. package/dot_local/bin/executable_dot-ai +36 -0
  312. package/dot_local/bin/executable_dot-bootstrap +77 -0
  313. package/dot_local/bin/executable_dot-launch-or-focus +52 -0
  314. package/dot_local/bin/executable_dot-load-benchmark +31 -0
  315. package/dot_local/bin/executable_dot-load-benchmark-pty +77 -0
  316. package/dot_local/bin/executable_dot-theme-sync +952 -0
  317. package/dot_local/bin/executable_dot_completion +57 -0
  318. package/dot_local/bin/executable_dtags +28 -0
  319. package/dot_local/bin/executable_epoch +67 -0
  320. package/dot_local/bin/executable_extract +41 -0
  321. package/dot_local/bin/executable_gbd +52 -0
  322. package/dot_local/bin/executable_gd +42 -0
  323. package/dot_local/bin/executable_git-ai-commit +175 -0
  324. package/dot_local/bin/executable_git-ai-diff +169 -0
  325. package/dot_local/bin/executable_gl +101 -0
  326. package/dot_local/bin/executable_hash +161 -0
  327. package/dot_local/bin/executable_hashsum +160 -0
  328. package/dot_local/bin/executable_hex +115 -0
  329. package/dot_local/bin/executable_jsonv +78 -0
  330. package/dot_local/bin/executable_jwt +94 -0
  331. package/dot_local/bin/executable_kill-port +75 -0
  332. package/dot_local/bin/executable_lorem +118 -0
  333. package/dot_local/bin/executable_mkscript +35 -0
  334. package/dot_local/bin/executable_monitor +56 -0
  335. package/dot_local/bin/executable_myip +51 -0
  336. package/dot_local/bin/executable_notify +22 -0
  337. package/dot_local/bin/executable_open +36 -0
  338. package/dot_local/bin/executable_pw +27 -0
  339. package/dot_local/bin/executable_rec-start +46 -0
  340. package/dot_local/bin/executable_rec-stop +35 -0
  341. package/dot_local/bin/executable_regex +132 -0
  342. package/dot_local/bin/executable_start-niri +8 -0
  343. package/dot_local/bin/executable_tmux-sessionizer +314 -0
  344. package/dot_local/bin/executable_tour +175 -0
  345. package/dot_local/bin/executable_up +21 -0
  346. package/dot_local/bin/executable_update +142 -0
  347. package/dot_local/bin/executable_uuid +87 -0
  348. package/dot_local/bin/executable_win +32 -0
  349. package/dot_local/bin/executable_yamlv +57 -0
  350. package/dot_local/share/bash-completion/completions/dot +72 -0
  351. package/dot_local/share/icons/hicolor/128x128/apps/rousseau.png +0 -0
  352. package/dot_local/share/icons/hicolor/16x16/apps/rousseau.png +0 -0
  353. package/dot_local/share/icons/hicolor/24x24/apps/rousseau.png +0 -0
  354. package/dot_local/share/icons/hicolor/256x256/apps/rousseau.png +0 -0
  355. package/dot_local/share/icons/hicolor/32x32/apps/rousseau.png +0 -0
  356. package/dot_local/share/icons/hicolor/48x48/apps/rousseau.png +0 -0
  357. package/dot_local/share/icons/hicolor/512x512/apps/rousseau.png +0 -0
  358. package/dot_local/share/icons/hicolor/64x64/apps/rousseau.png +0 -0
  359. package/dot_local/share/icons/hicolor/96x96/apps/rousseau.png +0 -0
  360. package/dot_local/share/icons/hicolor/scalable/apps/rousseau.png +0 -0
  361. package/dot_local/share/man/man1/dot.1 +149 -0
  362. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_download +64 -0
  363. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_install +18 -0
  364. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_list-all +13 -0
  365. package/dot_local/share/wayland-sessions/niri.desktop.tmpl +6 -0
  366. package/dot_local/share/zsh/completions/.keep +0 -0
  367. package/dot_local/share/zsh/completions/_dot +283 -0
  368. package/install.sh +342 -0
  369. package/package.json +1 -1
  370. package/scripts/ci/check-copyright-headers.sh +96 -0
  371. package/scripts/ci/guard-gitleaks-checkout.sh +57 -0
  372. package/scripts/ci/install-chezmoi-verified.sh +64 -0
  373. package/scripts/ci/validate-ci-config.sh +224 -0
  374. package/scripts/demo/record.sh +42 -0
  375. package/scripts/diagnostics/a2a-conformance.sh +162 -0
  376. package/scripts/diagnostics/alias-governance.sh +137 -0
  377. package/scripts/diagnostics/aliases-cheatsheet.sh +73 -0
  378. package/scripts/diagnostics/aliases-manifest.sh +31 -0
  379. package/scripts/diagnostics/benchmark.sh +381 -0
  380. package/scripts/diagnostics/conflicts.sh +72 -0
  381. package/scripts/diagnostics/doctor-unified.sh +38 -0
  382. package/scripts/diagnostics/doctor.sh +541 -0
  383. package/scripts/diagnostics/drift-dashboard.sh +37 -0
  384. package/scripts/diagnostics/health.sh +597 -0
  385. package/scripts/diagnostics/history-analysis.sh +85 -0
  386. package/scripts/diagnostics/mcp-doctor.sh +575 -0
  387. package/scripts/diagnostics/perf.sh +225 -0
  388. package/scripts/diagnostics/scorecard.sh +118 -0
  389. package/scripts/diagnostics/secret-governance.sh +58 -0
  390. package/scripts/diagnostics/security-score.sh +438 -0
  391. package/scripts/diagnostics/smoke-test.sh +87 -0
  392. package/scripts/diagnostics/snapshot.sh +89 -0
  393. package/scripts/diagnostics/verify.sh +107 -0
  394. package/scripts/{verify_state.sh → diagnostics/verify_state.sh} +22 -22
  395. package/scripts/diagnostics/version-locks.sh +79 -0
  396. package/scripts/diagnostics/workstation-attestation.sh +181 -0
  397. package/scripts/docs/build-manual.sh +883 -0
  398. package/scripts/docs/check-manual.sh +213 -0
  399. package/scripts/dot/commands/agent.sh +465 -0
  400. package/scripts/dot/commands/ai.sh +416 -0
  401. package/scripts/dot/commands/aliases.sh +250 -0
  402. package/scripts/dot/commands/appearance.sh +80 -0
  403. package/scripts/dot/commands/core.sh +185 -0
  404. package/scripts/dot/commands/diagnostics.sh +229 -0
  405. package/scripts/dot/commands/fleet.sh +399 -0
  406. package/scripts/dot/commands/lint.sh +177 -0
  407. package/scripts/dot/commands/manual.sh +168 -0
  408. package/scripts/dot/commands/meta.sh +248 -0
  409. package/scripts/dot/commands/patterns.sh +54 -0
  410. package/scripts/dot/commands/restore.sh +231 -0
  411. package/scripts/dot/commands/secrets.sh +223 -0
  412. package/scripts/dot/commands/security.sh +76 -0
  413. package/scripts/dot/commands/tools.sh +469 -0
  414. package/scripts/dot/data/alias-deprecations.tsv +2 -0
  415. package/scripts/dot/lib/bento.sh +49 -0
  416. package/scripts/dot/lib/log.sh +194 -0
  417. package/scripts/dot/lib/platform.sh +98 -0
  418. package/scripts/dot/lib/ui.sh +507 -0
  419. package/scripts/dot/lib/utils.sh +372 -0
  420. package/scripts/fonts/install-nerd-fonts.sh +68 -0
  421. package/scripts/fonts/patch-fonts.sh +35 -0
  422. package/scripts/git-hooks/install.sh +11 -0
  423. package/scripts/git-hooks/pre-commit +12 -0
  424. package/scripts/git-hooks/pre-commit-audit.sh +145 -0
  425. package/scripts/git-hooks/pre-push +29 -0
  426. package/scripts/git-hooks/prepare-commit-msg +29 -0
  427. package/scripts/lib/secrets_provider.sh +158 -0
  428. package/scripts/maintenance/check-updates.sh +131 -0
  429. package/scripts/ops/ai-setup.sh +55 -0
  430. package/scripts/ops/bundle.sh +77 -0
  431. package/scripts/ops/chaos.sh +49 -0
  432. package/scripts/ops/chezmoi-apply.sh +270 -0
  433. package/scripts/ops/chezmoi-diff.sh +15 -0
  434. package/scripts/ops/chezmoi-remove.sh +45 -0
  435. package/scripts/ops/chezmoi-update.sh +48 -0
  436. package/scripts/ops/heal-chezmoi.sh +51 -0
  437. package/scripts/ops/heal-system.sh +128 -0
  438. package/scripts/ops/heal-tools.sh +340 -0
  439. package/scripts/ops/heal.sh +222 -0
  440. package/scripts/ops/post-apply-repair.sh +106 -0
  441. package/scripts/ops/prewarm.sh +127 -0
  442. package/scripts/ops/release.sh +252 -0
  443. package/scripts/ops/rollback.sh +589 -0
  444. package/scripts/ops/setup.sh +137 -0
  445. package/scripts/ops/teleport.sh +33 -0
  446. package/scripts/qa/coverage-baseline.sh +60 -0
  447. package/scripts/qa/docs-coverage.sh +111 -0
  448. package/scripts/qa/reliability-audit.sh +138 -0
  449. package/scripts/qa/traceability-coverage.sh +116 -0
  450. package/scripts/qa/validate-examples.sh +26 -0
  451. package/scripts/qa/wsl-contract.sh +11 -0
  452. package/scripts/release/package-policy-bundles.sh +125 -0
  453. package/scripts/secrets/age-init.sh +70 -0
  454. package/scripts/secrets/create-secrets-file.sh +45 -0
  455. package/scripts/secrets/encrypt-ssh-key.sh +43 -0
  456. package/scripts/security/backup.sh +57 -0
  457. package/scripts/security/dns-doh.sh +51 -0
  458. package/scripts/security/encryption-check.sh +54 -0
  459. package/scripts/security/enforce-policies.sh +334 -0
  460. package/scripts/security/firewall.sh +90 -0
  461. package/scripts/security/lock-configs.sh +57 -0
  462. package/scripts/security/lock-screen.sh +55 -0
  463. package/scripts/security/manage-secrets.sh +428 -0
  464. package/scripts/security/ssh-cert.sh +203 -0
  465. package/scripts/security/telemetry-kill.sh +50 -0
  466. package/scripts/security/usb-safety.sh +51 -0
  467. package/scripts/theme/apply-gnome-theme.sh +328 -0
  468. package/scripts/theme/extract-theme.py +677 -0
  469. package/scripts/theme/install-boot-logo.sh +62 -0
  470. package/scripts/theme/install-catppuccin-themes.sh +370 -0
  471. package/scripts/theme/install-cursors.sh +25 -0
  472. package/scripts/theme/install-file-icons.sh +26 -0
  473. package/scripts/theme/install-grub-theme.sh +61 -0
  474. package/scripts/theme/install-lock-icon.sh +30 -0
  475. package/scripts/theme/merge-wallpaper.sh +141 -0
  476. package/scripts/theme/rebuild-themes.sh +309 -0
  477. package/scripts/theme/switch.sh +421 -0
  478. package/scripts/theme/wallpaper-rotate.sh +136 -0
  479. package/scripts/theme/wallpaper-sync.sh +397 -0
  480. package/scripts/tools/cmatrix.sh +21 -0
  481. package/scripts/{detect-collisions.py → tools/detect-collisions.py} +2 -2
  482. package/scripts/tools/emoji-picker.sh +48 -0
  483. package/scripts/tools/figlet-banner.sh +18 -0
  484. package/scripts/tools/log-rotate.sh +30 -0
  485. package/scripts/tools/lolcat-wrap.sh +19 -0
  486. package/scripts/tools/pipes.sh +48 -0
  487. package/scripts/tuning/linux.sh +185 -0
  488. package/scripts/tuning/macos.sh +55 -0
  489. package/scripts/uninstall.sh +85 -0
  490. package/scripts/version-sync.sh +487 -0
  491. package/templates/chezmoi-data/geekom-a9.toml.example +21 -0
  492. package/templates/chezmoi-data/mac-m1.toml.example +16 -0
  493. package/templates/chezmoi-data/mac-t2-linux.toml.example +21 -0
  494. package/templates/chezmoi-data/surface-pro-7p.toml.example +21 -0
  495. package/templates/projects/go/.github/workflows/ci.yml +31 -0
  496. package/templates/projects/go/README.md +4 -0
  497. package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +1 -0
  498. package/templates/projects/go/go.sum +0 -0
  499. package/templates/projects/molecule/README.md +7 -0
  500. package/templates/projects/molecule/converge.yml +7 -0
  501. package/templates/projects/molecule/molecule.yml +16 -0
  502. package/templates/projects/node/.github/workflows/ci.yml +30 -0
  503. package/templates/projects/node/README.md +4 -0
  504. package/templates/projects/node/package-lock.json +12 -0
  505. package/templates/projects/node/src/index.js +1 -0
  506. package/templates/projects/packer/README.md +15 -0
  507. package/templates/projects/packer/main.pkr.hcl +15 -0
  508. package/templates/projects/python/.github/workflows/ci.yml +34 -0
  509. package/templates/projects/python/README.md +4 -0
  510. package/templates/projects/python/pyproject.toml +15 -0
  511. package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +1 -0
  512. package/templates/projects/python/tests/test_basic.py +1 -0
  513. package/docs/ARCHITECTURE.md +0 -62
  514. package/docs/COMPLIANCE.md +0 -47
  515. package/docs/OPERATIONS.md +0 -103
  516. package/docs/PR_DESCRIPTION.md +0 -150
  517. package/docs/ROADMAP_legacy.md +0 -556
  518. package/docs/SECURITY_CHECKLIST.md +0 -25
  519. package/docs/TASK.md +0 -99
  520. package/docs/WALKTHROUGH.md +0 -46
  521. package/scripts/backup.sh +0 -142
  522. package/scripts/banner.sh +0 -20
  523. package/scripts/benchmark.sh +0 -20
  524. package/scripts/build.sh +0 -41
  525. package/scripts/clean.sh +0 -31
  526. package/scripts/compile.sh +0 -54
  527. package/scripts/copy.sh +0 -108
  528. package/scripts/doctor.sh +0 -79
  529. package/scripts/dotfiles.sh +0 -63
  530. package/scripts/download.sh +0 -35
  531. package/scripts/help.sh +0 -57
  532. package/scripts/lock-configs.sh +0 -57
  533. package/scripts/package.sh +0 -46
  534. package/scripts/ssh.sh +0 -55
  535. package/scripts/teleport.sh +0 -23
  536. package/scripts/test-aliases.sh +0 -25
  537. package/scripts/test_smoke.sh +0 -88
  538. package/scripts/unpack.sh +0 -28
@@ -0,0 +1,38 @@
1
+ {
2
+ "schemaVersion": "2026.03",
3
+ "defaultBundle": "developer",
4
+ "bundles": {
5
+ "developer": {
6
+ "description": "Local development with bounded agent execution and strict-local MCP.",
7
+ "agentProfile": "apply",
8
+ "mcpProfile": "strict-local",
9
+ "signingRequired": true,
10
+ "attestationRequired": true,
11
+ "networkPolicy": "limited"
12
+ },
13
+ "offline": {
14
+ "description": "Disconnected local work with no remote MCP transport and no networked agents.",
15
+ "agentProfile": "ask",
16
+ "mcpProfile": "strict-local",
17
+ "signingRequired": true,
18
+ "attestationRequired": true,
19
+ "networkPolicy": "off"
20
+ },
21
+ "regulated": {
22
+ "description": "High-trust profile for controlled environments with explicit approvals and evidence export.",
23
+ "agentProfile": "audit",
24
+ "mcpProfile": "strict-local",
25
+ "signingRequired": true,
26
+ "attestationRequired": true,
27
+ "networkPolicy": "limited"
28
+ },
29
+ "enterprise": {
30
+ "description": "Enterprise remote profile with registry-backed MCP and governed audit posture.",
31
+ "agentProfile": "audit",
32
+ "mcpProfile": "enterprise-remote",
33
+ "signingRequired": true,
34
+ "attestationRequired": true,
35
+ "networkPolicy": "limited"
36
+ }
37
+ }
38
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "schemaVersion": "2026.03",
3
+ "defaultPromptSet": "core",
4
+ "promptSets": {
5
+ "core": {
6
+ "description": "General workstation guidance and bounded implementation prompts.",
7
+ "changeControl": "signed-commit",
8
+ "reviewRequired": true
9
+ },
10
+ "regulated-audit": {
11
+ "description": "Compliance and high-trust audit prompts with stricter review expectations.",
12
+ "changeControl": "signed-commit-and-policy-review",
13
+ "reviewRequired": true
14
+ }
15
+ }
16
+ }
@@ -0,0 +1,18 @@
1
+ # Version pins for provisioned tools (Linux).
2
+ # Override by editing this file or exporting env vars before running.
3
+ STARSHIP_TAG="v1.24.2"
4
+ ZOXIDE_TAG="0.9.9"
5
+ NEOVIM_TAG="v0.11.6"
6
+ LAZYGIT_TAG="v0.60.0"
7
+ ATUIN_TAG="v18.13.3"
8
+ ZELLIJ_TAG="v0.43.1"
9
+ UV_TAG="0.10.12"
10
+
11
+ # Update & runtime tooling
12
+ TOPGRADE_TAG="v17.1.0"
13
+ MISE_TAG="v2026.3.8"
14
+ YAZI_TAG="v26.1.22"
15
+
16
+ # AI CLI Tools
17
+ MODS_TAG="v1.8.1"
18
+
@@ -0,0 +1,6 @@
1
+ # duf configuration (dotfiles)
2
+ # Format: key: value
3
+
4
+ theme: dark
5
+ sort: size
6
+ hide: tmpfs,devtmpfs
@@ -0,0 +1,5 @@
1
+ # Default app bindings for macOS (duti).
2
+ # Format: <bundle-id> <UTI> <role>
3
+ # Example:
4
+ # com.google.Chrome public.html all
5
+ # com.microsoft.VSCode public.plain-text all
@@ -0,0 +1,34 @@
1
+ 😀 grinning face
2
+ 😃 grinning face with big eyes
3
+ 😄 grinning face with smiling eyes
4
+ 😁 beaming face with smiling eyes
5
+ 😆 grinning squinting face
6
+ 😉 winking face
7
+ 😊 smiling face with smiling eyes
8
+ 😎 smiling face with sunglasses
9
+ 😍 smiling face with heart-eyes
10
+ 😘 face blowing a kiss
11
+ 😇 smiling face with halo
12
+ 🤔 thinking face
13
+ 🙃 upside-down face
14
+ 😴 sleeping face
15
+ 🤯 exploding head
16
+ 🥳 partying face
17
+ 😤 face with steam from nose
18
+ 😭 loudly crying face
19
+ 😱 face screaming in fear
20
+ 🤖 robot
21
+ 👋 waving hand
22
+ 👍 thumbs up
23
+ 🙏 folded hands
24
+ 💡 light bulb
25
+ 🔥 fire
26
+ ✨ sparkles
27
+ 🎉 party popper
28
+ 🚀 rocket
29
+ 🧠 brain
30
+ 🛠️ hammer and wrench
31
+ 📦 package
32
+ ✅ check mark
33
+ ❌ cross mark
34
+ ⚠️ warning
@@ -0,0 +1,2 @@
1
+ # SSH agent — point all sessions at the systemd-managed agent socket
2
+ SSH_AUTH_SOCK=${XDG_RUNTIME_DIR}/ssh-agent.socket
@@ -0,0 +1,19 @@
1
+ # Wayland session environment variables
2
+ ELECTRON_OZONE_PLATFORM_HINT=auto
3
+ TERMINAL=ghostty
4
+
5
+ # Qt Wayland support
6
+ QT_QPA_PLATFORM=wayland
7
+ QT_QPA_PLATFORMTHEME=gtk3
8
+
9
+ # Firefox native Wayland
10
+ MOZ_ENABLE_WAYLAND=1
11
+
12
+ # SDL Wayland support
13
+ SDL_VIDEODRIVER=wayland
14
+
15
+ # Java AWT fix (JetBrains IDEs, Ghidra)
16
+ _JAVA_AWT_WM_NONREPARENTING=1
17
+
18
+ # DMS icon theme
19
+ QS_ICON_THEME=Papirus-Dark
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/fastfetch-cli/fastfetch/dev/doc/json_schema.json",
3
+ "logo": {
4
+ "type": "auto",
5
+ "padding": { "top": 1, "left": 1 }
6
+ },
7
+ "display": {
8
+ "separator": " "
9
+ },
10
+ "modules": [
11
+ "title",
12
+ "os",
13
+ "host",
14
+ "kernel",
15
+ "uptime",
16
+ "packages",
17
+ "shell",
18
+ "display",
19
+ "wm",
20
+ "terminal",
21
+ "cpu",
22
+ "gpu",
23
+ "memory",
24
+ "disk",
25
+ "localip",
26
+ "publicip"
27
+ ]
28
+ }
@@ -0,0 +1,58 @@
1
+ // Copyright (c) 2015-2026 Dotfiles. All rights reserved.
2
+ // Firefox privacy and performance hardening
3
+ // Apply by symlinking to ~/.mozilla/firefox/<profile>/user.js
4
+
5
+ /* global user_pref */
6
+
7
+ {{- $t := index .themes .theme -}}
8
+
9
+ // Disable telemetry
10
+ user_pref("toolkit.telemetry.enabled", false);
11
+ user_pref("toolkit.telemetry.unified", false);
12
+ user_pref("toolkit.telemetry.archive.enabled", false);
13
+ user_pref("datareporting.healthreport.uploadEnabled", false);
14
+ user_pref("datareporting.policy.dataSubmissionEnabled", false);
15
+ user_pref("browser.ping-centre.telemetry", false);
16
+ user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
17
+ user_pref("browser.newtabpage.activity-stream.telemetry", false);
18
+
19
+ // Disable Pocket
20
+ user_pref("extensions.pocket.enabled", false);
21
+
22
+ // Disable prefetching
23
+ user_pref("network.prefetch-next", false);
24
+ user_pref("network.dns.disablePrefetch", true);
25
+ user_pref("network.predictor.enabled", false);
26
+
27
+ // Enable HTTPS-Only
28
+ user_pref("dom.security.https_only_mode", true);
29
+ user_pref("dom.security.https_only_mode_ever_enabled", true);
30
+
31
+ // Disable form autofill
32
+ user_pref("extensions.formautofill.addresses.enabled", false);
33
+ user_pref("extensions.formautofill.creditCards.enabled", false);
34
+
35
+ // Enhanced tracking protection
36
+ user_pref("browser.contentblocking.category", "strict");
37
+ user_pref("privacy.trackingprotection.enabled", true);
38
+ user_pref("privacy.trackingprotection.socialtracking.enabled", true);
39
+
40
+ // DNS over HTTPS
41
+ user_pref("network.trr.mode", 2);
42
+ user_pref("network.trr.uri", "https://mozilla.cloudflare-dns.com/dns-query");
43
+
44
+ // Disable WebRTC IP leak
45
+ user_pref("media.peerconnection.ice.default_address_only", true);
46
+
47
+ // Performance
48
+ user_pref("gfx.webrender.all", true);
49
+ user_pref("layers.acceleration.force-enabled", true);
50
+ user_pref("layout.css.backdrop-filter.enabled", true);
51
+
52
+ // Theme coordination
53
+ // 0 = dark, 1 = light
54
+ user_pref("layout.css.prefers-color-scheme.content-override", {{ if eq $t.mode "light" }}1{{ else }}0{{ end }});
55
+
56
+ // UI
57
+ user_pref("browser.uidensity", 1);
58
+ user_pref("browser.compactmode.show", true);
@@ -0,0 +1,9 @@
1
+ # Copyright (c) 2015-2026 Dotfiles. All rights reserved.
2
+ # Completions for dot-theme-sync
3
+
4
+ # Complete with theme names from themes.toml
5
+ complete -c dot-theme-sync -f -a "{{- range $name, $_ := .themes }}{{ $name }} {{ end }}"
6
+
7
+ # Complete with flags
8
+ complete -c dot-theme-sync -l help -s h -d "Show help"
9
+ complete -c dot-theme-sync -l full -d "Full chezmoi apply + reload"
@@ -0,0 +1,115 @@
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"
@@ -0,0 +1,56 @@
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
@@ -0,0 +1,77 @@
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
@@ -0,0 +1,48 @@
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
@@ -0,0 +1,22 @@
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