@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
package/README.md ADDED
@@ -0,0 +1,284 @@
1
+ <p align="center">
2
+ <img src="https://cloudcdn.pro/dotfiles/v2/images/logos/dotfiles.svg" alt="Dotfiles logo" width="128" />
3
+ </p>
4
+
5
+ <h1 align="center">.dotfiles</h1>
6
+
7
+ <p align="center">
8
+ <strong>Declarative dotfiles for macOS, Linux, and WSL. Multi-shell by default, with sub-second startup, wallpaper-driven themes, and signed releases.</strong>
9
+ </p>
10
+
11
+ <p align="center">
12
+ <a href="https://github.com/sebastienrousseau/dotfiles/actions"><img src="https://img.shields.io/github/actions/workflow/status/sebastienrousseau/dotfiles/ci.yml?style=for-the-badge&logo=github" alt="Build" /></a>
13
+ <a href="https://github.com/sebastienrousseau/dotfiles/releases/latest"><img src="https://img.shields.io/badge/Version-v0.2.500-blue?style=for-the-badge" alt="Version" /></a>
14
+ <a href="https://github.com/sebastienrousseau/dotfiles/releases"><img src="https://img.shields.io/github/downloads/sebastienrousseau/dotfiles/total?style=for-the-badge" alt="Downloads" /></a>
15
+ <a href="https://codespaces.new/sebastienrousseau/dotfiles"><img src="https://github.com/codespaces/badge.svg" alt="Open in GitHub Codespaces" /></a>
16
+ </p>
17
+
18
+ ---
19
+
20
+ ## Install
21
+
22
+ ```bash
23
+ bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/master/install.sh)"
24
+ ```
25
+
26
+ Then verify and explore:
27
+
28
+ ```bash
29
+ dot doctor # verify installation
30
+ dot learn # interactive tour
31
+ ```
32
+
33
+ Requires `git` and `curl`. Works on macOS, Ubuntu/Debian, Arch, WSL2, and GitHub Codespaces.
34
+
35
+ <details>
36
+ <summary>CI/CD and Docker options</summary>
37
+
38
+ Silent install (no prompts):
39
+
40
+ ```bash
41
+ DOTFILES_SILENT=1 DOTFILES_NONINTERACTIVE=1 \
42
+ bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/master/install.sh)"
43
+ ```
44
+
45
+ Docker sandbox:
46
+
47
+ ```bash
48
+ docker run --rm -e DOTFILES_NONINTERACTIVE=1 ubuntu:24.04 bash -c \
49
+ 'apt-get update -qq && apt-get install -y -qq git curl sudo >/dev/null 2>&1 \
50
+ && git clone --depth 1 https://github.com/sebastienrousseau/dotfiles.git ~/.dotfiles \
51
+ && bash ~/.dotfiles/install.sh \
52
+ && export PATH="$HOME/.local/bin:$PATH" \
53
+ && dot doctor'
54
+ ```
55
+
56
+ </details>
57
+
58
+ ---
59
+
60
+ ## Why this repo is different
61
+
62
+ Most dotfiles repos are personal collections. This one ships as workstation infrastructure: signed, attested, multi-platform, AI-aware, and self-healing.
63
+
64
+ | Capability | What you get | Where |
65
+ |:---|:---|:---|
66
+ | **Wallpaper-Driven Themes** | K-Means clustering in CIELAB extracts terminal palettes from any wallpaper. WCAG AAA enforced. Dynamic HEIC dark/light. | `dot theme rebuild` |
67
+ | **AI & MCP Native** | Agent profiles, MCP policy enforcement, attestation logs, AI commit messages | `dot ai`, `dot mcp`, `dot agent`, `dot mode` |
68
+ | **Cryptographic Attestation** | Signed commits, machine-readable evidence, policy bundle releases | `dot attest`, `dot verify` |
69
+ | **Fleet Management** | Multi-node drift dashboard, per-host profiles | `dot fleet` |
70
+ | **Self-Healing** | Auto-repair tools, chezmoi drift, broken symlinks, missing files | `dot heal`, `dot chaos`, `dot rollback`, `dot bundle` |
71
+ | **Sub-second Startup** | Lazy loading, `_cached_eval` pattern, mtime-based cache invalidation | `dot benchmark`, `dot perf` |
72
+ | **Multi-shell Parity** | Fish, Zsh, Nushell, PowerShell share one templated baseline | `dot env`, `dot profile` |
73
+ | **Build Artifacts → /tmp** | Cargo, Go, pip, uv, Zig caches redirected; project dirs stay clean | `~/.config/mise/config.toml`, `~/.cargo/config.toml` |
74
+ | **Encrypted Secrets** | Age + SOPS for per-machine secrets out of plaintext history | `dot secrets` |
75
+ | **Portable Runtimes** | Mise for managed toolchains, Nix Flakes for strict reproducibility | `dot env`, `dot upgrade` |
76
+
77
+ ---
78
+
79
+ ## Architecture
80
+
81
+ Idempotent. Run it once or a hundred times. Same machine state.
82
+
83
+ ```mermaid
84
+ graph TD
85
+ A[User Shell] --> B{dot CLI}
86
+ B --> C[Lifecycle: sync / apply / rollback / heal]
87
+ B --> D[Diagnostics: doctor / drift / benchmark / score]
88
+ B --> E[AI & Agents: ai / mcp / agent / mode]
89
+ B --> F[Themes: theme / theme rebuild]
90
+ B --> G[Fleet & Attest: fleet / attest / bundle]
91
+
92
+ C --> H[Chezmoi Source]
93
+ F --> I[Wallpaper Discovery<br/>System + Custom]
94
+ I --> J[K-Means CIELAB Engine]
95
+ J --> K[themes.toml<br/>WCAG AAA enforced]
96
+ K --> H
97
+
98
+ H --> L[Zsh / Fish / Bash / Nushell]
99
+ H --> M[Mise / Nix Toolchains]
100
+ H --> N[MCP Policy / Agent Profiles]
101
+ L --> O[~/.cache/shell Fast Init]
102
+
103
+ G --> P[Signed Attestation Logs]
104
+ ```
105
+
106
+ ---
107
+
108
+ ## Wallpaper-Driven Themes
109
+
110
+ Drop a wallpaper. Get a theme.
111
+
112
+ `dot theme rebuild` discovers system wallpapers (macOS `/System/Library/Desktop Pictures/`, Linux `/usr/share/backgrounds/`) plus your custom wallpapers (`~/Pictures/Wallpapers/`). K-Means clustering in CIELAB color space extracts dominant colors, generates a 16-color terminal palette, enforces WCAG AAA contrast, and assembles `themes.toml` automatically.
113
+
114
+ | Tier | Source | Format |
115
+ |:---|:---|:---|
116
+ | **System** | macOS `/System/Library/Desktop Pictures/`<br/>Linux `/usr/share/backgrounds/` | `.heic`, `.jpg`, `.png` |
117
+ | **Custom** | `~/Pictures/Wallpapers/` (overrides system on name collision) | Apple-compatible dynamic HEIC (single file, both appearances) |
118
+
119
+ ```bash
120
+ dot theme # interactive picker (paired themes only)
121
+ dot theme tahoe-dark # switch directly
122
+ dot theme toggle # swap dark↔light within current family
123
+ dot theme rebuild # regenerate from current wallpapers
124
+ ```
125
+
126
+ On theme switch, every managed surface updates: terminal colors (Ghostty, Alacritty, Kitty, WezTerm, tmux), editor (Neovim, VS Code), GTK/icons, macOS accent + dark mode (forced UI refresh), browser color mode, wallpaper. Linux auto-converts HEIC → PNG via `magick`/`heif-convert`.
127
+
128
+ Full guide: [docs/guides/THEMING.md](docs/guides/THEMING.md)
129
+
130
+ ---
131
+
132
+ ## The `dot` CLI
133
+
134
+ 30+ commands grouped by intent. Run `dot help` for the full reference.
135
+
136
+ ### Start Here
137
+ | | |
138
+ |:---|:---|
139
+ | `dot sync` | Apply dotfiles to this machine |
140
+ | `dot doctor` | Check the environment and surface issues |
141
+ | `dot learn` | Open the guided tour |
142
+
143
+ ### Daily Use
144
+ | | |
145
+ |:---|:---|
146
+ | `dot status` / `dot diff` | Show local drift / preview pending changes |
147
+ | `dot edit` | Open the source directory |
148
+ | `dot upgrade` | Update tools and dotfiles |
149
+
150
+ ### Inspect & Repair
151
+ | | |
152
+ |:---|:---|
153
+ | `dot heal` | Auto-fix tools, chezmoi drift, broken symlinks |
154
+ | `dot rollback` | Return to a previous known-good state |
155
+ | `dot attest` | Export workstation evidence |
156
+ | `dot chaos` | Simulate corruption to test self-healing |
157
+
158
+ ### AI & Agents
159
+ | | |
160
+ |:---|:---|
161
+ | `dot ai` | Show installed AI tools |
162
+ | `dot mcp` | Inspect MCP policy and registry |
163
+ | `dot mode` | Show or set the agent profile |
164
+ | `dot agent` | Agent metadata, logs, checkpoints, conformance |
165
+
166
+ ### Configuration
167
+ | | |
168
+ |:---|:---|
169
+ | `dot theme` / `dot theme rebuild` | Switch theme / regenerate from wallpapers |
170
+ | `dot env` | Show managed tool versions |
171
+ | `dot profile` | Show or switch active profile |
172
+ | `dot secrets` | Edit encrypted secrets |
173
+
174
+ ### Fleet & Performance
175
+ | | |
176
+ |:---|:---|
177
+ | `dot fleet` | Multi-node status, drift, namespace |
178
+ | `dot benchmark` / `dot perf` | Measure shell startup |
179
+ | `dot score` | Health and security scorecard |
180
+
181
+ Full reference: [docs/reference/UTILS.md](docs/reference/UTILS.md) · Complete manual: [docs/manual/](docs/manual/) or `dot manual`
182
+
183
+ ---
184
+
185
+ ## Documentation
186
+
187
+ The `.dotfiles` Manual is published in 9 formats: HTML (single + multi-page), PDF, EPUB, ASCII text, compressed variants, Markdown source. Auto-built on every change.
188
+
189
+ - **Online** — <https://sebastienrousseau.github.io/dotfiles/manual/>
190
+ - **Terminal** — `dot manual text | less`
191
+ - **PDF** — `dot manual pdf`
192
+ - **Offline bundle** — `dot bundle --manual`
193
+ - **Sources** — [`docs/manual/`](docs/manual/)
194
+
195
+ ---
196
+
197
+ ## First 5 Minutes
198
+
199
+ 1. **Check** — `dot doctor` validates tools, paths, and security
200
+ 2. **Explore** — `dot learn` walks through shells, secrets, themes, performance
201
+ 3. **Customize** — edit `~/.config/chezmoi/chezmoi.toml` for per-machine settings ([Profiles](docs/reference/PROFILES.md))
202
+ 4. **Toggle features** — flip features in `.chezmoidata.toml` ([Feature Flags](docs/reference/FEATURES.md))
203
+ 5. **Apply** — `dot sync` applies the config; `dot prewarm` caches shell startup
204
+
205
+ See the [Migration Guide](docs/operations/MIGRATION.md) for version upgrades.
206
+
207
+ ---
208
+
209
+ ## What's Included
210
+
211
+ <details>
212
+ <summary><b>Shells and Navigation</b></summary>
213
+
214
+ - **Zsh** loads in stages through small modules, not one big startup script
215
+ - **Fish** uses `_cached_eval` and deferred loading for fast interactive use
216
+ - **Nushell** handles structured terminal workflows
217
+ - **PowerShell** keeps cross-platform and WSL sessions on the same baseline
218
+ - **Starship**, **Zoxide**, **Atuin**, and **fzf** for navigation and command recall
219
+ </details>
220
+
221
+ <details>
222
+ <summary><b>Development and Runtimes</b></summary>
223
+
224
+ - **Mise** manages language versions in user space (no system pollution)
225
+ - **Nix Flakes** for strict reproducible builds when speed isn't the priority
226
+ - **Pueue** queues long-running tasks instead of spawning extra terminal tabs
227
+ - **Neovim** ships as a full Lua-based editor, not a starter template
228
+ - **Lazygit** for terminal git workflow without a GUI
229
+ - **Build caches** (Cargo, Go, pip, uv, Zig) redirected to `/tmp/builds/` — cleared on reboot
230
+ </details>
231
+
232
+ <details>
233
+ <summary><b>AI, Agents, and MCP</b></summary>
234
+
235
+ - **Agent profiles** (`dot mode`) — switch between architect, hardener, refactor patterns
236
+ - **MCP policy enforcement** (`dot mcp`) — validate Model Context Protocol registry against policy
237
+ - **AI commit messages** (`dot commit`) — conventional commits generated from staged diff
238
+ - **AI tools** (`dot ai`) — Claude Code, Codex, GitHub Copilot, Gemini CLI managed via Mise
239
+ - **Attestation logs** — every agent session logged with policy hash + outcome
240
+ </details>
241
+
242
+ <details>
243
+ <summary><b>Security, Trust, and Governance</b></summary>
244
+
245
+ - **Age + SOPS** keep secrets encrypted at rest and out of plaintext history
246
+ - **SSH ED25519 signing** + trust metadata back signed commits and verifiable changes
247
+ - **Gitleaks**, policy checks, compliance workflows
248
+ - **Workstation attestation** (`dot attest`) records machine state, policy, prompt, model metadata in tracked JSON
249
+ - **Telemetry controls** and local-first defaults — you own your data
250
+ - **SBOM (CycloneDX)** + Grype CVE scanning in CI
251
+ </details>
252
+
253
+ For security hardening options, see [Security docs](docs/security/SECURITY.md).
254
+
255
+ ---
256
+
257
+ ## Comparison
258
+
259
+ | | This repo | chezmoi | holman/dotfiles | nikitabobko/dotfiles |
260
+ |:---|:---:|:---:|:---:|:---:|
261
+ | Cross-platform (macOS/Linux/WSL) | ✓ | ✓ | macOS-leaning | macOS only |
262
+ | Multi-shell parity (zsh/fish/nu/pwsh) | ✓ | — | bash only | zsh only |
263
+ | Wallpaper-driven themes (K-Means) | ✓ | — | — | — |
264
+ | AI / MCP integration | ✓ | — | — | — |
265
+ | Cryptographic attestation | ✓ | — | — | — |
266
+ | Self-healing CLI | ✓ | — | — | — |
267
+ | Fleet management | ✓ | — | — | — |
268
+ | Encrypted secrets (Age/SOPS) | ✓ | ✓ | — | — |
269
+ | Build artifact redirection | ✓ | — | — | — |
270
+
271
+ `chezmoi` is the underlying templating engine. This repo is the opinionated reference implementation.
272
+
273
+ ---
274
+
275
+ **THE ARCHITECT** ᛫ [Sebastien Rousseau](https://sebastienrousseau.com)
276
+ **THE ENGINE** ᛞ [EUXIS](https://euxis.co) ᛫ Enterprise Unified Execution Intelligence System
277
+
278
+ ---
279
+
280
+ ## License
281
+
282
+ Licensed under the **MIT License**. See [LICENSE](LICENSE) for details.
283
+
284
+ <p align="right"><a href="#dotfiles">Back to Top</a></p>
@@ -0,0 +1,69 @@
1
+ # Localization Readability Audit
2
+
3
+ Note: Flesch metrics are English-centric. For localized pages, they are used as a plain-language proxy when Latin word boundaries are available.
4
+
5
+ ## Readability Scorecard
6
+
7
+ | Language | Reading Ease | Grade Level | Passive % | Avg Sentence Length |
8
+ | :--- | ---: | ---: | ---: | ---: |
9
+ | ar | n/a | n/a | n/a | n/a |
10
+ | de | n/a | n/a | n/a | n/a |
11
+ | es | n/a | n/a | n/a | n/a |
12
+ | fr | n/a | n/a | n/a | n/a |
13
+ | he | n/a | n/a | n/a | n/a |
14
+ | hi | n/a | n/a | n/a | n/a |
15
+ | id | n/a | n/a | n/a | n/a |
16
+ | it | n/a | n/a | n/a | n/a |
17
+ | ja | n/a | n/a | n/a | n/a |
18
+ | ko | n/a | n/a | n/a | n/a |
19
+ | nl | n/a | n/a | n/a | n/a |
20
+ | pl | n/a | n/a | n/a | n/a |
21
+ | pt | n/a | n/a | n/a | n/a |
22
+ | ro | n/a | n/a | n/a | n/a |
23
+ | ru | n/a | n/a | n/a | n/a |
24
+ | th | n/a | n/a | n/a | n/a |
25
+ | tr | n/a | n/a | n/a | n/a |
26
+ | uk | n/a | n/a | n/a | n/a |
27
+ | vi | n/a | n/a | n/a | n/a |
28
+ | zh | n/a | n/a | n/a | n/a |
29
+ | zh-tw | n/a | n/a | n/a | n/a |
30
+
31
+ ## Parity Gap Table
32
+
33
+ | Priority | Locale | Route | Deviation |
34
+ | :--- | :--- | :--- | :--- |
35
+
36
+ ## Active & Simple Diff
37
+
38
+ ### docs/adr/ADR-007-multi-shell-parity.md
39
+
40
+ - Source: **Nushell spoke:** Hybrid approach: - Aliases: Runtime bash extraction cached to (in ), sourced by - Functions: Chezmoi template-generated wrappers delegating to bash (in ) **Parity tiers:** - **Tier 1 (Full):** Zsh, Bash — all aliases, functions, lazy loading, cached eval - **Tier 2 (Bridged):** Fish — all simple aliases, all functions via wrappers, caching - **Tier 3 (Compatible):** Nushell — simple aliases (no complex bash syntax), all functions via bash delegation - Single source of truth for aliases and functions - Adding a new alias/function automatically propagates to all shells - Nushell users get access to 40+ functions that were previously unavailable - Fish users get mtime-aware caching via - Complex bash aliases (pipes, conditionals) are skipped for Nushell - Function calls in Fish/Nushell incur bash subprocess overhead (~5ms per call) - Cache invalidation requires shell restart or manual cache clear - Nushell's rapid development may break bridge syntax in future versions - Very large alias sets may slow Nushell startup during cache generation.
41
+ - Simplified: **Nushell spoke:** Hybrid approach: - Aliases: Runtime bash extraction cached to (in ), sourced by - Functions: Chezmoi template-generated wrappers delegating to bash (in ) **Parity tiers:** - **Tier 1 (Full):** Zsh, Bash — all aliases, functions, lazy loading, cached eval - **Tier 2 (Bridged):** Fish — all simple aliases, all functions via wrappers, caching - **Tier 3 (Compatible):** Nushell — simple aliases (no complex bash syntax), all functions via bash delegation - Single source of truth for aliases and functions -. Adding a new alias/function automatically propagates to all shells - Nushell users get access to 40+ functions that were previously unavailable - Fish users get mtime-aware caching via - Complex bash aliases (pipes, conditionals) are skipped for Nushell - Function calls in Fish/Nushell incur bash subprocess overhead (~5ms per call) - Cache invalidation requires shell restart or manual cache clear - Nushell's rapid development may break bridge syntax in future versions - Very large alias sets may slow Nushell startup during cache generation
42
+
43
+ ### docs/guides/TROUBLESHOOTING.md
44
+
45
+ - Source: ) **Problem:** LSP not working - Install required language servers - Check for status - Review for errors **Problem:** Git aliases not working - Check if Git config is applied: - Re-apply dotfiles: **Problem:** Delta (diff pager) not showing colors - Verify is installed - Confirm your terminal supports 256 colors **Problem:** kubectl context issues - List contexts: - Switch context: - Check kubeconfig: **Problem:** Minikube won't start - Verify Docker is running - Try: - Check logs: **Problem:** High memory usage - Look for runaway processes: or - Review shell history size in atuin config - Disable unused plugins **Problem:** Nix isn't installed or commands not found - Ensure you have followed the installation guide: - On Linux, you might need to enable experimental features in : - Verify the daemon is running: **Problem:** Systemd isn't available (mostly WSL2) - Dotfiles functions that rely on systemd (like management) will fallback to direct execution.
46
+ - Simplified: ) **Problem:** LSP not working - Install required language servers - Check for status - Review for errors **Problem:** Git aliases not working - Check if Git config is applied: - Re-apply dotfiles: **Problem:** Delta (diff pager) not showing colors - Verify is installed - Confirm your terminal supports 256 colors **Problem:** kubectl context issues - List contexts: - Switch context: - Check kubeconfig: **Problem:** Minikube won't start - Verify Docker is running - Try: - Check. logs: **Problem:** High memory usage - Look for runaway processes: or - Review shell history size in atuin config - Disable unused plugins **Problem:** Nix isn't installed or commands not found - Ensure you have followed the installation guide: - On Linux, you might need to enable experimental features in : - Verify the daemon is running: **Problem:** Systemd isn't available (mostly WSL2) - Dotfiles functions that rely on systemd (like management) will fallback to direct execution
47
+
48
+ ### docs/operations/VERSION_SYNC.md
49
+
50
+ - Source: sh --verify || echo "Version drift detected" The GitHub Actions workflow provides metrics: - Files scanned - Files updated - Verification status - Processing time - Local backups in - GitHub Actions artifacts (30-day retention) - Git history for rollback permissions: contents: write # Required for commits pull-requests: write # Required for PR comments - Version format validation ( pattern) - File path validation (no directory traversal) - Change verification before commit - All changes logged in Git history - GitHub Actions run history - Backup preservation - Git operations use shallow fetch when possible - Pattern compilation cached - File discovery optimized with - File processing is sequential but optimized - Git operations batched - Verification runs concurrently with updates - Typical run time: 30-60 seconds - Memory usage: <100MB - Network usage: Minimal (only Git operations) 1.
51
+ - Simplified: sh --verify || echo "Version drift detected" The GitHub Actions workflow provides metrics: - Files scanned - Files updated - Verification status - Processing time - Local backups in - GitHub Actions artifacts (30-day retention) - Git history for rollback permissions: contents: write # Required for commits pull-requests: write # Required for PR comments - Version format validation ( pattern) - File path validation (no directory traversal) - Change. verification before commit - All changes logged in Git history - GitHub Actions run history - Backup preservation - Git operations use shallow fetch when possible - Pattern compilation cached - File discovery optimized with - File processing is sequential but optimized - Git operations batched - Verification runs concurrently with updates - Typical run time: 30-60 seconds - Memory usage: <100MB - Network usage: Minimal (only Git operations) 1
52
+
53
+ ## Localized Terminology Glossary
54
+
55
+ | Term | Rule |
56
+ | :--- | :--- |
57
+ | macOS | Keep official Apple spelling in all locales. |
58
+ | Linux | Keep as Linux. |
59
+ | WSL | Keep as WSL on first use. |
60
+ | Chezmoi | Keep product name in English. |
61
+ | `dot doctor` | Keep command unchanged in all locales. |
62
+ | shell | Localize only in prose; never inside commands or paths. |
63
+ | alias | Localize in prose when natural; keep code examples unchanged. |
64
+
65
+ ## Priority Action Register
66
+
67
+ - [P0] Meaning Drifts: 0
68
+ - [P1] Readability Blockers: 0
69
+ - [P2] Stylistic Polishing: 0
package/docs/AI.md ADDED
@@ -0,0 +1,102 @@
1
+ # AI Integrations (Opt-in)
2
+
3
+ AI helpers are **off by default**. You choose if and when to turn them on.
4
+
5
+ ## Enable AI helpers
6
+
7
+ ```bash
8
+ export DOTFILES_AI=1
9
+ exec zsh
10
+ ```
11
+
12
+ This turns on the local helper scripts for context suggestions and error analysis. It does not install any AI tools.
13
+
14
+ ## Steering Patterns
15
+
16
+ Patterns in `~/.dotfiles/dot_config/ai/patterns/` add focused context to AI requests.
17
+
18
+ - **Architect** — shell setup and stack tuning
19
+ - **Hardener** — security, encryption, and compliance
20
+ - **Refactor** — POSIX compatibility, performance, and linting
21
+
22
+ ### Contextual Bridge
23
+
24
+ Use the `dot` CLI to run AI tools with added context:
25
+
26
+ ```bash
27
+ # General usage
28
+ dot cl|copilot|gemini|kiro|sgpt|ollama|opencode|aider|autohand|vibe|qwen|zai --pattern <name> "prompt"
29
+
30
+ # Quick aliases
31
+ dcla "Optimize my zshrc" # Claude + Architect
32
+ dgmnh "Audit my ssh config" # Gemini + Hardener
33
+ dkir "Refactor this script" # Kiro + Refactorer
34
+ ```
35
+
36
+ The bridge adds system details (OS, architecture, date) to the prompt. This gives the AI the context it needs for accurate answers.
37
+
38
+ Supported bridge commands:
39
+
40
+ | Command | Provider |
41
+ |---------|----------|
42
+ | `dot cl` | Claude Code |
43
+ | `dot copilot` | GitHub Copilot CLI |
44
+ | `dot gemini` | Gemini CLI |
45
+ | `dot kiro` | Kiro CLI |
46
+ | `dot sgpt` | Shell-GPT |
47
+ | `dot ollama` | Ollama |
48
+ | `dot opencode` | OpenCode |
49
+ | `dot aider` | Aider |
50
+ | `dot autohand` | Autohand Code |
51
+ | `dot vibe` | Mistral Vibe |
52
+ | `dot qwen` | Qwen Code |
53
+ | `dot zai` | ZAI (Zhipu AI) |
54
+
55
+ ### `dot ai` status and launcher
56
+
57
+ `dot ai` shows which AI CLIs are installed, grouped by category. If `gum` is available, it also opens a quick launcher.
58
+
59
+ Current categories:
60
+
61
+ - Agents (autonomous)
62
+ - Coding (interactive)
63
+ - General (prompt-based)
64
+ - Runtime (local)
65
+ - Cloud (platform)
66
+
67
+ The launcher is simple and fast. It shows short role labels like `agent`, `coding`, `general`, `local`, and `cloud` so you can pick quickly.
68
+
69
+ To stay fast, `dot ai` caches provider info in `~/.cache/dotfiles/ai/status.tsv` for 5 minutes. You can change this with `DOTFILES_AI_STATUS_TTL`.
70
+
71
+ Related AI commands:
72
+
73
+ - `dot ai` — check status and launch tools
74
+ - `dot ai-setup` — set up AI CLIs step by step
75
+ - `dot ai-query` — run context-aware queries on the dotfiles repo
76
+
77
+ ## Optional AI CLI tools
78
+
79
+ These tools are not installed for you. Pick and install only the ones you want:
80
+
81
+ - **Agents**: `claude`, `copilot`
82
+ - **Coding assistants**: `aider`, `opencode`
83
+ - **General AI**: `gemini`, `sgpt`
84
+ - **Local-first**: `ollama`
85
+ - **Coding agents**: `autohand`, `vibe`, `qwen`, `zai`
86
+ - **Cloud / platform**: `kiro-cli`
87
+
88
+ Once installed, the dotfiles add helper functions and shortcuts. These only load when `DOTFILES_AI=1` is set.
89
+
90
+ ## Agentic terminal workflows
91
+
92
+ If your terminal has built-in AI agents, keep your shell lean and fast:
93
+
94
+ - Use `DOTFILES_FAST=1` or `DOTFILES_ULTRA_FAST=1`.
95
+ - Let the terminal handle agents and its own UI.
96
+ - Keep dotfiles focused on consistency, safety, and clean repeats.
97
+
98
+ ## Privacy and safety
99
+
100
+ - No AI tools are installed for you.
101
+ - No background services run by default.
102
+ - You control AI helpers with `DOTFILES_AI=1`.
package/docs/COPYRIGHT CHANGED
@@ -1,6 +1,7 @@
1
1
  /*
2
- * 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.471) - <https://dotfiles.io>
3
- * Made with in London, UK by Sebastien Rousseau
4
- * Copyright (c) 2015-2024. All rights reserved
2
+ * 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.500) - <https://github.com/sebastienrousseau/dotfiles>
3
+ * Made With ❤️ in London, United Kingdom
4
+ * Designed by
5
+ * Copyright (c) 2015-2026. All rights reserved.
5
6
  * License: MIT
6
7
  */
