@sebastienrousseau/dotfiles 0.2.499 → 0.2.501

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 (567) hide show
  1. package/CHANGELOG.md +452 -0
  2. package/LICENSE +1283 -0
  3. package/README.md +322 -0
  4. package/docs/.vitepress/reports/localization-readability-audit.md +73 -0
  5. package/docs/AI.md +108 -0
  6. package/docs/CNAME +1 -0
  7. package/docs/COPYRIGHT +4 -3
  8. package/docs/NAMING_CONVENTIONS.md +102 -0
  9. package/docs/README.md +82 -0
  10. package/docs/_config.yml +59 -0
  11. package/docs/adr/ADR-001-ci-cd-pipeline.md +118 -0
  12. package/docs/adr/ADR-002-shell-performance.md +130 -0
  13. package/docs/adr/ADR-003-security-first.md +158 -0
  14. package/docs/adr/ADR-004-cli-architecture.md +171 -0
  15. package/docs/adr/ADR-005-chezmoi-choice.md +99 -0
  16. package/docs/adr/ADR-006-shell-selection.md +124 -0
  17. package/docs/adr/ADR-007-multi-shell-parity.md +62 -0
  18. package/docs/adr/ADR-008-alias-system-architecture.md +95 -0
  19. package/docs/adr/ADR-009-wallpaper-driven-theming.md +131 -0
  20. package/docs/adr/ADR-010-starship-transient-prompt.md +144 -0
  21. package/docs/adr/ADR-011-nushell-tier3-keep.md +144 -0
  22. package/docs/adr/README.md +39 -0
  23. package/docs/architecture/ARCHITECTURE.md +117 -0
  24. package/docs/architecture/INTEROP.md +44 -0
  25. package/docs/architecture/REPO_LAYOUT.md +241 -0
  26. package/docs/architecture/WALKTHROUGH.md +86 -0
  27. package/docs/architecture/fleet-deployment.md +77 -0
  28. package/docs/archive/EUXIS_2026_REVIEW.md +127 -0
  29. package/docs/archive/LEGACY_ROADMAP.md +160 -0
  30. package/docs/archive/MILESTONE_v0.2.493.md +47 -0
  31. package/docs/{PLAN.md → archive/PLAN.md} +50 -12
  32. package/docs/archive/REPO_AUDIT.md +31 -0
  33. package/docs/guides/INSTALL.md +144 -0
  34. package/docs/guides/NEOVIM_IDE_GUIDE.md +61 -0
  35. package/docs/guides/THEMING.md +230 -0
  36. package/docs/guides/TROUBLESHOOTING.md +176 -0
  37. package/docs/guides/WSL2_NIX_TROUBLESHOOTING.md +792 -0
  38. package/docs/index.md +43 -0
  39. package/docs/interop/A2A.md +39 -0
  40. package/docs/interop/POWERSHELL.md +102 -0
  41. package/docs/manual/00-introduction.md +89 -0
  42. package/docs/manual/01-concepts/01-architecture.md +138 -0
  43. package/docs/manual/01-concepts/02-trust-model.md +182 -0
  44. package/docs/manual/01-concepts/03-theme-engine.md +186 -0
  45. package/docs/manual/01-concepts/04-fleet.md +148 -0
  46. package/docs/manual/01-concepts/05-self-healing.md +204 -0
  47. package/docs/manual/02-tutorials/01-first-install.md +197 -0
  48. package/docs/manual/02-tutorials/02-add-wallpaper.md +216 -0
  49. package/docs/manual/02-tutorials/03-create-profile.md +244 -0
  50. package/docs/manual/02-tutorials/04-encrypt-secret.md +281 -0
  51. package/docs/manual/02-tutorials/05-deploy-fleet.md +283 -0
  52. package/docs/manual/03-reference/01-dot-cli.md +417 -0
  53. package/docs/manual/03-reference/02-config-files.md +265 -0
  54. package/docs/manual/03-reference/03-environment.md +124 -0
  55. package/docs/manual/03-reference/04-templates.md +190 -0
  56. package/docs/manual/03-reference/05-feature-flags.md +128 -0
  57. package/docs/manual/04-cookbook/01-recipes.md +285 -0
  58. package/docs/manual/04-cookbook/02-troubleshooting.md +351 -0
  59. package/docs/manual/04-cookbook/03-faq.md +175 -0
  60. package/docs/manual/05-appendices/A-platform-matrix.md +101 -0
  61. package/docs/manual/05-appendices/B-security-checklist.md +84 -0
  62. package/docs/manual/05-appendices/C-glossary.md +40 -0
  63. package/docs/manual/05-appendices/D-bibliography.md +58 -0
  64. package/docs/manual/05-appendices/E-license.md +38 -0
  65. package/docs/manual/_toc.yml +58 -0
  66. package/docs/manual/command-index.md +62 -0
  67. package/docs/manual/concept-index.md +168 -0
  68. package/docs/operations/ATTESTATION.md +44 -0
  69. package/docs/operations/CI_CADENCE.md +107 -0
  70. package/docs/operations/CI_COMPOSITES.md +156 -0
  71. package/docs/operations/COMPLETIONS.md +123 -0
  72. package/docs/operations/COVERAGE.md +148 -0
  73. package/docs/operations/DRIFT.md +107 -0
  74. package/docs/operations/MAINTENANCE.md +63 -0
  75. package/docs/operations/MIGRATION.md +109 -0
  76. package/docs/operations/OPERATIONS.md +188 -0
  77. package/docs/operations/PERFORMANCE.md +133 -0
  78. package/docs/operations/RELIABILITY.md +122 -0
  79. package/docs/{ROADMAP.md → operations/ROADMAP.md} +57 -39
  80. package/docs/operations/TESTING.md +199 -0
  81. package/docs/operations/TRACEABILITY.md +35 -0
  82. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +65 -0
  83. package/docs/operations/VERSION_SYNC.md +393 -0
  84. package/docs/reference/ALIASES.md +131 -0
  85. package/docs/reference/ALIASES_CHEATSHEET.md +32 -0
  86. package/docs/reference/ALIASES_DEPRECATIONS.md +13 -0
  87. package/docs/reference/FEATURES.md +66 -0
  88. package/docs/reference/FONTS.md +112 -0
  89. package/docs/reference/PROFILES.md +69 -0
  90. package/docs/reference/SCREENSHOTS.md +121 -0
  91. package/docs/reference/SCRIPTS.md +71 -0
  92. package/docs/reference/SUPPORT_MATRIX.md +80 -0
  93. package/docs/reference/THEMES.md +117 -0
  94. package/docs/reference/TOOLS.md +109 -0
  95. package/docs/reference/UTILS.md +155 -0
  96. package/docs/security/AI_ACT_COMPLIANCE.md +94 -0
  97. package/docs/security/AUDIT_BYPASS.md +103 -0
  98. package/docs/security/AUTOMATION_SECRETS.md +26 -0
  99. package/docs/security/CI_EGRESS_ALLOWLIST.md +127 -0
  100. package/docs/security/COMPLIANCE.md +458 -0
  101. package/docs/security/DEPS_DEV_EXCEPTIONS.md +86 -0
  102. package/docs/security/ENCRYPTION.md +57 -0
  103. package/docs/security/FMEA.md +159 -0
  104. package/docs/security/HISTORY_FILTERING.md +132 -0
  105. package/docs/security/INCIDENT_RESPONSE.md +579 -0
  106. package/docs/security/INSTALL_VERIFICATION.md +122 -0
  107. package/docs/security/KEYS.md +49 -0
  108. package/docs/security/KEY_ROTATION.md +223 -0
  109. package/docs/security/MCP_POLICY.md +78 -0
  110. package/docs/security/POLICY_RELEASES.md +37 -0
  111. package/docs/security/README.md +28 -0
  112. package/docs/security/SCORECARD.md +80 -0
  113. package/docs/security/SECRETS.md +158 -0
  114. package/docs/security/SECURITY.md +45 -0
  115. package/docs/security/SECURITY_CHECKLIST.md +55 -0
  116. package/docs/security/SHELL_EXEMPTIONS.md +145 -0
  117. package/docs/security/SOUP_REGISTER.md +36 -0
  118. package/docs/security/THREAT_MODEL.md +130 -0
  119. package/docs/security/VERIFICATION_VALIDATION.md +228 -0
  120. package/docs/themes/README.md +10 -0
  121. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +30 -0
  122. package/docs/themes/hero-shot.svg +78 -0
  123. package/dot_config/.module-manifest.json +69 -0
  124. package/dot_config/ai/identity.md +23 -0
  125. package/dot_config/ai/patterns/architect.md +16 -0
  126. package/dot_config/ai/patterns/hardener.md +15 -0
  127. package/dot_config/ai/patterns/refactor.md +15 -0
  128. package/dot_config/aider/aider.conf.yml +32 -0
  129. package/dot_config/alacritty/alacritty.toml.tmpl +55 -0
  130. package/dot_config/ansible/ansible.cfg +11 -0
  131. package/dot_config/atuin/config.toml.tmpl +47 -0
  132. package/dot_config/bat/config +23 -0
  133. package/dot_config/brave-flags.conf.tmpl +7 -0
  134. package/dot_config/btop/btop.conf +16 -0
  135. package/dot_config/btop/themes/tokyonight.theme +34 -0
  136. package/dot_config/bun/bunfig.toml.tmpl +33 -0
  137. package/dot_config/claude/mcp_servers.json +20 -0
  138. package/dot_config/containers/containers.conf +14 -0
  139. package/dot_config/curl/dot_curlrc +18 -0
  140. package/dot_config/dlv/config.yml +39 -0
  141. package/dot_config/docker/config.json +15 -0
  142. package/dot_config/dotfiles/agent-card.json +29 -0
  143. package/dot_config/dotfiles/agent-profiles.json +92 -0
  144. package/dot_config/dotfiles/boot/README.md +13 -0
  145. package/dot_config/dotfiles/grub/README.md +13 -0
  146. package/dot_config/dotfiles/lock/README.md +13 -0
  147. package/dot_config/dotfiles/mcp-lock.json +33 -0
  148. package/dot_config/dotfiles/mcp-policy.json +52 -0
  149. package/dot_config/dotfiles/mcp-registry.json +47 -0
  150. package/dot_config/dotfiles/model-registry.json +20 -0
  151. package/dot_config/dotfiles/policy-bundles.json +38 -0
  152. package/dot_config/dotfiles/prompt-registry.json +16 -0
  153. package/dot_config/dotfiles/versions.env +18 -0
  154. package/dot_config/duf/duf.conf +6 -0
  155. package/dot_config/duti/defaults.duti +5 -0
  156. package/dot_config/emoji/emoji.txt +34 -0
  157. package/dot_config/environment.d/50-ssh-agent.conf +2 -0
  158. package/dot_config/environment.d/90-wayland.conf +19 -0
  159. package/dot_config/fastfetch/config.jsonc +28 -0
  160. package/dot_config/firefox/user.js.tmpl +58 -0
  161. package/dot_config/fish/completions/dot-theme-sync.fish.tmpl +9 -0
  162. package/dot_config/fish/completions/dot.fish.tmpl +115 -0
  163. package/dot_config/fish/conf.d/000-perf-cache.fish +56 -0
  164. package/dot_config/fish/conf.d/aliases.fish.tmpl +77 -0
  165. package/dot_config/fish/conf.d/env.fish.tmpl +48 -0
  166. package/dot_config/fish/conf.d/functions.fish.tmpl +22 -0
  167. package/dot_config/fish/conf.d/init.fish.tmpl +172 -0
  168. package/dot_config/fish/config.fish.tmpl +44 -0
  169. package/dot_config/fish/fish_plugins +1 -0
  170. package/dot_config/fish/functions/_.fish +3 -0
  171. package/dot_config/fish/functions/_cached_eval.fish +131 -0
  172. package/dot_config/fish/functions/_cached_eval_clear.fish +17 -0
  173. package/dot_config/fish/functions/als.fish +46 -0
  174. package/dot_config/fish/functions/bg-upgrade.fish +7 -0
  175. package/dot_config/fish/functions/c.fish +3 -0
  176. package/dot_config/fish/functions/cat.fish +9 -0
  177. package/dot_config/fish/functions/d.fish +7 -0
  178. package/dot_config/fish/functions/dot.fish +34 -0
  179. package/dot_config/fish/functions/h.fish +3 -0
  180. package/dot_config/fish/functions/l.fish +7 -0
  181. package/dot_config/fish/functions/la.fish +7 -0
  182. package/dot_config/fish/functions/ll.fish +7 -0
  183. package/dot_config/fish/functions/log_error.fish +13 -0
  184. package/dot_config/fish/functions/log_info.fish +13 -0
  185. package/dot_config/fish/functions/lr.fish +7 -0
  186. package/dot_config/fish/functions/lra.fish +7 -0
  187. package/dot_config/fish/functions/ls.fish +7 -0
  188. package/dot_config/fish/functions/lt.fish +7 -0
  189. package/dot_config/fish/functions/lta.fish +7 -0
  190. package/dot_config/fish/functions/notify-run.fish +11 -0
  191. package/dot_config/fish/functions/q.fish +3 -0
  192. package/dot_config/fish/functions/silent-run.fish +7 -0
  193. package/dot_config/fish/functions/yy.fish +8 -0
  194. package/dot_config/flatpak/flatpak.list +4 -0
  195. package/dot_config/fontconfig/fonts.conf.tmpl +57 -0
  196. package/dot_config/foot/foot.ini.tmpl +33 -0
  197. package/dot_config/fuzzel/fuzzel.ini.tmpl +18 -0
  198. package/dot_config/fzf/fzf.zsh +48 -0
  199. package/dot_config/gem/gemrc +9 -0
  200. package/dot_config/gh/config.yml +12 -0
  201. package/dot_config/ghostty/config.tmpl +165 -0
  202. package/dot_config/git/allowed_signers.tmpl +18 -0
  203. package/dot_config/git/attributes +12 -0
  204. package/dot_config/git/commit-template +10 -0
  205. package/dot_config/git/hooks/executable_commit-msg +146 -0
  206. package/dot_config/git/ignore +27 -0
  207. package/dot_config/gnupg/gpg-agent.conf +11 -0
  208. package/dot_config/go/golangci.yml +118 -0
  209. package/dot_config/go/gopls.json +30 -0
  210. package/dot_config/goose/config.yaml +29 -0
  211. package/dot_config/gtk-3.0/gtk.css.tmpl +184 -0
  212. package/dot_config/gtk-3.0/settings.ini.tmpl +27 -0
  213. package/dot_config/gtk-4.0/gtk.css.tmpl +252 -0
  214. package/dot_config/gtk-4.0/settings.ini.tmpl +18 -0
  215. package/dot_config/htop/htoprc +20 -0
  216. package/dot_config/inputrc +2 -0
  217. package/dot_config/ipython/profile_default/ipython_config.py +19 -0
  218. package/dot_config/just/justfile +122 -0
  219. package/dot_config/k9s/config.yaml +65 -0
  220. package/dot_config/k9s/skins/catppuccin-mocha.yaml +116 -0
  221. package/dot_config/kanshi/config.tmpl +22 -0
  222. package/dot_config/karabiner/karabiner.json +14 -0
  223. package/dot_config/kitty/kitty.conf.tmpl +53 -0
  224. package/dot_config/lazydocker/config.yml +186 -0
  225. package/dot_config/lazygit/config.yml +35 -0
  226. package/dot_config/mako/config +47 -0
  227. package/dot_config/mas/masapps.txt +5 -0
  228. package/dot_config/micro/settings.json +3 -0
  229. package/dot_config/mimeapps.list +77 -0
  230. package/dot_config/minikube/config.json +13 -0
  231. package/dot_config/mise/config.toml +99 -0
  232. package/dot_config/mongosh/mongoshrc.js +68 -0
  233. package/dot_config/mpv/input.conf +47 -0
  234. package/dot_config/mpv/mpv.conf +47 -0
  235. package/dot_config/mycli/myclirc +67 -0
  236. package/dot_config/nano/nanorc +28 -0
  237. package/dot_config/ncdu/config +12 -0
  238. package/dot_config/niri/config.kdl.tmpl +327 -0
  239. package/dot_config/nushell/aliases.nu +18 -0
  240. package/dot_config/nushell/cached_eval.nu +80 -0
  241. package/dot_config/nushell/completions.nu.tmpl +52 -0
  242. package/dot_config/nushell/config.nu.tmpl +86 -0
  243. package/dot_config/nushell/env.nu.tmpl +102 -0
  244. package/dot_config/nushell/functions.nu.tmpl +17 -0
  245. package/dot_config/nvim/init.lua +18 -0
  246. package/dot_config/nvim/lazy-lock.json +58 -0
  247. package/dot_config/nvim/lua/config/autocmds.lua +107 -0
  248. package/dot_config/nvim/lua/config/keymaps.lua +92 -0
  249. package/dot_config/nvim/lua/config/lazy.lua +44 -0
  250. package/dot_config/nvim/lua/config/options.lua +49 -0
  251. package/dot_config/nvim/lua/plugins/ai.lua +75 -0
  252. package/dot_config/nvim/lua/plugins/coding.lua +216 -0
  253. package/dot_config/nvim/lua/plugins/completion.lua +60 -0
  254. package/dot_config/nvim/lua/plugins/dap.lua +412 -0
  255. package/dot_config/nvim/lua/plugins/editor.lua +55 -0
  256. package/dot_config/nvim/lua/plugins/git.lua +10 -0
  257. package/dot_config/nvim/lua/plugins/lsp.lua +156 -0
  258. package/dot_config/nvim/lua/plugins/markdown.lua +18 -0
  259. package/dot_config/nvim/lua/plugins/rust.lua +34 -0
  260. package/dot_config/nvim/lua/plugins/sessions.lua +33 -0
  261. package/dot_config/nvim/lua/plugins/ui.lua +509 -0
  262. package/dot_config/paru/paru.conf +10 -0
  263. package/dot_config/pip/pip.conf.tmpl +32 -0
  264. package/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl +81 -0
  265. package/dot_config/pueue/pueue.yml +34 -0
  266. package/dot_config/pypoetry/config.toml +6 -0
  267. package/dot_config/pyrightconfig.json +5 -0
  268. package/dot_config/raycast/README.md +13 -0
  269. package/dot_config/redis/redisclirc +41 -0
  270. package/dot_config/ripgrep/ripgreprc +21 -0
  271. package/dot_config/shell/00-core-paths.sh.tmpl +134 -0
  272. package/dot_config/shell/05-core-safety.sh +48 -0
  273. package/dot_config/shell/10-secrets.sh +41 -0
  274. package/dot_config/shell/40-fzf-defaults.sh.tmpl +17 -0
  275. package/dot_config/shell/40-ls-colors.sh +49 -0
  276. package/dot_config/shell/50-logic-functions-core.sh.tmpl +11 -0
  277. package/dot_config/shell/50-logic-functions.sh.tmpl +11 -0
  278. package/dot_config/shell/51-logic-functions-extra.sh.tmpl +65 -0
  279. package/dot_config/shell/90-ux-aliases.sh.tmpl +121 -0
  280. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +55 -0
  281. package/dot_config/shell/Brewfile +207 -0
  282. package/dot_config/shell/Brewfile.cask +92 -0
  283. package/dot_config/shell/Brewfile.cli +127 -0
  284. package/dot_config/shell/README.md +284 -0
  285. package/dot_config/shell/als_data.txt.tmpl +65 -0
  286. package/dot_config/shell/custom/auto_ls.zsh +20 -0
  287. package/dot_config/shell/custom/context_suggest.zsh +68 -0
  288. package/dot_config/shell/custom/error_analysis.zsh +45 -0
  289. package/dot_config/sops/dot_sops.yaml +23 -0
  290. package/dot_config/starship.toml.tmpl +202 -0
  291. package/dot_config/swaylock/config +43 -0
  292. package/dot_config/systemd/user/dotfiles-maintenance.service +8 -0
  293. package/dot_config/systemd/user/dotfiles-maintenance.timer +11 -0
  294. package/dot_config/systemd/user/pueued.service +12 -0
  295. package/dot_config/systemd/user/ssh-agent.service +12 -0
  296. package/dot_config/task/Taskfile.yml +86 -0
  297. package/dot_config/tflint/tflint.hcl +9 -0
  298. package/dot_config/tmux/tmux.conf.tmpl +223 -0
  299. package/dot_config/topgrade.toml.tmpl +54 -0
  300. package/dot_config/user-dirs.dirs +10 -0
  301. package/dot_config/vscode/extensions.txt +11 -0
  302. package/dot_config/vscode/settings.json.tmpl +82 -0
  303. package/dot_config/waybar/config.jsonc.tmpl +90 -0
  304. package/dot_config/waybar/style.css.tmpl +211 -0
  305. package/dot_config/wezterm/wezterm.lua.tmpl +64 -0
  306. package/dot_config/wget/wgetrc +12 -0
  307. package/dot_config/xdg-desktop-portal/niri-portals.conf +5 -0
  308. package/dot_config/yarn/yarnrc.yml +36 -0
  309. package/dot_config/yazi/keymap.toml +67 -0
  310. package/dot_config/yazi/theme.toml +102 -0
  311. package/dot_config/yazi/yazi.toml +40 -0
  312. package/dot_config/zathura/zathurarc +52 -0
  313. package/dot_config/zellij/config.kdl.tmpl +79 -0
  314. package/dot_config/zsh/dot_zprofile +7 -0
  315. package/dot_config/zsh/dot_zshenv +5 -0
  316. package/dot_config/zsh/dot_zshrc.tmpl +635 -0
  317. package/dot_config/zsh/rc.d/00-alias-shims.zsh +99 -0
  318. package/dot_config/zsh/rc.d/05-ssh-agent.zsh +18 -0
  319. package/dot_config/zsh/rc.d/10-env.zsh.tmpl +28 -0
  320. package/dot_config/zsh/rc.d/20-zinit.zsh +65 -0
  321. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +214 -0
  322. package/dot_config/zsh/rc.d/40-bell.zsh +20 -0
  323. package/dot_config/zsh/rc.d/50-login-fortune.zsh +9 -0
  324. package/dot_config/zsh/rc.d/99-alias-wrapper.zsh +32 -0
  325. package/dot_local/bin/executable_ai-update +195 -0
  326. package/dot_local/bin/executable_ai_core +152 -0
  327. package/dot_local/bin/executable_antigravity +11 -0
  328. package/dot_local/bin/executable_b64 +84 -0
  329. package/dot_local/bin/executable_bm +79 -0
  330. package/dot_local/bin/executable_cb +39 -0
  331. package/dot_local/bin/executable_dot +596 -0
  332. package/dot_local/bin/executable_dot-ai +36 -0
  333. package/dot_local/bin/executable_dot-bootstrap +77 -0
  334. package/dot_local/bin/executable_dot-launch-or-focus +52 -0
  335. package/dot_local/bin/executable_dot-load-benchmark +31 -0
  336. package/dot_local/bin/executable_dot-load-benchmark-pty +77 -0
  337. package/dot_local/bin/executable_dot-theme-sync +952 -0
  338. package/dot_local/bin/executable_dot_completion +57 -0
  339. package/dot_local/bin/executable_dtags +28 -0
  340. package/dot_local/bin/executable_epoch +67 -0
  341. package/dot_local/bin/executable_extract +41 -0
  342. package/dot_local/bin/executable_gbd +52 -0
  343. package/dot_local/bin/executable_gd +42 -0
  344. package/dot_local/bin/executable_git-ai-commit +175 -0
  345. package/dot_local/bin/executable_git-ai-diff +169 -0
  346. package/dot_local/bin/executable_gl +101 -0
  347. package/dot_local/bin/executable_hash +161 -0
  348. package/dot_local/bin/executable_hashsum +160 -0
  349. package/dot_local/bin/executable_hex +115 -0
  350. package/dot_local/bin/executable_jsonv +78 -0
  351. package/dot_local/bin/executable_jwt +94 -0
  352. package/dot_local/bin/executable_kill-port +75 -0
  353. package/dot_local/bin/executable_lorem +118 -0
  354. package/dot_local/bin/executable_mkscript +35 -0
  355. package/dot_local/bin/executable_monitor +56 -0
  356. package/dot_local/bin/executable_myip +51 -0
  357. package/dot_local/bin/executable_notify +24 -0
  358. package/dot_local/bin/executable_open +38 -0
  359. package/dot_local/bin/executable_pw +27 -0
  360. package/dot_local/bin/executable_rec-start +46 -0
  361. package/dot_local/bin/executable_rec-stop +35 -0
  362. package/dot_local/bin/executable_regex +132 -0
  363. package/dot_local/bin/executable_start-niri +8 -0
  364. package/dot_local/bin/executable_tmux-sessionizer +314 -0
  365. package/dot_local/bin/executable_tour +177 -0
  366. package/dot_local/bin/executable_up +23 -0
  367. package/dot_local/bin/executable_update +142 -0
  368. package/dot_local/bin/executable_uuid +87 -0
  369. package/dot_local/bin/executable_win +32 -0
  370. package/dot_local/bin/executable_yamlv +57 -0
  371. package/dot_local/share/bash-completion/completions/dot +72 -0
  372. package/dot_local/share/icons/hicolor/128x128/apps/rousseau.png +0 -0
  373. package/dot_local/share/icons/hicolor/16x16/apps/rousseau.png +0 -0
  374. package/dot_local/share/icons/hicolor/24x24/apps/rousseau.png +0 -0
  375. package/dot_local/share/icons/hicolor/256x256/apps/rousseau.png +0 -0
  376. package/dot_local/share/icons/hicolor/32x32/apps/rousseau.png +0 -0
  377. package/dot_local/share/icons/hicolor/48x48/apps/rousseau.png +0 -0
  378. package/dot_local/share/icons/hicolor/512x512/apps/rousseau.png +0 -0
  379. package/dot_local/share/icons/hicolor/64x64/apps/rousseau.png +0 -0
  380. package/dot_local/share/icons/hicolor/96x96/apps/rousseau.png +0 -0
  381. package/dot_local/share/icons/hicolor/scalable/apps/rousseau.png +0 -0
  382. package/dot_local/share/man/man1/dot.1 +149 -0
  383. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_download +64 -0
  384. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_install +18 -0
  385. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_list-all +13 -0
  386. package/dot_local/share/wayland-sessions/niri.desktop.tmpl +6 -0
  387. package/dot_local/share/zsh/completions/.keep +0 -0
  388. package/dot_local/share/zsh/completions/_dot +283 -0
  389. package/install.sh +350 -0
  390. package/package.json +1 -1
  391. package/scripts/ci/check-copyright-headers.sh +96 -0
  392. package/scripts/ci/check-dangerous-chmod.sh +19 -0
  393. package/scripts/ci/check-deps-dev.sh +236 -0
  394. package/scripts/ci/check-insecure-tls.sh +61 -0
  395. package/scripts/ci/check-regression-traceability.sh +67 -0
  396. package/scripts/ci/check-shell-preamble.sh +106 -0
  397. package/scripts/ci/guard-gitleaks-checkout.sh +57 -0
  398. package/scripts/ci/install-chezmoi-verified.sh +64 -0
  399. package/scripts/ci/run-coverage.sh +362 -0
  400. package/scripts/ci/validate-chezmoidata.sh +25 -0
  401. package/scripts/ci/validate-ci-config.sh +224 -0
  402. package/scripts/demo/record.sh +42 -0
  403. package/scripts/diagnostics/a2a-conformance.sh +162 -0
  404. package/scripts/diagnostics/alias-governance.sh +137 -0
  405. package/scripts/diagnostics/aliases-cheatsheet.sh +73 -0
  406. package/scripts/diagnostics/aliases-manifest.sh +31 -0
  407. package/scripts/diagnostics/benchmark.sh +381 -0
  408. package/scripts/diagnostics/conflicts.sh +72 -0
  409. package/scripts/diagnostics/doctor-unified.sh +38 -0
  410. package/scripts/diagnostics/doctor.sh +709 -0
  411. package/scripts/diagnostics/drift-dashboard.sh +201 -0
  412. package/scripts/diagnostics/health.sh +614 -0
  413. package/scripts/diagnostics/history-analysis.sh +85 -0
  414. package/scripts/diagnostics/mcp-doctor.sh +575 -0
  415. package/scripts/diagnostics/perf.sh +452 -0
  416. package/scripts/diagnostics/scorecard.sh +118 -0
  417. package/scripts/diagnostics/secret-governance.sh +58 -0
  418. package/scripts/diagnostics/security-score.sh +438 -0
  419. package/scripts/diagnostics/smoke-test.sh +87 -0
  420. package/scripts/diagnostics/snapshot.sh +89 -0
  421. package/scripts/diagnostics/verify.sh +107 -0
  422. package/scripts/{verify_state.sh → diagnostics/verify_state.sh} +22 -22
  423. package/scripts/diagnostics/version-locks.sh +79 -0
  424. package/scripts/diagnostics/workstation-attestation.sh +186 -0
  425. package/scripts/docs/build-manual.sh +883 -0
  426. package/scripts/docs/check-manual.sh +213 -0
  427. package/scripts/dot/commands/agent.sh +474 -0
  428. package/scripts/dot/commands/ai.sh +481 -0
  429. package/scripts/dot/commands/aliases.sh +250 -0
  430. package/scripts/dot/commands/appearance.sh +80 -0
  431. package/scripts/dot/commands/core.sh +185 -0
  432. package/scripts/dot/commands/diagnostics.sh +229 -0
  433. package/scripts/dot/commands/fleet.sh +399 -0
  434. package/scripts/dot/commands/lint.sh +177 -0
  435. package/scripts/dot/commands/manual.sh +168 -0
  436. package/scripts/dot/commands/meta.sh +248 -0
  437. package/scripts/dot/commands/patterns.sh +54 -0
  438. package/scripts/dot/commands/restore.sh +231 -0
  439. package/scripts/dot/commands/secrets.sh +223 -0
  440. package/scripts/dot/commands/security.sh +76 -0
  441. package/scripts/dot/commands/tools.sh +469 -0
  442. package/scripts/dot/data/alias-deprecations.tsv +2 -0
  443. package/scripts/dot/lib/bento.sh +50 -0
  444. package/scripts/dot/lib/log.sh +200 -0
  445. package/scripts/dot/lib/platform.sh +99 -0
  446. package/scripts/dot/lib/ui.sh +518 -0
  447. package/scripts/dot/lib/utils.sh +377 -0
  448. package/scripts/fonts/install-nerd-fonts.sh +68 -0
  449. package/scripts/fonts/patch-fonts.sh +35 -0
  450. package/scripts/git-hooks/install.sh +11 -0
  451. package/scripts/git-hooks/pre-commit +12 -0
  452. package/scripts/git-hooks/pre-commit-audit.sh +145 -0
  453. package/scripts/git-hooks/pre-push +92 -0
  454. package/scripts/git-hooks/prepare-commit-msg +29 -0
  455. package/scripts/lib/secrets_provider.sh +158 -0
  456. package/scripts/maintenance/check-updates.sh +131 -0
  457. package/scripts/ops/ai-setup.sh +55 -0
  458. package/scripts/ops/bundle.sh +77 -0
  459. package/scripts/ops/chaos.sh +49 -0
  460. package/scripts/ops/chezmoi-apply.sh +270 -0
  461. package/scripts/ops/chezmoi-diff.sh +15 -0
  462. package/scripts/ops/chezmoi-remove.sh +45 -0
  463. package/scripts/ops/chezmoi-update.sh +48 -0
  464. package/scripts/ops/heal-chezmoi.sh +86 -0
  465. package/scripts/ops/heal-system.sh +128 -0
  466. package/scripts/ops/heal-tools.sh +340 -0
  467. package/scripts/ops/heal.sh +222 -0
  468. package/scripts/ops/post-apply-repair.sh +106 -0
  469. package/scripts/ops/prewarm.sh +127 -0
  470. package/scripts/ops/release.sh +252 -0
  471. package/scripts/ops/rollback.sh +589 -0
  472. package/scripts/ops/setup.sh +137 -0
  473. package/scripts/ops/teleport.sh +33 -0
  474. package/scripts/qa/coverage-baseline.sh +60 -0
  475. package/scripts/qa/docs-coverage.sh +111 -0
  476. package/scripts/qa/powershell-contract.ps1 +95 -0
  477. package/scripts/qa/reliability-audit.sh +138 -0
  478. package/scripts/qa/traceability-coverage.sh +116 -0
  479. package/scripts/qa/validate-examples.sh +26 -0
  480. package/scripts/qa/wsl-contract.sh +11 -0
  481. package/scripts/release/package-policy-bundles.sh +125 -0
  482. package/scripts/secrets/age-init.sh +70 -0
  483. package/scripts/secrets/create-secrets-file.sh +45 -0
  484. package/scripts/secrets/encrypt-ssh-key.sh +43 -0
  485. package/scripts/security/backup.sh +57 -0
  486. package/scripts/security/dns-doh.sh +51 -0
  487. package/scripts/security/encryption-check.sh +54 -0
  488. package/scripts/security/enforce-policies.sh +334 -0
  489. package/scripts/security/firewall.sh +90 -0
  490. package/scripts/security/lock-configs.sh +57 -0
  491. package/scripts/security/lock-screen.sh +55 -0
  492. package/scripts/security/manage-secrets.sh +428 -0
  493. package/scripts/security/ssh-cert.sh +203 -0
  494. package/scripts/security/telemetry-kill.sh +50 -0
  495. package/scripts/security/usb-safety.sh +51 -0
  496. package/scripts/theme/apply-gnome-theme.sh +328 -0
  497. package/scripts/theme/extract-theme.py +677 -0
  498. package/scripts/theme/install-boot-logo.sh +62 -0
  499. package/scripts/theme/install-catppuccin-themes.sh +370 -0
  500. package/scripts/theme/install-cursors.sh +25 -0
  501. package/scripts/theme/install-file-icons.sh +26 -0
  502. package/scripts/theme/install-grub-theme.sh +61 -0
  503. package/scripts/theme/install-lock-icon.sh +30 -0
  504. package/scripts/theme/merge-wallpaper.sh +145 -0
  505. package/scripts/theme/rebuild-themes.sh +309 -0
  506. package/scripts/theme/switch.sh +431 -0
  507. package/scripts/theme/wallpaper-rotate.sh +136 -0
  508. package/scripts/theme/wallpaper-sync.sh +397 -0
  509. package/scripts/tools/cmatrix.sh +21 -0
  510. package/scripts/{detect-collisions.py → tools/detect-collisions.py} +2 -2
  511. package/scripts/tools/emoji-picker.sh +48 -0
  512. package/scripts/tools/figlet-banner.sh +18 -0
  513. package/scripts/tools/log-rotate.sh +30 -0
  514. package/scripts/tools/lolcat-wrap.sh +19 -0
  515. package/scripts/tools/pipes.sh +48 -0
  516. package/scripts/tuning/linux.sh +185 -0
  517. package/scripts/tuning/macos.sh +55 -0
  518. package/scripts/uninstall.sh +85 -0
  519. package/scripts/version-sync.sh +487 -0
  520. package/templates/chezmoi-data/geekom-a9.toml.example +21 -0
  521. package/templates/chezmoi-data/mac-m1.toml.example +16 -0
  522. package/templates/chezmoi-data/mac-t2-linux.toml.example +21 -0
  523. package/templates/chezmoi-data/surface-pro-7p.toml.example +21 -0
  524. package/templates/projects/go/.github/workflows/ci.yml +31 -0
  525. package/templates/projects/go/README.md +4 -0
  526. package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +1 -0
  527. package/templates/projects/go/go.sum +0 -0
  528. package/templates/projects/molecule/README.md +7 -0
  529. package/templates/projects/molecule/converge.yml +7 -0
  530. package/templates/projects/molecule/molecule.yml +16 -0
  531. package/templates/projects/node/.github/workflows/ci.yml +30 -0
  532. package/templates/projects/node/README.md +4 -0
  533. package/templates/projects/node/package-lock.json +12 -0
  534. package/templates/projects/node/src/index.js +1 -0
  535. package/templates/projects/packer/README.md +15 -0
  536. package/templates/projects/packer/main.pkr.hcl +15 -0
  537. package/templates/projects/python/.github/workflows/ci.yml +34 -0
  538. package/templates/projects/python/README.md +4 -0
  539. package/templates/projects/python/pyproject.toml +15 -0
  540. package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +1 -0
  541. package/templates/projects/python/tests/test_basic.py +1 -0
  542. package/docs/ARCHITECTURE.md +0 -62
  543. package/docs/COMPLIANCE.md +0 -47
  544. package/docs/OPERATIONS.md +0 -103
  545. package/docs/PR_DESCRIPTION.md +0 -150
  546. package/docs/ROADMAP_legacy.md +0 -556
  547. package/docs/SECURITY_CHECKLIST.md +0 -25
  548. package/docs/TASK.md +0 -99
  549. package/docs/WALKTHROUGH.md +0 -46
  550. package/scripts/backup.sh +0 -142
  551. package/scripts/banner.sh +0 -20
  552. package/scripts/benchmark.sh +0 -20
  553. package/scripts/build.sh +0 -41
  554. package/scripts/clean.sh +0 -31
  555. package/scripts/compile.sh +0 -54
  556. package/scripts/copy.sh +0 -108
  557. package/scripts/doctor.sh +0 -79
  558. package/scripts/dotfiles.sh +0 -63
  559. package/scripts/download.sh +0 -35
  560. package/scripts/help.sh +0 -57
  561. package/scripts/lock-configs.sh +0 -57
  562. package/scripts/package.sh +0 -46
  563. package/scripts/ssh.sh +0 -55
  564. package/scripts/teleport.sh +0 -23
  565. package/scripts/test-aliases.sh +0 -25
  566. package/scripts/test_smoke.sh +0 -88
  567. package/scripts/unpack.sh +0 -28