@@ -0,0 +1,95 @@
1
+ # Naming Conventions & Standardization Guide
2
+
3
+ This document defines the naming conventions for all files in the dotfiles repository.
4
+
5
+ ---
6
+
7
+ ## File Naming
8
+
9
+ | Context | Convention | Example |
10
+ |---|---|---|
11
+ | Run scripts | `run_{type}_{NN}-{verb}-{noun}.sh.tmpl` | `run_onchange_10-install-packages.sh.tmpl` |
12
+ | Shell fragments | `{NN}-{domain}-{detail}.sh.tmpl` | `90-ux-aliases.sh.tmpl` |
13
+ | Alias files | `{tool}.aliases.sh` | `git.aliases.sh` |
14
+ | Function files | `{name}.sh` (lowercase) | `apihealth.sh` |
15
+ | Test files | `test_{domain}_{feature}.sh` | `test_aliases_git.sh` |
16
+ | Scripts | `{verb}-{noun}.sh` (hyphenated) | `install-nerd-fonts.sh` |
17
+
18
+ ## Run Script Numbering Tiers
19
+
20
+ | Range | Category | Examples |
21
+ |---|---|---|
22
+ | 00-09 | Audit & pre-flight | `run_before_00-audit.sh` |
23
+ | 10-19 | Package installation | `run_onchange_10-linux-packages.sh.tmpl` |
24
+ | 20-29 | Config & languages | `run_onchange_20-ghostty-config.sh.tmpl` |
25
+ | 25-29 | Language toolchains | `run_onchange_25-python-tools.sh.tmpl` |
26
+ | 30-39 | Applications | `run_onchange_30-vscode-extensions.sh.tmpl` |
27
+ | 40-49 | System defaults | `run_onchange_40-darwin-default-apps.sh.tmpl` |
28
+ | 50-59 | Assets (fonts, themes) | `run_onchange_50-install-fonts.sh.tmpl` |
29
+
30
+ ---
31
+
32
+ ## Adding New Modules
33
+
34
+ ### New app config
35
+
36
+ 1. Create `dot_config/<app>/` with chezmoi-compatible filenames
37
+ 2. Add entry to `dot_config/.module-manifest.json`
38
+ 3. Optionally gate with feature flag in `.chezmoidata.toml` + `.chezmoiignore.tmpl`
39
+
40
+ ### New alias category
41
+
42
+ 1. Create `.chezmoitemplates/aliases/<category>/<name>.aliases.sh`
43
+ 2. The `**/*.aliases.sh` glob auto-discovers it
44
+ 3. Add to `$coreCategories` list in `90-ux-aliases.sh.tmpl` for eager loading; otherwise it loads lazily
45
+
46
+ ### New function
47
+
48
+ 1. Create file in `.chezmoitemplates/functions/<group>/`
49
+ 2. Add to `groups.json` with the `<group>/<filename>` path
50
+ 3. It auto-registers for lazy loading via `51-logic-functions-extra.sh.tmpl`
51
+
52
+ ### New provisioning script
53
+
54
+ 1. Create `install/provision/run_onchange_{NN}-{name}.sh.tmpl`
55
+ 2. Use the numbering tiers above
56
+ 3. Source `install/lib/os_detection.sh` for platform detection
57
+ 4. Guard OS-specific code with `{{ if eq .chezmoi.os "darwin" }}`
58
+
59
+ ---
60
+
61
+ ## Directory Structure Overview
62
+
63
+ ```text
64
+ .chezmoitemplates/
65
+ aliases/ # 48 categories, auto-discovered
66
+ functions/ # Grouped by domain (api/, curl/, text/, system/, etc.)
67
+ paths/ # PATH construction templates
68
+ desktop/ # Desktop environment templates (dconf)
69
+
70
+ dot_config/ # Flat — chezmoi constraint, no intermediate grouping
71
+
72
+ install/
73
+ lib/ # Shared helpers (os_detection, logging, installers)
74
+ provision/ # run_onchange_* provisioning scripts
75
+
76
+ scripts/ # Repo-only scripts (not deployed)
77
+ dot/ # dot CLI subcommands
78
+ ops/ # Operations scripts
79
+ diagnostics/ # Health checks
80
+ security/ # Security tools
81
+ ...
82
+
83
+ tests/ # Test suite (not deployed)
84
+ framework/ # Test runner, assertions, mocks
85
+ unit/ # Domain-organized unit tests
86
+ integration/ # End-to-end tests
87
+ performance/ # Benchmarks
88
+
89
+ docs/ # Documentation and GitHub Pages source
90
+ architecture/ # System design docs
91
+ guides/ # How-to guides
92
+ reference/ # Reference material
93
+ security/ # Security documentation
94
+ operations/ # Ops and maintenance docs
95
+ ```
package/docs/README.md ADDED
@@ -0,0 +1,78 @@
1
+ # Documentation
2
+
3
+ Start here. Then go deeper.
4
+
5
+ ## The Manual
6
+
7
+ The complete reference is the `.dotfiles` Manual — a multi-format book covering every concept, tutorial, reference, and recipe.
8
+
9
+ - Online: <https://sebastienrousseau.github.io/dotfiles/manual/> (HTML, PDF, EPUB, ASCII)
10
+ - Locally: `dot manual` opens the HTML in your browser
11
+ - Sources: [`docs/manual/`](manual/)
12
+
13
+ Quick jumps into the Manual:
14
+
15
+ - [Introduction](manual/00-introduction.md) — who, what, how
16
+ - [Concepts](manual/01-concepts/) — architecture, trust model, theme engine, fleet, self-healing
17
+ - [Tutorials](manual/02-tutorials/) — first install, wallpaper→theme, profiles, secrets, fleet
18
+ - [Reference](manual/03-reference/) — CLI, config files, environment, templates, feature flags
19
+ - [Cookbook](manual/04-cookbook/) — 40+ recipes, troubleshooting, FAQ
20
+
21
+ ## Start
22
+
23
+ - [Install](guides/INSTALL.md)
24
+ - [Troubleshooting](guides/TROUBLESHOOTING.md)
25
+ - [Support matrix](reference/SUPPORT_MATRIX.md)
26
+
27
+ ## Daily use
28
+
29
+ - [Utilities and `dot` CLI](reference/UTILS.md)
30
+ - [Operations](operations/OPERATIONS.md)
31
+ - [Trusted agent workstation](operations/TRUSTED_AGENT_WORKSTATION.md)
32
+ - [Workstation attestation](operations/ATTESTATION.md)
33
+ - [Interoperability](architecture/INTEROP.md)
34
+ - [Agent interoperability](interop/A2A.md)
35
+ - [AI integrations](AI.md)
36
+
37
+ ## Security and trust
38
+
39
+ - [Security overview](security/SECURITY.md)
40
+ - [Security checklist](security/SECURITY_CHECKLIST.md)
41
+ - [Policy bundle releases](security/POLICY_RELEASES.md)
42
+ - [Secrets](security/SECRETS.md)
43
+ - [Compliance](security/COMPLIANCE.md)
44
+ - [Threat model](security/THREAT_MODEL.md)
45
+
46
+ ## Build and maintain
47
+
48
+ - [Testing](operations/TESTING.md)
49
+ - [Reliability](operations/RELIABILITY.md)
50
+ - [Naming conventions](NAMING_CONVENTIONS.md)
51
+ - [Architecture](architecture/ARCHITECTURE.md)
52
+ - [Repository layout](architecture/REPO_LAYOUT.md)
53
+ - [Architecture decisions](adr/README.md)
54
+
55
+ ## Repository map
56
+
57
+ | Path | Purpose |
58
+ | :--- | :--- |
59
+ | `docs/` | Guides, reference, security, and architecture |
60
+ | `scripts/` | Repo-only scripts and `dot` command internals |
61
+ | `install/` | Installer and provisioning helpers |
62
+ | `dot_config/` | Managed user configuration files |
63
+ | `dot_local/` | Managed local executables |
64
+ | `examples/` | Executable examples |
65
+ | `tests/` | Unit, integration, and framework coverage |
66
+
67
+ ## Platform guides
68
+
69
+ - [WSL2 and Nix](guides/WSL2_NIX_TROUBLESHOOTING.md)
70
+ - [Neovim IDE](guides/NEOVIM_IDE_GUIDE.md)
71
+
72
+ ## Reference
73
+
74
+ - [Features](reference/FEATURES.md)
75
+ - [Tools](reference/TOOLS.md)
76
+ - [Aliases](reference/ALIASES.md)
77
+ - [Roadmap](operations/ROADMAP.md)
78
+ - [Version sync](operations/VERSION_SYNC.md)