@@ -0,0 +1,112 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Font configuration
6
+
7
+ How fonts are set up, rendered, and installed in these dotfiles.
8
+
9
+ ## Recommended fonts
10
+
11
+ ### Primary: JetBrains Mono Nerd Font
12
+
13
+ The default font is JetBrains Mono with Nerd Font patches. It's designed for code readability, supports ligatures, includes Powerline/Nerd Font glyphs, and clearly distinguishes similar characters (`0`/`O`, `1`/`l`/`I`).
14
+
15
+ ### Alternatives
16
+
17
+ | Font | Style | Best for |
18
+ |------|-------|----------|
19
+ | Fira Code | Modern | Ligature fans |
20
+ | Cascadia Code | Microsoft | VS Code users |
21
+ | Hack | Classic | Traditional monospace look |
22
+ | Source Code Pro | Adobe | Clean aesthetic |
23
+ | Iosevka | Narrow | Small screens |
24
+
25
+ ## Installation
26
+
27
+ ### macOS (Homebrew)
28
+
29
+ ```bash
30
+ brew tap homebrew/cask-fonts
31
+ brew install --cask font-jetbrains-mono-nerd-font
32
+
33
+ # Or use the dot CLI
34
+ dot fonts install
35
+ ```
36
+
37
+ ### Linux (manual)
38
+
39
+ ```bash
40
+ wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.4.0/JetBrainsMono.zip
41
+ unzip JetBrainsMono.zip -d ~/.local/share/fonts/
42
+ fc-cache -fv
43
+ ```
44
+
45
+ ### Patching your own fonts
46
+
47
+ To patch a custom font with Nerd Font glyphs:
48
+
49
+ ```bash
50
+ ~/.dotfiles/scripts/fonts/patch-fonts.sh /path/to/font.ttf
51
+ ```
52
+
53
+ ## Terminal configuration
54
+
55
+ ### Ghostty
56
+
57
+ ```text
58
+ font-family = JetBrains Mono Nerd Font
59
+ font-size = 14
60
+ ```
61
+
62
+ ### WezTerm
63
+
64
+ ```lua
65
+ config.font = wezterm.font("JetBrains Mono Nerd Font")
66
+ config.font_size = 14.0
67
+ ```
68
+
69
+ ### Alacritty
70
+
71
+ ```yaml
72
+ font:
73
+ normal:
74
+ family: JetBrains Mono Nerd Font
75
+ size: 14.0
76
+ ```
77
+
78
+ ### Kitty
79
+
80
+ ```text
81
+ font_family JetBrains Mono Nerd Font
82
+ font_size 14.0
83
+ ```
84
+
85
+ ## Font size recommendations
86
+
87
+ | Display | Size |
88
+ |---------|------|
89
+ | 13" laptop | 12-13pt |
90
+ | 15" laptop | 13-14pt |
91
+ | 24" monitor | 14-15pt |
92
+ | 27" 4K monitor | 15-16pt |
93
+
94
+ ## Troubleshooting
95
+
96
+ ### Fonts not displaying correctly
97
+
98
+ 1. Verify the font is installed: `fc-list | grep JetBrains`
99
+ 2. Restart your terminal
100
+ 3. Double-check the terminal's font settings
101
+
102
+ ### Nerd Font icons missing
103
+
104
+ 1. Make sure you're using a Nerd Font variant (not the plain version)
105
+ 2. Confirm the terminal supports the required Unicode range
106
+ 3. Try a different Nerd Font if the issue persists
107
+
108
+ ### Ligatures not working
109
+
110
+ 1. Enable ligatures in your terminal's settings
111
+ 2. Some terminals don't support ligatures (e.g., `Terminal.app`)
112
+ 3. Ghostty, WezTerm, and Kitty all handle ligatures well
@@ -0,0 +1,69 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Profiles and Machine Setup
6
+
7
+ ## Profile System
8
+
9
+ You can set up each machine differently using profiles and hardware presets.
10
+
11
+ ### Setting Your Profile
12
+
13
+ Edit `~/.config/chezmoi/chezmoi.toml`:
14
+
15
+ ```toml
16
+ [data]
17
+ profile = "laptop" # laptop | minimal | server
18
+ machine = "macbook-m3" # optional: machine identifier
19
+ ```
20
+
21
+ ### Available Profiles
22
+
23
+ | Profile | Description | What's Included |
24
+ |---------|-------------|-----------------|
25
+ | `laptop` | Full desktop setup (default) | All tools, AI CLIs, themes, completions |
26
+ | `minimal` | Fast, lightweight | Core shell, git, basic aliases only |
27
+ | `server` | Headless server | Shell, git, monitoring tools, no desktop |
28
+
29
+ ### Per-Machine Overrides
30
+
31
+ Create a `~/.config/chezmoi/chezmoi.toml` file on each machine to override defaults:
32
+
33
+ ```toml
34
+ [data]
35
+ profile = "laptop"
36
+ machine = "work-macbook"
37
+ default_shell = "zsh"
38
+
39
+ [data.features]
40
+ linux_desktop = false
41
+ zellij = true
42
+ ```
43
+
44
+ ### Hardware Presets
45
+
46
+ The `templates/chezmoi-data/` folder has ready-made configs for common hardware:
47
+
48
+ - `mac-m1.toml.example` — Apple Silicon MacBook
49
+ - `geekom-a9.toml.example` — AMD mini PC (Linux)
50
+ - `surface-pro-7p.toml.example` — Microsoft Surface (Linux)
51
+ - `mac-t2-linux.toml.example` — Intel Mac running Linux
52
+
53
+ Copy the one that matches your hardware:
54
+
55
+ ```bash
56
+ cp templates/chezmoi-data/mac-m1.toml.example ~/.config/chezmoi/chezmoi.toml
57
+ chezmoi apply
58
+ ```
59
+
60
+ ### Environment Variables
61
+
62
+ You can change behavior for a single session without editing any files:
63
+
64
+ | Variable | Default | Effect |
65
+ |----------|---------|--------|
66
+ | `DOTFILES_FAST=1` | 0 | Skip heavy layers (zinit, completions) |
67
+ | `DOTFILES_ULTRA_FAST=1` | 0 | Bare minimum shell (aliases + prompt) |
68
+ | `DOTFILES_AI=1` | 0 | Enable AI helper scripts |
69
+ | `DOTFILES_PROFILE=custom` | laptop | Override profile for session |
@@ -0,0 +1,121 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Screenshots Gallery
6
+
7
+ Here's how the dotfiles look across different themes and configurations.
8
+
9
+ ## Theme Gallery
10
+
11
+ ### Catppuccin Mocha (default)
12
+
13
+ The default theme. Catppuccin Mocha gives you a dark palette with warm, muted colors.
14
+
15
+ ```text
16
+ Terminal: Ghostty / WezTerm / Alacritty
17
+ Font: JetBrains Mono Nerd Font
18
+ Theme: Catppuccin Mocha
19
+ ```
20
+
21
+ Key colors:
22
+
23
+ - Background: `#1e1e2e`
24
+ - Foreground: `#cdd6f4`
25
+ - Accent Blue: `#89b4fa`
26
+ - Accent Red: `#f38ba8`
27
+
28
+ ### Catppuccin Latte (light)
29
+
30
+ A light theme option for daytime use.
31
+
32
+ ```text
33
+ Terminal: Ghostty / WezTerm / Alacritty
34
+ Font: JetBrains Mono Nerd Font
35
+ Theme: Catppuccin Latte
36
+ ```
37
+
38
+ Key colors:
39
+
40
+ - Background: `#eff1f5`
41
+ - Foreground: `#4c4f69`
42
+ - Accent Blue: `#1e66f5`
43
+ - Accent Red: `#d20f39`
44
+
45
+ ## Terminal Configurations
46
+
47
+ ### Ghostty
48
+
49
+ Modern, native terminal with GPU acceleration.
50
+
51
+ - Native macOS integration
52
+ - Fast rendering
53
+ - Ligature support
54
+ - Custom key bindings
55
+
56
+ ### WezTerm
57
+
58
+ Cross-platform terminal with Lua configuration.
59
+
60
+ - GPU acceleration
61
+ - Multiple windows/tabs
62
+ - Hyperlinks
63
+ - Image protocol support
64
+
65
+ ### Alacritty
66
+
67
+ Minimal, fast terminal.
68
+
69
+ - Fast rendering
70
+ - Simple YAML config
71
+ - Vi mode
72
+ - Cross-platform
73
+
74
+ ### Kitty
75
+
76
+ Feature-rich terminal.
77
+
78
+ - GPU rendering
79
+ - Ligatures
80
+ - Image support
81
+ - Keyboard protocol
82
+
83
+ ## Prompt (Starship)
84
+
85
+ The Starship prompt displays:
86
+
87
+ - Current directory
88
+ - Git branch and status
89
+ - Language versions (when relevant)
90
+ - Command duration
91
+ - Exit status
92
+
93
+ ## Neovim
94
+
95
+ The Neovim configuration includes:
96
+
97
+ - Catppuccin theme
98
+ - Treesitter syntax highlighting
99
+ - LSP integration
100
+ - Telescope fuzzy finder
101
+ - File tree (`nvim-tree`)
102
+
103
+ ## tmux
104
+
105
+ The tmux status bar displays:
106
+
107
+ - Session name
108
+ - Current window
109
+ - Host name
110
+ - Date and time
111
+
112
+ ## Adding Screenshots
113
+
114
+ To contribute screenshots:
115
+
116
+ 1. Take a screenshot of your terminal.
117
+ 2. Save it as a PNG in `docs/themes/`.
118
+ 3. Add a reference in this file.
119
+ 4. Submit a PR.
120
+
121
+ Recommended screenshot size: 1920x1080 or 2560x1440.
@@ -0,0 +1,71 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Script Catalog
6
+
7
+ Exhaustive catalog of user-facing executables installed from `dot_local/bin/`.
8
+
9
+ ## Core and dotfiles workflows
10
+
11
+ | Command | Description |
12
+ |---------|-------------|
13
+ | `dot` | Primary dotfiles command-line interface |
14
+ | `dot-ai` | Legacy AI query wrapper for local dotfiles context |
15
+ | `dot-bootstrap` | Deterministic bootstrap entrypoint for fresh machines |
16
+ | `dot-launch-or-focus` | Launch or focus desktop applications and sessions |
17
+ | `dot-load-benchmark` | Measure heavy shell layer readiness in a fresh shell |
18
+ | `dot-load-benchmark-pty` | PTY-based readiness benchmark for shell prewarm flows |
19
+ | `dot-theme-sync` | Synchronize managed theme state across tools |
20
+ | `update` | Update the managed dotfiles environment |
21
+ | `tour` | Interactive guided tour of the dotfiles environment |
22
+
23
+ ## AI and git helpers
24
+
25
+ | Command | Description |
26
+ |---------|-------------|
27
+ | `ai-update` | Update AI-related CLIs, runtimes, and supporting tools |
28
+ | `ai_core` | Local AI runtime wrapper and provider fallback core |
29
+ | `git-ai-commit` | Generate commit messages from staged changes with AI |
30
+ | `git-ai-diff` | Review diffs and change sets with AI assistance |
31
+ | `antigravity` | Safe wrapper for Antigravity updater execution |
32
+
33
+ ## Clipboard, encoding, and data inspection
34
+
35
+ | Command | Description |
36
+ |---------|-------------|
37
+ | `b64` | Base64 encode and decode utility |
38
+ | `bm` | Directory bookmark manager |
39
+ | `cb` | Cross-platform clipboard helper |
40
+ | `dtags` | Inspect Docker image tags |
41
+ | `epoch` | Convert between human time and Unix epoch values |
42
+ | `extract` | Archive extraction helper |
43
+ | `hash` | Compute hashes for strings or files |
44
+ | `hashsum` | Cross-platform cryptographic hash calculator |
45
+ | `hex` | Hex dump and transformation helper |
46
+ | `jsonv` | JSON validator and formatter |
47
+ | `jwt` | JWT decoder and payload inspector |
48
+ | `regex` | Regular expression testing helper |
49
+ | `uuid` | UUID generation utility |
50
+ | `yamlv` | YAML validator |
51
+
52
+ ## System, network, and session tools
53
+
54
+ | Command | Description |
55
+ |---------|-------------|
56
+ | `gd` | Git diff workflow helper |
57
+ | `gbd` | Git branch deletion workflow helper |
58
+ | `gl` | Git log workflow helper |
59
+ | `kill-port` | Terminate processes bound to a TCP or UDP port |
60
+ | `lorem` | Lorem ipsum text generator |
61
+ | `monitor` | System monitor and environment inspection helper |
62
+ | `myip` | Show public and local IP addresses |
63
+ | `notify` | Cross-platform desktop notification helper |
64
+ | `open` | Cross-platform opener for files, URLs, and paths |
65
+ | `pw` | Password and secret helper utility |
66
+ | `rec-start` | Start shell session recording |
67
+ | `rec-stop` | Stop shell session recording |
68
+ | `start-niri` | Launch a Niri compositor session |
69
+ | `tmux-sessionizer` | Fuzzy tmux session and project switcher |
70
+ | `up` | Jump up directory levels quickly |
71
+ | `win` | WSL bridge for launching Windows programs |
@@ -0,0 +1,80 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Support Matrix
6
+
7
+ Tested platform and tool combinations for the dotfiles distribution.
8
+
9
+ ## Operating Systems
10
+
11
+ | OS | Version | Architecture | Status | Notes |
12
+ |----|---------|-------------|--------|-------|
13
+ | macOS | 14+ (Sonoma) | aarch64 (Apple Silicon) | Supported | Primary dev platform |
14
+ | macOS | 14+ (Sonoma) | x86_64 | Supported | CI tested |
15
+ | Ubuntu | 22.04+ | x86_64 | Supported | CI tested |
16
+ | Ubuntu | 22.04+ | aarch64 | Supported | Tested manually |
17
+ | Debian | 12+ | x86_64 | Supported | Compatible with Ubuntu |
18
+ | Fedora | 39+ | x86_64 | Community | Not CI tested |
19
+ | Arch Linux | Rolling | x86_64 | Community | Not CI tested |
20
+ | WSL2 | Ubuntu 22.04+ | x86_64 | Supported | Clipboard bridge included |
21
+ | NixOS | 23.11+ | x86_64/aarch64 | Supported | Via Nix Flake |
22
+
23
+ ## Shells
24
+
25
+ | Shell | Min Version | Status | Parity Tier | Notes |
26
+ |-------|-------------|--------|-------------|-------|
27
+ | Zsh | 5.8+ | Supported | Tier 1 (Full) | Default shell, all features |
28
+ | Bash | 5.0+ | Supported | Tier 1 (Full) | Shared logic core |
29
+ | Fish | 4.0+ | Supported | Tier 1 (Core CLI) | Native `dot`, `dm`, `da`, `dmc`, `datt`, and cached alias bridge |
30
+ | Nushell | 0.98+ | Supported | Tier 1 (Core CLI) | Native `d`, `dm`, `da`, `dmc`, `datt` aliases for core workflows |
31
+ | PowerShell | 7.5+ | Supported | Tier 1 (Core CLI) | Managed profile, `dot` wrapper, modern listing helpers, and attestation aliases |
32
+
33
+ ## Terminal Emulators
34
+
35
+ | Terminal | Status | Notes |
36
+ |----------|--------|-------|
37
+ | Ghostty | Supported | Primary, custom config in `dot_config/ghostty/` |
38
+ | iTerm2 | Supported | macOS only; auto-installed Dynamic Profile via `run_onchange_22-iterm2-profile.sh.tmpl` (pick "dotfiles" profile in iTerm2) |
39
+ | Alacritty | Supported | Theme-driven, config in `dot_config/alacritty/` |
40
+ | Kitty | Supported | Theme-driven, config in `dot_config/kitty/` |
41
+ | WezTerm | Supported | Theme-driven, config in `dot_config/wezterm/` |
42
+ | Foot | Supported | Linux/Wayland, gated by `features.foot`, config in `dot_config/foot/` |
43
+ | Warp | Supported | Theme-driven, deploys to `~/.warp/themes/dotfiles.yaml`; pick "dotfiles" in Warp Settings → Appearance → Themes |
44
+ | Windows Terminal | Supported | WSL2 profile |
45
+ | tmux | Supported | Config in `dot_config/tmux/` |
46
+
47
+ ## Key Tools
48
+
49
+ | Tool | Min Version | Required | Notes |
50
+ |------|-------------|----------|-------|
51
+ | chezmoi | 2.40+ | Yes | Core dotfiles manager |
52
+ | git | 2.35+ | Yes | Version control |
53
+ | curl | 7.0+ | Yes | Bootstrap installer |
54
+ | Neovim | 0.11.2+ | No | IDE config, lazy.nvim plugins |
55
+ | Starship | 1.17+ | No | Cross-shell prompt |
56
+ | mise | 2024.1+ | No | Tool version manager |
57
+ | Nix | 2.18+ | No | Reproducible environments |
58
+ | fzf | 0.48+ | No | Fuzzy finder |
59
+ | zoxide | 0.9+ | No | Smart directory jumper |
60
+ | atuin | 18.0+ | No | Shell history sync |
61
+ | pueue | 3.0+ | No | Background task manager |
62
+
63
+ ## CI Environments
64
+
65
+ | Environment | Workflow | Platform | Status |
66
+ |------------|----------|----------|--------|
67
+ | GitHub Actions (Linux) | `ci.yml` | ubuntu-latest | Tested on every PR |
68
+ | GitHub Actions (macOS) | `ci.yml` | macos-latest | Tested on every PR |
69
+ | GitHub Actions (Enforced) | `ci-enforced.yml` | ubuntu-latest | Stricter checks |
70
+ | Devcontainer | `devcontainer-prebuild.yml` | ubuntu-latest | Pre-built images |
71
+
72
+ ## Known Limitations
73
+
74
+ | Platform | Limitation | Workaround |
75
+ |----------|-----------|------------|
76
+ | WSL2 | No native clipboard | `clip.exe`/`powershell.exe` bridge aliases |
77
+ | NixOS | System packages conflict | Use Nix Flake exclusively |
78
+ | Fish < 4.0 | No keyboard protocol | Upgrade to Fish 4.x |
79
+ | Nushell | Complex aliases skipped | Core `dot` workflow remains first-class |
80
+ | macOS Intel | Homebrew path differs | Template handles `/usr/local` vs `/opt/homebrew` |
@@ -0,0 +1,117 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Themes
6
+
7
+ Themes are auto-generated from wallpapers. K-Means clustering in CIELAB color space extracts dominant colors. Every theme is WCAG AAA compliant.
8
+
9
+ There is no fixed theme catalog. The available themes depend on which wallpapers are present on your system. Run `dot theme list` to see what's discovered.
10
+
11
+ ## Source of truth
12
+
13
+ Wallpapers — not `themes.toml` — are the source of truth. The system discovers wallpapers from two locations:
14
+
15
+ 1. **System wallpapers** — platform-native (macOS `/System/Library/Desktop Pictures/`, Linux `/usr/share/backgrounds/`)
16
+ 2. **Custom wallpapers** — `~/Pictures/Wallpapers/` (custom overrides system on name collision)
17
+
18
+ `extract-theme.py` runs K-Means++ in CIELAB on each wallpaper, generates a 16-color terminal palette plus UI/app mappings, and enforces WCAG AAA contrast. `rebuild-themes.sh` orchestrates discovery → parallel extraction → assembly into `.chezmoidata/themes.toml` (cached in `~/.cache/dotfiles/themes/`, regenerated only when wallpapers change).
19
+
20
+ `.chezmoidata/themes.toml` is a **generated artifact**. Do not edit it directly.
21
+
22
+ ## Quick Start
23
+
24
+ ```bash
25
+ dot theme # Interactive picker (paired wallpaper themes only)
26
+ dot theme tahoe-dark # Switch directly
27
+ dot theme toggle # Swap dark↔light within current family
28
+ dot theme rebuild # Regenerate from current wallpapers
29
+ dot theme list # Show paired themes with System/Custom source
30
+ ```
31
+
32
+ ## Runtime Apply Behavior
33
+
34
+ `dot theme` writes the selected theme to `.chezmoidata.toml`, regenerates target configs through chezmoi, then attempts live reloads for running applications.
35
+
36
+ - **macOS**:
37
+ - Applies system Light/Dark appearance via `osascript` (`System Events`)
38
+ - Applies the wallpaper's derived accent color via `defaults write -g AppleAccentColor` and `AppleHighlightColor`
39
+ - Forces UI refresh via `killall cfprefsd SystemUIServer Dock "System Settings"`
40
+ - Sets desktop wallpaper across all displays via `osascript`
41
+ - **Linux**:
42
+ - Applies desktop color scheme through `gsettings`
43
+ - Sets `picture-uri` and `picture-uri-dark` separately
44
+ - Auto-converts HEIC → PNG via `magick`/`heif-convert`/`convert`
45
+ - DMS (Dank Material Shell) integration when present
46
+
47
+ ## Theme Naming
48
+
49
+ Themes follow the pattern `<wallpaper-name>-<dark|light>`. The wallpaper filename (lowercased, hyphenated) becomes the theme family.
50
+
51
+ Examples (depend on what's present on your system):
52
+
53
+ | Wallpaper file | Generated themes |
54
+ |:---|:---|
55
+ | `~/Pictures/Wallpapers/tahoe.heic` (dynamic HEIC, 2 frames) | `tahoe-dark`, `tahoe-light` |
56
+ | `/System/Library/Desktop Pictures/Sonoma.heic` | `sonoma-dark`, `sonoma-light` |
57
+ | `/System/Library/Desktop Pictures/.thumbnails/Dome Dark.heic` + `Dome Light.heic` | `dome-dark`, `dome-light` |
58
+
59
+ Only paired themes (with both dark and light variants) appear in `dot theme` and `dot theme list`.
60
+
61
+ ## Custom Wallpapers — Dynamic HEIC
62
+
63
+ Custom wallpapers in `~/Pictures/Wallpapers/` ship as Apple-compatible dynamic HEIC files: a single `.heic` containing both light and dark images, tagged with `apple_desktop:apr` XMP metadata. macOS auto-switches the displayed image based on appearance mode.
64
+
65
+ To merge separate dark + light pairs into a single dynamic HEIC:
66
+
67
+ ```bash
68
+ bash scripts/theme/merge-wallpaper.sh # merge all pairs in ~/Pictures/Wallpapers/
69
+ bash scripts/theme/merge-wallpaper.sh tahoe # merge a specific family
70
+ bash scripts/theme/merge-wallpaper.sh --dry-run # preview only
71
+ ```
72
+
73
+ ## Generated Theme Schema
74
+
75
+ Each theme block in the generated `themes.toml` follows this schema:
76
+
77
+ ```toml
78
+ [themes.example-dark]
79
+ mode = "dark" # "dark" or "light"
80
+ family = "example" # groups dark/light variants
81
+ macos_accent = 4 # derived from accent hue (0-6, -1=Graphite)
82
+ wallpaper = "/path/to/wallpaper.heic"
83
+ source = "custom" # "custom" or "system"
84
+
85
+ [themes.example-dark.term]
86
+ bg, fg, cursor, cursor_text, sel_bg, sel_fg
87
+ c0 .. c15 # 16 ANSI colors
88
+
89
+ [themes.example-dark.ui]
90
+ accent, accent_text # white text always 7:1 against accent
91
+ error, warning, success, info
92
+ panel, border # contrast-bound (1.03-2.0 for panel, 1.08-3.5 for border)
93
+
94
+ [themes.example-dark.app]
95
+ nvim, nvim_style, lualine
96
+ gtk_theme, gtk_icon, gnome_shell, gnome_gtk
97
+ vscode, vscode_dark, vscode_light
98
+ cat_wallpaper
99
+ starship_palette
100
+ ```
101
+
102
+ ## Adding a Theme
103
+
104
+ To add a new theme, add a wallpaper — there are no manual TOML edits.
105
+
106
+ 1. Drop a wallpaper into `~/Pictures/Wallpapers/`
107
+ 2. (Optional) Use `merge-wallpaper.sh` to combine separate dark/light files into a single dynamic HEIC
108
+ 3. Run `dot theme rebuild` to regenerate `themes.toml` (parallel K-Means extraction, ~1-4s per wallpaper)
109
+ 4. Run `dot theme <name>` to test
110
+ 5. Verify with `chezmoi diff` before applying
111
+
112
+ For best results, wallpapers should be 6016×6016 dynamic HEIC with ~1.6× brightness ratio between dark and light variants (golden ratio). Lower-resolution images are auto-resized; non-paired wallpapers are skipped from the picker.
113
+
114
+ ## See Also
115
+
116
+ - [Theming Guide](../guides/THEMING.md) — full pipeline documentation
117
+ - [Utilities](UTILS.md) — `dot theme` command reference
@@ -0,0 +1,109 @@
1
+ ---
2
+ render_with_liquid: false
3
+ ---
4
+
5
+ # Tools
6
+
7
+ Integrated tools organized by role in the workflow.
8
+
9
+ ---
10
+
11
+ ## Core Shells
12
+
13
+ | Tool | Purpose | Key Feature |
14
+ | :--- | :--- | :--- |
15
+ | **Zsh** | Primary shell | Modular `rc.d` architecture with lazy-loading |
16
+ | **Fish** | Interactive shell | Fast startup via dynamic alias-to-function autoloading |
17
+ | **Nushell** | Data shell | Structured data pipelines |
18
+ | **Starship** | Cross-shell prompt | Async segment rendering |
19
+
20
+ ---
21
+
22
+ ## Infrastructure and Portability
23
+
24
+ | Tool | Category | Description |
25
+ | :--- | :--- | :--- |
26
+ | **Nix Flakes** | Deterministic environments | Reproducible setups via `flake.nix` |
27
+ | **Chezmoi** | Dotfiles manager | Template-based configuration across machines |
28
+ | **Direnv** | Environment management | Automatic environment injection on `cd` |
29
+ | **Mise** | Runtime manager | Polyglot version manager (Node, Python, Rust, Go) |
30
+
31
+ ---
32
+
33
+ ## Automation and Advanced Tools
34
+
35
+ | Tool | Purpose | Description |
36
+ | :--- | :--- | :--- |
37
+ | **Pueue** | Task queue | Offload long-running tasks to a background daemon |
38
+ | **Wasmtime** | Wasm runtime | Run pre-compiled Rust/Zig tools as WebAssembly modules |
39
+ | **SOPS** | Secrets operations | Encrypted secrets with automatic en/decryption |
40
+
41
+ ---
42
+
43
+ ## Navigation and Discovery
44
+
45
+ | Tool | Description |
46
+ | :--- | :--- |
47
+ | **Yazi** | Terminal file manager — use `yy` to `cd` on exit |
48
+ | **Ripgrep (rg)** | Fast recursive text search |
49
+ | **fd** | Simpler, faster alternative to `find` |
50
+ | **Zoxide** | Fuzzy directory jumper (replaces `cd`) |
51
+ | **fzf** | Interactive fuzzy finder for files, history, and git |
52
+
53
+ ---
54
+
55
+ ## Modern CLI Replacements
56
+
57
+ | Classic | Replacement | Improvement |
58
+ | :--- | :--- | :--- |
59
+ | `ls` | **eza** | Icons, git status, better colors |
60
+ | `cat` | **bat** | Syntax highlighting and git integration |
61
+ | `top` | **btop** | Visual system resource dashboard |
62
+ | `df` | **duf** | Readable disk usage overview |
63
+ | `du` | **dust** | Visual breakdown of folder sizes |
64
+ | `ps` | **procs** | Improved process tracking |
65
+
66
+ ---
67
+
68
+ ## Terminal Ecosystem
69
+
70
+ | Tool | Style | Platform |
71
+ | :--- | :--- | :--- |
72
+ | **Ghostty** | Native / GPU | macOS, Linux |
73
+ | **Zellij** | Layout-aware multiplexer | Cross-platform |
74
+ | **Tmux** | Classic multiplexer | Cross-platform |
75
+ | **Fastfetch** | System info | Cross-platform |
76
+
77
+ ---
78
+
79
+ ## Developer Tools
80
+
81
+ | Tool | Description |
82
+ | :--- | :--- |
83
+ | **Neovim** | Lua-based configuration with lazy.nvim |
84
+ | **Lazygit** | TUI for Git workflows |
85
+ | **Delta** | Syntax-highlighted side-by-side diffs |
86
+ | **Just** | Task runner (replaces Makefiles) |
87
+ | **Age** | Modern file encryption |
88
+ | **GnuPG** | PGP standard for signing and encryption |
89
+
90
+ ---
91
+
92
+ ## AI Pair Programming
93
+
94
+ Detailed guide: [AI.md](../AI.md).
95
+
96
+ | Tool | Description |
97
+ | :--- | :--- |
98
+ | **Aider** | Git-native AI pair programming |
99
+ | **Claude CLI** | Anthropic's terminal assistant |
100
+ | **Copilot CLI** | GitHub Copilot in the terminal |
101
+ | **Kiro CLI** | Agentic AI terminal assistant |
102
+ | **Gemini CLI** | Google's multi-modal CLI tool |
103
+ | **Mods/Fabric** | Pipeline-friendly AI processing |
104
+ | **sgpt** | Shell-GPT for terminal AI queries |
105
+ | **Ollama** | Run large language models locally |
106
+ | **Autohand Code** | Autohand coding agent CLI |
107
+ | **Mistral Vibe** | Mistral AI coding agent |
108
+ | **Qwen Code** | Qwen AI coding assistant |
109
+ | **ZAI** | Zhipu AI GLM coding agent |