@sebastienrousseau/dotfiles 0.2.499 → 0.2.500

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. package/CHANGELOG.md +375 -0
  2. package/LICENSE +1283 -0
  3. package/README.md +284 -0
  4. package/docs/.vitepress/reports/localization-readability-audit.md +69 -0
  5. package/docs/AI.md +102 -0
  6. package/docs/COPYRIGHT +4 -3
  7. package/docs/NAMING_CONVENTIONS.md +95 -0
  8. package/docs/README.md +78 -0
  9. package/docs/adr/ADR-001-ci-cd-pipeline.md +101 -0
  10. package/docs/adr/ADR-002-shell-performance.md +121 -0
  11. package/docs/adr/ADR-003-security-first.md +140 -0
  12. package/docs/adr/ADR-004-cli-architecture.md +157 -0
  13. package/docs/adr/ADR-005-chezmoi-choice.md +89 -0
  14. package/docs/adr/ADR-006-shell-selection.md +115 -0
  15. package/docs/adr/ADR-007-multi-shell-parity.md +53 -0
  16. package/docs/adr/ADR-008-alias-system-architecture.md +85 -0
  17. package/docs/adr/README.md +32 -0
  18. package/docs/architecture/ARCHITECTURE.md +113 -0
  19. package/docs/architecture/INTEROP.md +36 -0
  20. package/docs/architecture/REPO_LAYOUT.md +237 -0
  21. package/docs/architecture/WALKTHROUGH.md +82 -0
  22. package/docs/architecture/fleet-deployment.md +73 -0
  23. package/docs/archive/EUXIS_2026_REVIEW.md +119 -0
  24. package/docs/archive/LEGACY_ROADMAP.md +142 -0
  25. package/docs/archive/MILESTONE_v0.2.493.md +43 -0
  26. package/docs/{PLAN.md → archive/PLAN.md} +4 -4
  27. package/docs/archive/REPO_AUDIT.md +23 -0
  28. package/docs/guides/INSTALL.md +140 -0
  29. package/docs/guides/NEOVIM_IDE_GUIDE.md +52 -0
  30. package/docs/guides/THEMING.md +222 -0
  31. package/docs/guides/TROUBLESHOOTING.md +148 -0
  32. package/docs/guides/WSL2_NIX_TROUBLESHOOTING.md +723 -0
  33. package/docs/index.md +39 -0
  34. package/docs/interop/A2A.md +32 -0
  35. package/docs/manual/00-introduction.md +85 -0
  36. package/docs/manual/01-concepts/01-architecture.md +134 -0
  37. package/docs/manual/01-concepts/02-trust-model.md +178 -0
  38. package/docs/manual/01-concepts/03-theme-engine.md +182 -0
  39. package/docs/manual/01-concepts/04-fleet.md +142 -0
  40. package/docs/manual/01-concepts/05-self-healing.md +197 -0
  41. package/docs/manual/02-tutorials/01-first-install.md +192 -0
  42. package/docs/manual/02-tutorials/02-add-wallpaper.md +211 -0
  43. package/docs/manual/02-tutorials/03-create-profile.md +238 -0
  44. package/docs/manual/02-tutorials/04-encrypt-secret.md +275 -0
  45. package/docs/manual/02-tutorials/05-deploy-fleet.md +279 -0
  46. package/docs/manual/03-reference/01-dot-cli.md +413 -0
  47. package/docs/manual/03-reference/02-config-files.md +259 -0
  48. package/docs/manual/03-reference/03-environment.md +120 -0
  49. package/docs/manual/03-reference/04-templates.md +184 -0
  50. package/docs/manual/03-reference/05-feature-flags.md +118 -0
  51. package/docs/manual/04-cookbook/01-recipes.md +281 -0
  52. package/docs/manual/04-cookbook/02-troubleshooting.md +319 -0
  53. package/docs/manual/04-cookbook/03-faq.md +167 -0
  54. package/docs/manual/05-appendices/A-platform-matrix.md +97 -0
  55. package/docs/manual/05-appendices/B-security-checklist.md +78 -0
  56. package/docs/manual/05-appendices/C-glossary.md +36 -0
  57. package/docs/manual/05-appendices/D-bibliography.md +54 -0
  58. package/docs/manual/05-appendices/E-license.md +34 -0
  59. package/docs/manual/_toc.yml +58 -0
  60. package/docs/manual/command-index.md +58 -0
  61. package/docs/manual/concept-index.md +164 -0
  62. package/docs/operations/ATTESTATION.md +39 -0
  63. package/docs/operations/MAINTENANCE.md +59 -0
  64. package/docs/operations/MIGRATION.md +101 -0
  65. package/docs/operations/OPERATIONS.md +164 -0
  66. package/docs/operations/RELIABILITY.md +116 -0
  67. package/docs/{ROADMAP.md → operations/ROADMAP.md} +22 -22
  68. package/docs/operations/TESTING.md +195 -0
  69. package/docs/operations/TRACEABILITY.md +31 -0
  70. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +61 -0
  71. package/docs/operations/VERSION_SYNC.md +344 -0
  72. package/docs/reference/ALIASES.md +124 -0
  73. package/docs/reference/ALIASES_CHEATSHEET.md +28 -0
  74. package/docs/reference/ALIASES_DEPRECATIONS.md +9 -0
  75. package/docs/reference/FEATURES.md +62 -0
  76. package/docs/reference/FONTS.md +108 -0
  77. package/docs/reference/PROFILES.md +65 -0
  78. package/docs/reference/SCREENSHOTS.md +117 -0
  79. package/docs/reference/SCRIPTS.md +67 -0
  80. package/docs/reference/SUPPORT_MATRIX.md +74 -0
  81. package/docs/reference/THEMES.md +113 -0
  82. package/docs/reference/TOOLS.md +105 -0
  83. package/docs/reference/UTILS.md +151 -0
  84. package/docs/security/AI_ACT_COMPLIANCE.md +90 -0
  85. package/docs/security/AUTOMATION_SECRETS.md +22 -0
  86. package/docs/security/COMPLIANCE.md +453 -0
  87. package/docs/security/ENCRYPTION.md +52 -0
  88. package/docs/security/FMEA.md +155 -0
  89. package/docs/security/INCIDENT_RESPONSE.md +575 -0
  90. package/docs/security/KEYS.md +45 -0
  91. package/docs/security/KEY_ROTATION.md +219 -0
  92. package/docs/security/MCP_POLICY.md +69 -0
  93. package/docs/security/POLICY_RELEASES.md +33 -0
  94. package/docs/security/README.md +24 -0
  95. package/docs/security/SECRETS.md +146 -0
  96. package/docs/security/SECURITY.md +41 -0
  97. package/docs/security/SECURITY_CHECKLIST.md +44 -0
  98. package/docs/security/SOUP_REGISTER.md +32 -0
  99. package/docs/security/THREAT_MODEL.md +120 -0
  100. package/docs/security/VERIFICATION_VALIDATION.md +224 -0
  101. package/docs/themes/README.md +6 -0
  102. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +26 -0
  103. package/docs/themes/hero-shot.svg +78 -0
  104. package/dot_config/.module-manifest.json +69 -0
  105. package/dot_config/ai/identity.md +20 -0
  106. package/dot_config/ai/patterns/architect.md +14 -0
  107. package/dot_config/ai/patterns/hardener.md +13 -0
  108. package/dot_config/ai/patterns/refactor.md +13 -0
  109. package/dot_config/aider/aider.conf.yml +32 -0
  110. package/dot_config/alacritty/alacritty.toml.tmpl +55 -0
  111. package/dot_config/ansible/ansible.cfg +11 -0
  112. package/dot_config/atuin/config.toml +40 -0
  113. package/dot_config/bat/config +23 -0
  114. package/dot_config/brave-flags.conf.tmpl +7 -0
  115. package/dot_config/btop/btop.conf +16 -0
  116. package/dot_config/btop/themes/tokyonight.theme +34 -0
  117. package/dot_config/bun/bunfig.toml.tmpl +33 -0
  118. package/dot_config/claude/mcp_servers.json +20 -0
  119. package/dot_config/containers/containers.conf +14 -0
  120. package/dot_config/curl/dot_curlrc +18 -0
  121. package/dot_config/dlv/config.yml +39 -0
  122. package/dot_config/docker/config.json +15 -0
  123. package/dot_config/dotfiles/agent-card.json +29 -0
  124. package/dot_config/dotfiles/agent-profiles.json +92 -0
  125. package/dot_config/dotfiles/boot/README.md +11 -0
  126. package/dot_config/dotfiles/grub/README.md +11 -0
  127. package/dot_config/dotfiles/lock/README.md +11 -0
  128. package/dot_config/dotfiles/mcp-lock.json +33 -0
  129. package/dot_config/dotfiles/mcp-policy.json +52 -0
  130. package/dot_config/dotfiles/mcp-registry.json +47 -0
  131. package/dot_config/dotfiles/model-registry.json +20 -0
  132. package/dot_config/dotfiles/policy-bundles.json +38 -0
  133. package/dot_config/dotfiles/prompt-registry.json +16 -0
  134. package/dot_config/dotfiles/versions.env +18 -0
  135. package/dot_config/duf/duf.conf +6 -0
  136. package/dot_config/duti/defaults.duti +5 -0
  137. package/dot_config/emoji/emoji.txt +34 -0
  138. package/dot_config/environment.d/50-ssh-agent.conf +2 -0
  139. package/dot_config/environment.d/90-wayland.conf +19 -0
  140. package/dot_config/fastfetch/config.jsonc +28 -0
  141. package/dot_config/firefox/user.js.tmpl +58 -0
  142. package/dot_config/fish/completions/dot-theme-sync.fish.tmpl +9 -0
  143. package/dot_config/fish/completions/dot.fish.tmpl +115 -0
  144. package/dot_config/fish/conf.d/000-perf-cache.fish +56 -0
  145. package/dot_config/fish/conf.d/aliases.fish.tmpl +77 -0
  146. package/dot_config/fish/conf.d/env.fish.tmpl +48 -0
  147. package/dot_config/fish/conf.d/functions.fish.tmpl +22 -0
  148. package/dot_config/fish/conf.d/init.fish.tmpl +151 -0
  149. package/dot_config/fish/config.fish.tmpl +44 -0
  150. package/dot_config/fish/fish_plugins +1 -0
  151. package/dot_config/fish/functions/_.fish +3 -0
  152. package/dot_config/fish/functions/_cached_eval.fish +58 -0
  153. package/dot_config/fish/functions/als.fish +46 -0
  154. package/dot_config/fish/functions/bg-upgrade.fish +7 -0
  155. package/dot_config/fish/functions/c.fish +3 -0
  156. package/dot_config/fish/functions/cat.fish +9 -0
  157. package/dot_config/fish/functions/d.fish +7 -0
  158. package/dot_config/fish/functions/dot.fish +34 -0
  159. package/dot_config/fish/functions/h.fish +3 -0
  160. package/dot_config/fish/functions/l.fish +7 -0
  161. package/dot_config/fish/functions/la.fish +7 -0
  162. package/dot_config/fish/functions/ll.fish +7 -0
  163. package/dot_config/fish/functions/log_error.fish +13 -0
  164. package/dot_config/fish/functions/log_info.fish +13 -0
  165. package/dot_config/fish/functions/lr.fish +7 -0
  166. package/dot_config/fish/functions/lra.fish +7 -0
  167. package/dot_config/fish/functions/ls.fish +7 -0
  168. package/dot_config/fish/functions/lt.fish +7 -0
  169. package/dot_config/fish/functions/lta.fish +7 -0
  170. package/dot_config/fish/functions/notify-run.fish +11 -0
  171. package/dot_config/fish/functions/q.fish +3 -0
  172. package/dot_config/fish/functions/silent-run.fish +7 -0
  173. package/dot_config/fish/functions/yy.fish +8 -0
  174. package/dot_config/flatpak/flatpak.list +4 -0
  175. package/dot_config/fontconfig/fonts.conf.tmpl +57 -0
  176. package/dot_config/foot/foot.ini.tmpl +33 -0
  177. package/dot_config/fuzzel/fuzzel.ini.tmpl +18 -0
  178. package/dot_config/fzf/fzf.zsh +48 -0
  179. package/dot_config/gem/gemrc +9 -0
  180. package/dot_config/gh/config.yml +12 -0
  181. package/dot_config/ghostty/config.tmpl +165 -0
  182. package/dot_config/git/allowed_signers.tmpl +18 -0
  183. package/dot_config/git/attributes +12 -0
  184. package/dot_config/git/commit-template +10 -0
  185. package/dot_config/git/ignore +27 -0
  186. package/dot_config/gnupg/gpg-agent.conf +11 -0
  187. package/dot_config/go/golangci.yml +118 -0
  188. package/dot_config/go/gopls.json +30 -0
  189. package/dot_config/goose/config.yaml +29 -0
  190. package/dot_config/gtk-3.0/gtk.css.tmpl +184 -0
  191. package/dot_config/gtk-3.0/settings.ini.tmpl +27 -0
  192. package/dot_config/gtk-4.0/gtk.css.tmpl +252 -0
  193. package/dot_config/gtk-4.0/settings.ini.tmpl +18 -0
  194. package/dot_config/htop/htoprc +20 -0
  195. package/dot_config/inputrc +2 -0
  196. package/dot_config/ipython/profile_default/ipython_config.py +19 -0
  197. package/dot_config/just/justfile +122 -0
  198. package/dot_config/k9s/config.yaml +65 -0
  199. package/dot_config/k9s/skins/catppuccin-mocha.yaml +116 -0
  200. package/dot_config/kanshi/config.tmpl +22 -0
  201. package/dot_config/karabiner/karabiner.json +14 -0
  202. package/dot_config/kitty/kitty.conf.tmpl +53 -0
  203. package/dot_config/lazydocker/config.yml +186 -0
  204. package/dot_config/lazygit/config.yml +35 -0
  205. package/dot_config/mako/config +47 -0
  206. package/dot_config/mas/masapps.txt +5 -0
  207. package/dot_config/micro/settings.json +3 -0
  208. package/dot_config/mimeapps.list +77 -0
  209. package/dot_config/minikube/config.json +13 -0
  210. package/dot_config/mise/config.toml +99 -0
  211. package/dot_config/mongosh/mongoshrc.js +68 -0
  212. package/dot_config/mpv/input.conf +47 -0
  213. package/dot_config/mpv/mpv.conf +47 -0
  214. package/dot_config/mycli/myclirc +67 -0
  215. package/dot_config/nano/nanorc +28 -0
  216. package/dot_config/ncdu/config +12 -0
  217. package/dot_config/niri/config.kdl.tmpl +327 -0
  218. package/dot_config/nushell/aliases.nu +18 -0
  219. package/dot_config/nushell/completions.nu.tmpl +52 -0
  220. package/dot_config/nushell/config.nu.tmpl +86 -0
  221. package/dot_config/nushell/env.nu.tmpl +94 -0
  222. package/dot_config/nushell/functions.nu.tmpl +17 -0
  223. package/dot_config/nvim/init.lua +18 -0
  224. package/dot_config/nvim/lazy-lock.json +58 -0
  225. package/dot_config/nvim/lua/config/autocmds.lua +107 -0
  226. package/dot_config/nvim/lua/config/keymaps.lua +92 -0
  227. package/dot_config/nvim/lua/config/lazy.lua +44 -0
  228. package/dot_config/nvim/lua/config/options.lua +49 -0
  229. package/dot_config/nvim/lua/plugins/ai.lua +75 -0
  230. package/dot_config/nvim/lua/plugins/coding.lua +216 -0
  231. package/dot_config/nvim/lua/plugins/completion.lua +60 -0
  232. package/dot_config/nvim/lua/plugins/dap.lua +412 -0
  233. package/dot_config/nvim/lua/plugins/editor.lua +55 -0
  234. package/dot_config/nvim/lua/plugins/git.lua +10 -0
  235. package/dot_config/nvim/lua/plugins/lsp.lua +156 -0
  236. package/dot_config/nvim/lua/plugins/markdown.lua +18 -0
  237. package/dot_config/nvim/lua/plugins/rust.lua +34 -0
  238. package/dot_config/nvim/lua/plugins/sessions.lua +33 -0
  239. package/dot_config/nvim/lua/plugins/ui.lua +509 -0
  240. package/dot_config/paru/paru.conf +10 -0
  241. package/dot_config/pip/pip.conf.tmpl +32 -0
  242. package/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl +81 -0
  243. package/dot_config/pueue/pueue.yml +34 -0
  244. package/dot_config/pypoetry/config.toml +6 -0
  245. package/dot_config/pyrightconfig.json +5 -0
  246. package/dot_config/raycast/README.md +13 -0
  247. package/dot_config/redis/redisclirc +41 -0
  248. package/dot_config/ripgrep/ripgreprc +21 -0
  249. package/dot_config/shell/00-core-paths.sh.tmpl +133 -0
  250. package/dot_config/shell/05-core-safety.sh +47 -0
  251. package/dot_config/shell/10-secrets.sh +40 -0
  252. package/dot_config/shell/40-fzf-defaults.sh.tmpl +16 -0
  253. package/dot_config/shell/40-ls-colors.sh +48 -0
  254. package/dot_config/shell/50-logic-functions-core.sh.tmpl +10 -0
  255. package/dot_config/shell/50-logic-functions.sh.tmpl +10 -0
  256. package/dot_config/shell/51-logic-functions-extra.sh.tmpl +64 -0
  257. package/dot_config/shell/90-ux-aliases.sh.tmpl +120 -0
  258. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +54 -0
  259. package/dot_config/shell/Brewfile +207 -0
  260. package/dot_config/shell/Brewfile.cask +92 -0
  261. package/dot_config/shell/Brewfile.cli +127 -0
  262. package/dot_config/shell/README.md +267 -0
  263. package/dot_config/shell/als_data.txt.tmpl +65 -0
  264. package/dot_config/shell/custom/auto_ls.zsh +20 -0
  265. package/dot_config/shell/custom/context_suggest.zsh +68 -0
  266. package/dot_config/shell/custom/error_analysis.zsh +45 -0
  267. package/dot_config/sops/dot_sops.yaml +23 -0
  268. package/dot_config/starship.toml.tmpl +202 -0
  269. package/dot_config/swaylock/config +43 -0
  270. package/dot_config/systemd/user/dotfiles-maintenance.service +8 -0
  271. package/dot_config/systemd/user/dotfiles-maintenance.timer +11 -0
  272. package/dot_config/systemd/user/pueued.service +12 -0
  273. package/dot_config/systemd/user/ssh-agent.service +12 -0
  274. package/dot_config/task/Taskfile.yml +86 -0
  275. package/dot_config/tflint/tflint.hcl +9 -0
  276. package/dot_config/tmux/tmux.conf.tmpl +223 -0
  277. package/dot_config/topgrade.toml.tmpl +54 -0
  278. package/dot_config/user-dirs.dirs +9 -0
  279. package/dot_config/vscode/extensions.txt +11 -0
  280. package/dot_config/vscode/settings.json.tmpl +82 -0
  281. package/dot_config/waybar/config.jsonc.tmpl +90 -0
  282. package/dot_config/waybar/style.css.tmpl +211 -0
  283. package/dot_config/wezterm/wezterm.lua.tmpl +64 -0
  284. package/dot_config/wget/wgetrc +12 -0
  285. package/dot_config/xdg-desktop-portal/niri-portals.conf +5 -0
  286. package/dot_config/yarn/yarnrc.yml +36 -0
  287. package/dot_config/yazi/keymap.toml +67 -0
  288. package/dot_config/yazi/theme.toml +102 -0
  289. package/dot_config/yazi/yazi.toml +40 -0
  290. package/dot_config/zathura/zathurarc +52 -0
  291. package/dot_config/zellij/config.kdl.tmpl +79 -0
  292. package/dot_config/zsh/dot_zprofile +7 -0
  293. package/dot_config/zsh/dot_zshenv +5 -0
  294. package/dot_config/zsh/dot_zshrc.tmpl +498 -0
  295. package/dot_config/zsh/rc.d/00-alias-shims.zsh +77 -0
  296. package/dot_config/zsh/rc.d/05-ssh-agent.zsh +18 -0
  297. package/dot_config/zsh/rc.d/10-env.zsh.tmpl +28 -0
  298. package/dot_config/zsh/rc.d/20-zinit.zsh +65 -0
  299. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +194 -0
  300. package/dot_config/zsh/rc.d/40-bell.zsh +20 -0
  301. package/dot_config/zsh/rc.d/50-login-fortune.zsh +9 -0
  302. package/dot_config/zsh/rc.d/99-alias-wrapper.zsh +32 -0
  303. package/dot_local/bin/__pycache__/executable_dot-load-benchmark-ptycpython-312.pyc +0 -0
  304. package/dot_local/bin/executable_ai-update +195 -0
  305. package/dot_local/bin/executable_ai_core +152 -0
  306. package/dot_local/bin/executable_antigravity +11 -0
  307. package/dot_local/bin/executable_b64 +84 -0
  308. package/dot_local/bin/executable_bm +77 -0
  309. package/dot_local/bin/executable_cb +39 -0
  310. package/dot_local/bin/executable_dot +589 -0
  311. package/dot_local/bin/executable_dot-ai +36 -0
  312. package/dot_local/bin/executable_dot-bootstrap +77 -0
  313. package/dot_local/bin/executable_dot-launch-or-focus +52 -0
  314. package/dot_local/bin/executable_dot-load-benchmark +31 -0
  315. package/dot_local/bin/executable_dot-load-benchmark-pty +77 -0
  316. package/dot_local/bin/executable_dot-theme-sync +952 -0
  317. package/dot_local/bin/executable_dot_completion +57 -0
  318. package/dot_local/bin/executable_dtags +28 -0
  319. package/dot_local/bin/executable_epoch +67 -0
  320. package/dot_local/bin/executable_extract +41 -0
  321. package/dot_local/bin/executable_gbd +52 -0
  322. package/dot_local/bin/executable_gd +42 -0
  323. package/dot_local/bin/executable_git-ai-commit +175 -0
  324. package/dot_local/bin/executable_git-ai-diff +169 -0
  325. package/dot_local/bin/executable_gl +101 -0
  326. package/dot_local/bin/executable_hash +161 -0
  327. package/dot_local/bin/executable_hashsum +160 -0
  328. package/dot_local/bin/executable_hex +115 -0
  329. package/dot_local/bin/executable_jsonv +78 -0
  330. package/dot_local/bin/executable_jwt +94 -0
  331. package/dot_local/bin/executable_kill-port +75 -0
  332. package/dot_local/bin/executable_lorem +118 -0
  333. package/dot_local/bin/executable_mkscript +35 -0
  334. package/dot_local/bin/executable_monitor +56 -0
  335. package/dot_local/bin/executable_myip +51 -0
  336. package/dot_local/bin/executable_notify +22 -0
  337. package/dot_local/bin/executable_open +36 -0
  338. package/dot_local/bin/executable_pw +27 -0
  339. package/dot_local/bin/executable_rec-start +46 -0
  340. package/dot_local/bin/executable_rec-stop +35 -0
  341. package/dot_local/bin/executable_regex +132 -0
  342. package/dot_local/bin/executable_start-niri +8 -0
  343. package/dot_local/bin/executable_tmux-sessionizer +314 -0
  344. package/dot_local/bin/executable_tour +175 -0
  345. package/dot_local/bin/executable_up +21 -0
  346. package/dot_local/bin/executable_update +142 -0
  347. package/dot_local/bin/executable_uuid +87 -0
  348. package/dot_local/bin/executable_win +32 -0
  349. package/dot_local/bin/executable_yamlv +57 -0
  350. package/dot_local/share/bash-completion/completions/dot +72 -0
  351. package/dot_local/share/icons/hicolor/128x128/apps/rousseau.png +0 -0
  352. package/dot_local/share/icons/hicolor/16x16/apps/rousseau.png +0 -0
  353. package/dot_local/share/icons/hicolor/24x24/apps/rousseau.png +0 -0
  354. package/dot_local/share/icons/hicolor/256x256/apps/rousseau.png +0 -0
  355. package/dot_local/share/icons/hicolor/32x32/apps/rousseau.png +0 -0
  356. package/dot_local/share/icons/hicolor/48x48/apps/rousseau.png +0 -0
  357. package/dot_local/share/icons/hicolor/512x512/apps/rousseau.png +0 -0
  358. package/dot_local/share/icons/hicolor/64x64/apps/rousseau.png +0 -0
  359. package/dot_local/share/icons/hicolor/96x96/apps/rousseau.png +0 -0
  360. package/dot_local/share/icons/hicolor/scalable/apps/rousseau.png +0 -0
  361. package/dot_local/share/man/man1/dot.1 +149 -0
  362. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_download +64 -0
  363. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_install +18 -0
  364. package/dot_local/share/mise/plugins/kiro-cli/bin/executable_list-all +13 -0
  365. package/dot_local/share/wayland-sessions/niri.desktop.tmpl +6 -0
  366. package/dot_local/share/zsh/completions/.keep +0 -0
  367. package/dot_local/share/zsh/completions/_dot +283 -0
  368. package/install.sh +342 -0
  369. package/package.json +1 -1
  370. package/scripts/ci/check-copyright-headers.sh +96 -0
  371. package/scripts/ci/guard-gitleaks-checkout.sh +57 -0
  372. package/scripts/ci/install-chezmoi-verified.sh +64 -0
  373. package/scripts/ci/validate-ci-config.sh +224 -0
  374. package/scripts/demo/record.sh +42 -0
  375. package/scripts/diagnostics/a2a-conformance.sh +162 -0
  376. package/scripts/diagnostics/alias-governance.sh +137 -0
  377. package/scripts/diagnostics/aliases-cheatsheet.sh +73 -0
  378. package/scripts/diagnostics/aliases-manifest.sh +31 -0
  379. package/scripts/diagnostics/benchmark.sh +381 -0
  380. package/scripts/diagnostics/conflicts.sh +72 -0
  381. package/scripts/diagnostics/doctor-unified.sh +38 -0
  382. package/scripts/diagnostics/doctor.sh +541 -0
  383. package/scripts/diagnostics/drift-dashboard.sh +37 -0
  384. package/scripts/diagnostics/health.sh +597 -0
  385. package/scripts/diagnostics/history-analysis.sh +85 -0
  386. package/scripts/diagnostics/mcp-doctor.sh +575 -0
  387. package/scripts/diagnostics/perf.sh +225 -0
  388. package/scripts/diagnostics/scorecard.sh +118 -0
  389. package/scripts/diagnostics/secret-governance.sh +58 -0
  390. package/scripts/diagnostics/security-score.sh +438 -0
  391. package/scripts/diagnostics/smoke-test.sh +87 -0
  392. package/scripts/diagnostics/snapshot.sh +89 -0
  393. package/scripts/diagnostics/verify.sh +107 -0
  394. package/scripts/{verify_state.sh → diagnostics/verify_state.sh} +22 -22
  395. package/scripts/diagnostics/version-locks.sh +79 -0
  396. package/scripts/diagnostics/workstation-attestation.sh +181 -0
  397. package/scripts/docs/build-manual.sh +883 -0
  398. package/scripts/docs/check-manual.sh +213 -0
  399. package/scripts/dot/commands/agent.sh +465 -0
  400. package/scripts/dot/commands/ai.sh +416 -0
  401. package/scripts/dot/commands/aliases.sh +250 -0
  402. package/scripts/dot/commands/appearance.sh +80 -0
  403. package/scripts/dot/commands/core.sh +185 -0
  404. package/scripts/dot/commands/diagnostics.sh +229 -0
  405. package/scripts/dot/commands/fleet.sh +399 -0
  406. package/scripts/dot/commands/lint.sh +177 -0
  407. package/scripts/dot/commands/manual.sh +168 -0
  408. package/scripts/dot/commands/meta.sh +248 -0
  409. package/scripts/dot/commands/patterns.sh +54 -0
  410. package/scripts/dot/commands/restore.sh +231 -0
  411. package/scripts/dot/commands/secrets.sh +223 -0
  412. package/scripts/dot/commands/security.sh +76 -0
  413. package/scripts/dot/commands/tools.sh +469 -0
  414. package/scripts/dot/data/alias-deprecations.tsv +2 -0
  415. package/scripts/dot/lib/bento.sh +49 -0
  416. package/scripts/dot/lib/log.sh +194 -0
  417. package/scripts/dot/lib/platform.sh +98 -0
  418. package/scripts/dot/lib/ui.sh +507 -0
  419. package/scripts/dot/lib/utils.sh +372 -0
  420. package/scripts/fonts/install-nerd-fonts.sh +68 -0
  421. package/scripts/fonts/patch-fonts.sh +35 -0
  422. package/scripts/git-hooks/install.sh +11 -0
  423. package/scripts/git-hooks/pre-commit +12 -0
  424. package/scripts/git-hooks/pre-commit-audit.sh +145 -0
  425. package/scripts/git-hooks/pre-push +29 -0
  426. package/scripts/git-hooks/prepare-commit-msg +29 -0
  427. package/scripts/lib/secrets_provider.sh +158 -0
  428. package/scripts/maintenance/check-updates.sh +131 -0
  429. package/scripts/ops/ai-setup.sh +55 -0
  430. package/scripts/ops/bundle.sh +77 -0
  431. package/scripts/ops/chaos.sh +49 -0
  432. package/scripts/ops/chezmoi-apply.sh +270 -0
  433. package/scripts/ops/chezmoi-diff.sh +15 -0
  434. package/scripts/ops/chezmoi-remove.sh +45 -0
  435. package/scripts/ops/chezmoi-update.sh +48 -0
  436. package/scripts/ops/heal-chezmoi.sh +51 -0
  437. package/scripts/ops/heal-system.sh +128 -0
  438. package/scripts/ops/heal-tools.sh +340 -0
  439. package/scripts/ops/heal.sh +222 -0
  440. package/scripts/ops/post-apply-repair.sh +106 -0
  441. package/scripts/ops/prewarm.sh +127 -0
  442. package/scripts/ops/release.sh +252 -0
  443. package/scripts/ops/rollback.sh +589 -0
  444. package/scripts/ops/setup.sh +137 -0
  445. package/scripts/ops/teleport.sh +33 -0
  446. package/scripts/qa/coverage-baseline.sh +60 -0
  447. package/scripts/qa/docs-coverage.sh +111 -0
  448. package/scripts/qa/reliability-audit.sh +138 -0
  449. package/scripts/qa/traceability-coverage.sh +116 -0
  450. package/scripts/qa/validate-examples.sh +26 -0
  451. package/scripts/qa/wsl-contract.sh +11 -0
  452. package/scripts/release/package-policy-bundles.sh +125 -0
  453. package/scripts/secrets/age-init.sh +70 -0
  454. package/scripts/secrets/create-secrets-file.sh +45 -0
  455. package/scripts/secrets/encrypt-ssh-key.sh +43 -0
  456. package/scripts/security/backup.sh +57 -0
  457. package/scripts/security/dns-doh.sh +51 -0
  458. package/scripts/security/encryption-check.sh +54 -0
  459. package/scripts/security/enforce-policies.sh +334 -0
  460. package/scripts/security/firewall.sh +90 -0
  461. package/scripts/security/lock-configs.sh +57 -0
  462. package/scripts/security/lock-screen.sh +55 -0
  463. package/scripts/security/manage-secrets.sh +428 -0
  464. package/scripts/security/ssh-cert.sh +203 -0
  465. package/scripts/security/telemetry-kill.sh +50 -0
  466. package/scripts/security/usb-safety.sh +51 -0
  467. package/scripts/theme/apply-gnome-theme.sh +328 -0
  468. package/scripts/theme/extract-theme.py +677 -0
  469. package/scripts/theme/install-boot-logo.sh +62 -0
  470. package/scripts/theme/install-catppuccin-themes.sh +370 -0
  471. package/scripts/theme/install-cursors.sh +25 -0
  472. package/scripts/theme/install-file-icons.sh +26 -0
  473. package/scripts/theme/install-grub-theme.sh +61 -0
  474. package/scripts/theme/install-lock-icon.sh +30 -0
  475. package/scripts/theme/merge-wallpaper.sh +141 -0
  476. package/scripts/theme/rebuild-themes.sh +309 -0
  477. package/scripts/theme/switch.sh +421 -0
  478. package/scripts/theme/wallpaper-rotate.sh +136 -0
  479. package/scripts/theme/wallpaper-sync.sh +397 -0
  480. package/scripts/tools/cmatrix.sh +21 -0
  481. package/scripts/{detect-collisions.py → tools/detect-collisions.py} +2 -2
  482. package/scripts/tools/emoji-picker.sh +48 -0
  483. package/scripts/tools/figlet-banner.sh +18 -0
  484. package/scripts/tools/log-rotate.sh +30 -0
  485. package/scripts/tools/lolcat-wrap.sh +19 -0
  486. package/scripts/tools/pipes.sh +48 -0
  487. package/scripts/tuning/linux.sh +185 -0
  488. package/scripts/tuning/macos.sh +55 -0
  489. package/scripts/uninstall.sh +85 -0
  490. package/scripts/version-sync.sh +487 -0
  491. package/templates/chezmoi-data/geekom-a9.toml.example +21 -0
  492. package/templates/chezmoi-data/mac-m1.toml.example +16 -0
  493. package/templates/chezmoi-data/mac-t2-linux.toml.example +21 -0
  494. package/templates/chezmoi-data/surface-pro-7p.toml.example +21 -0
  495. package/templates/projects/go/.github/workflows/ci.yml +31 -0
  496. package/templates/projects/go/README.md +4 -0
  497. package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +1 -0
  498. package/templates/projects/go/go.sum +0 -0
  499. package/templates/projects/molecule/README.md +7 -0
  500. package/templates/projects/molecule/converge.yml +7 -0
  501. package/templates/projects/molecule/molecule.yml +16 -0
  502. package/templates/projects/node/.github/workflows/ci.yml +30 -0
  503. package/templates/projects/node/README.md +4 -0
  504. package/templates/projects/node/package-lock.json +12 -0
  505. package/templates/projects/node/src/index.js +1 -0
  506. package/templates/projects/packer/README.md +15 -0
  507. package/templates/projects/packer/main.pkr.hcl +15 -0
  508. package/templates/projects/python/.github/workflows/ci.yml +34 -0
  509. package/templates/projects/python/README.md +4 -0
  510. package/templates/projects/python/pyproject.toml +15 -0
  511. package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +1 -0
  512. package/templates/projects/python/tests/test_basic.py +1 -0
  513. package/docs/ARCHITECTURE.md +0 -62
  514. package/docs/COMPLIANCE.md +0 -47
  515. package/docs/OPERATIONS.md +0 -103
  516. package/docs/PR_DESCRIPTION.md +0 -150
  517. package/docs/ROADMAP_legacy.md +0 -556
  518. package/docs/SECURITY_CHECKLIST.md +0 -25
  519. package/docs/TASK.md +0 -99
  520. package/docs/WALKTHROUGH.md +0 -46
  521. package/scripts/backup.sh +0 -142
  522. package/scripts/banner.sh +0 -20
  523. package/scripts/benchmark.sh +0 -20
  524. package/scripts/build.sh +0 -41
  525. package/scripts/clean.sh +0 -31
  526. package/scripts/compile.sh +0 -54
  527. package/scripts/copy.sh +0 -108
  528. package/scripts/doctor.sh +0 -79
  529. package/scripts/dotfiles.sh +0 -63
  530. package/scripts/download.sh +0 -35
  531. package/scripts/help.sh +0 -57
  532. package/scripts/lock-configs.sh +0 -57
  533. package/scripts/package.sh +0 -46
  534. package/scripts/ssh.sh +0 -55
  535. package/scripts/teleport.sh +0 -23
  536. package/scripts/test-aliases.sh +0 -25
  537. package/scripts/test_smoke.sh +0 -88
  538. package/scripts/unpack.sh +0 -28
@@ -0,0 +1,151 @@
1
+ # 🅳🅾🆃🅵🅸🅻🅴🆂 (v{{ .dotfiles_version }}) — Interactive initialization
2
+ # Consolidated: init + keybindings + modern-core + carapace
3
+ # Non-interactive shells skip this entire file.
4
+
5
+ if not status is-interactive
6
+ return
7
+ end
8
+
9
+ # ── Shell Cache ──────────────────────────────────────────────────
10
+ set -g SHELL_CACHE "$XDG_CACHE_HOME"
11
+ if test -z "$SHELL_CACHE"
12
+ set SHELL_CACHE "$HOME/.cache"
13
+ end
14
+ set SHELL_CACHE "$SHELL_CACHE/fish"
15
+ mkdir -p "$SHELL_CACHE"
16
+
17
+ # ── Artifact Mode ────────────────────────────────────────────────
18
+ if not set -q DOTFILES_ARTIFACT_MODE
19
+ set -gx DOTFILES_ARTIFACT_MODE 0
20
+ end
21
+
22
+ if test "$DOTFILES_ARTIFACT_MODE" = "1"
23
+ function fish_prompt
24
+ set_color green
25
+ echo -n "➜ "
26
+ set_color normal
27
+ end
28
+ function fish_right_prompt; end
29
+ set -g fish_greeting ""
30
+ end
31
+
32
+ # ── Starship (eager — must survive cache clears) ────────────────
33
+ function _dotfiles_source_cached_init --argument-names tool file
34
+ if test -n "$XDG_CACHE_HOME"
35
+ set -l cache_root "$XDG_CACHE_HOME"
36
+ else
37
+ set -l cache_root "$HOME/.cache"
38
+ end
39
+
40
+ set -l cache_file "$cache_root/fish/$file"
41
+ if test -s "$cache_file"
42
+ source "$cache_file"
43
+ return 0
44
+ end
45
+
46
+ if command -v $tool >/dev/null 2>&1
47
+ _cached_eval $tool init fish
48
+ return $status
49
+ end
50
+
51
+ return 1
52
+ end
53
+
54
+ if test "$DOTFILES_ARTIFACT_MODE" = "0"; and command -v starship >/dev/null
55
+ if not _dotfiles_source_cached_init starship starship-init.fish
56
+ starship init fish | source
57
+ end
58
+ end
59
+
60
+ # ── Lazy Hydration (deferred to first prompt) ────────────────────
61
+ function _dotfiles_async_init
62
+ # Mise
63
+ if command -v mise >/dev/null
64
+ if not test -s "$SHELL_CACHE/mise-init.fish"
65
+ _cached_eval mise activate fish
66
+ else
67
+ source "$SHELL_CACHE/mise-init.fish"
68
+ end
69
+ end
70
+ # Atuin
71
+ if command -v atuin >/dev/null
72
+ if not test -s "$SHELL_CACHE/atuin-init.fish"
73
+ _cached_eval atuin init fish
74
+ else
75
+ source "$SHELL_CACHE/atuin-init.fish"
76
+ end
77
+ end
78
+ # Zoxide (--cmd=cd replaces cd with zoxide-aware version)
79
+ if command -v zoxide >/dev/null
80
+ if not test -s "$SHELL_CACHE/zoxide-init.fish"
81
+ _cached_eval zoxide init --cmd=cd fish
82
+ else
83
+ source "$SHELL_CACHE/zoxide-init.fish"
84
+ end
85
+ end
86
+ # FZF
87
+ if command -v fzf >/dev/null
88
+ if not test -s "$SHELL_CACHE/fzf-init.fish"
89
+ _cached_eval fzf --fish
90
+ else
91
+ source "$SHELL_CACHE/fzf-init.fish"
92
+ end
93
+ end
94
+ # Direnv
95
+ if command -v direnv >/dev/null
96
+ if not test -s "$SHELL_CACHE/direnv-init.fish"
97
+ _cached_eval direnv hook fish
98
+ else
99
+ source "$SHELL_CACHE/direnv-init.fish"
100
+ end
101
+ end
102
+ # Carapace completions (cached)
103
+ if command -v carapace >/dev/null 2>&1
104
+ set -l carapace_cache "$SHELL_CACHE/carapace-init.fish"
105
+ if test -s "$carapace_cache"
106
+ source "$carapace_cache"
107
+ else
108
+ set -l _carapace_tmp "$carapace_cache.tmp.$fish_pid"
109
+ if carapace _carapace fish >"$_carapace_tmp" 2>/dev/null
110
+ mv "$_carapace_tmp" "$carapace_cache"
111
+ source "$carapace_cache"
112
+ else
113
+ rm -f "$_carapace_tmp"
114
+ end
115
+ end
116
+ end
117
+ # Pueue daemon (deferred here to avoid blocking shell startup)
118
+ if command -v pueue >/dev/null; and not pueue status >/dev/null 2>&1
119
+ if command -v pueued >/dev/null
120
+ pueued -d >/dev/null 2>&1
121
+ end
122
+ end
123
+ end
124
+
125
+ function _dotfiles_trigger_hydration --on-event fish_prompt
126
+ functions -e _dotfiles_trigger_hydration
127
+ _dotfiles_async_init
128
+ if test "$DOTFILES_ARTIFACT_MODE" = "1"
129
+ begin
130
+ bash "$HOME/.dotfiles/scripts/dot/lib/bento.sh" </dev/null
131
+ kill -WINCH $fish_pid
132
+ end &
133
+ end
134
+ end
135
+
136
+ # ── Keybindings (Fish 4.x enhanced) ─────────────────────────────
137
+ bind ctrl-backspace backward-kill-word
138
+ bind alt-enter 'commandline -f accept-autosuggestion; commandline -f execute'
139
+ bind ctrl-z undo
140
+ bind ctrl-shift-z redo
141
+ bind alt-up 'prevd; commandline -f repaint'
142
+ bind alt-down 'nextd; commandline -f repaint'
143
+ bind ctrl-left backward-word
144
+ bind ctrl-right forward-word
145
+ bind alt-l 'echo; ls; commandline -f repaint'
146
+ bind alt-. history-token-search-backward
147
+ bind ctrl-g 'echo; git status --short 2>/dev/null || echo "Not a git repo"; commandline -f repaint'
148
+ bind alt-e edit_command_buffer
149
+ if command -q fzf
150
+ bind ctrl-t 'set -l result (fzf --height 40% --reverse 2>/dev/null); and commandline -it -- $result; commandline -f repaint'
151
+ end
@@ -0,0 +1,44 @@
1
+ # 🅳🅾🆃🅵🅸🅻🅴🆂 (v{{ .dotfiles_version }}) - <https://dotfiles.io>
2
+ # Made With ❤️ in London, United Kingdom
3
+ # Designed by
4
+ # Copyright (c) 2015-2026. All rights reserved.
5
+ # License: MIT
6
+
7
+ # Performance optimization - skip if not interactive
8
+ status is-interactive; or return
9
+
10
+ # Only source once
11
+ if set -q FISH_CONFIG_SOURCED
12
+ return
13
+ end
14
+ set -g FISH_CONFIG_SOURCED 1
15
+
16
+ {{- /* Input Validation: Ensure crucial variables are set */ -}}
17
+ {{- if not .chezmoi.homeDir -}}
18
+ {{- fail "Critical Error: .chezmoi.homeDir is not set!" -}}
19
+ {{- end -}}
20
+
21
+ # Load local customizations if they exist
22
+ if test -f "$HOME/.config/fish/config.fish.local"
23
+ source "$HOME/.config/fish/config.fish.local"
24
+ end
25
+
26
+ # Ensure LS_COLORS is set for fish (bridged from bash dircolors setup)
27
+ if not set -q LS_COLORS
28
+ set -l _dircolors_cache "$HOME/.cache/shell/dircolors.sh"
29
+ if test -f "$_dircolors_cache"
30
+ # Extract LS_COLORS value from cached dircolors output
31
+ set -l _val (string match -r "LS_COLORS='([^']+)'" < "$_dircolors_cache")
32
+ if set -q _val[2]
33
+ set -gx LS_COLORS "$_val[2]"
34
+ end
35
+ else if command -q dircolors
36
+ set -gx LS_COLORS (dircolors -c 2>/dev/null | string match -r "LS_COLORS='([^']+)'" | tail -1)
37
+ else if test (uname -s) = "Darwin"
38
+ set -gx CLICOLOR 1
39
+ set -gx LSCOLORS "ExFxCxDxBxegedabagacad"
40
+ end
41
+ end
42
+
43
+ # Welcome message
44
+ set -g fish_greeting ""
@@ -0,0 +1 @@
1
+ jorgebucaran/fisher
@@ -0,0 +1,3 @@
1
+ function _ --description 'Run command with sudo'
2
+ sudo $argv
3
+ end
@@ -0,0 +1,58 @@
1
+ # _cached_eval — Cache tool init output with binary mtime invalidation
2
+ # Mirrors the bash/zsh _cached_eval pattern for Fish
3
+ #
4
+ # Usage: _cached_eval <tool_binary> <init_args...>
5
+ # Example: _cached_eval starship init fish
6
+ # _cached_eval zoxide init fish
7
+ #
8
+ # Cache files stored in $XDG_CACHE_HOME/fish/ (or ~/.cache/fish/)
9
+ # Cache invalidated when binary mtime changes (e.g. after upgrade)
10
+
11
+ function _cached_eval --description 'Cache and source tool init output'
12
+ set -l tool_name $argv[1]
13
+ if test -z "$tool_name"
14
+ echo "_cached_eval: usage: _cached_eval <tool> <init args...>" >&2
15
+ return 1
16
+ end
17
+
18
+ # Resolve binary path
19
+ set -l tool_path (command -v $tool_name 2>/dev/null)
20
+ if test -z "$tool_path"
21
+ return 1
22
+ end
23
+
24
+ set -l cache_dir (set -q XDG_CACHE_HOME; and echo $XDG_CACHE_HOME; or echo "$HOME/.cache")/fish
25
+ set -l cache_file "$cache_dir/$tool_name-init.fish"
26
+ set -l mtime_file "$cache_dir/$tool_name-init.mtime"
27
+
28
+ mkdir -p "$cache_dir"
29
+
30
+ # Check if cache is stale (binary newer than cache)
31
+ set -l stale 0
32
+ if not test -f "$cache_file"
33
+ set stale 1
34
+ else if not test -f "$mtime_file"
35
+ set stale 1
36
+ else if test "$tool_path" -nt "$cache_file"
37
+ set stale 1
38
+ end
39
+
40
+ # Regenerate cache if stale
41
+ if test "$stale" = 1
42
+ set -l init_output (command $argv 2>/dev/null)
43
+ # Reject suspicious patterns indicating malicious payloads
44
+ if string match -rq 'curl\s.*\|\s*(ba)?sh|wget\s.*\|\s*(ba)?sh|nc\s+-e|/dev/tcp/|base64\s+-d\s*\|' -- "$init_output"
45
+ echo "[WARN] Suspicious output from $tool_name init, skipping" >&2
46
+ return 1
47
+ end
48
+ set -l tmp_cache "$cache_file.tmp.%self"
49
+ printf '%s\n' $init_output >"$tmp_cache"
50
+ mv "$tmp_cache" "$cache_file" # atomic rename
51
+ echo "$tool_path" >"$mtime_file"
52
+ end
53
+
54
+ # Source cached output
55
+ if test -s "$cache_file"
56
+ source "$cache_file"
57
+ end
58
+ end
@@ -0,0 +1,46 @@
1
+ function als --description 'Instant-Load High-Fidelity Command Explorer'
2
+ set -l data_file "$HOME/.config/shell/als_data.txt"
3
+
4
+ if not test -f "$data_file"
5
+ echo "Error: Command data not found. Please run 'chezmoi apply'."
6
+ return 1
7
+ end
8
+
9
+ # Find gum cmd robustly
10
+ set -l gum_cmd (command -v gum 2>/dev/null)
11
+ if test -z "$gum_cmd"
12
+ for f in $HOME/.local/share/mise/installs/aqua-charmbracelet-gum/*/gum*/gum
13
+ if test -x "$f"; set gum_cmd "$f"; break; end
14
+ end
15
+ end
16
+
17
+ if test -z "$gum_cmd"
18
+ echo "Error: 'gum' not found. Please ensure mise tools are installed."
19
+ return 1
20
+ end
21
+
22
+ # Search Interface (Near-Instant)
23
+ set -l selected ("$gum_cmd" filter --placeholder "Search categories, aliases, or descriptions..." \
24
+ --indicator "󰁔" --indicator.foreground 212 \
25
+ --match.foreground 212 --text.foreground 255 --height 20 < "$data_file")
26
+
27
+ if test -n "$selected"
28
+ # Extract metadata from hidden fields
29
+ set -l parts (string split "|SEP|" "$selected")
30
+ set -l final_cmd $parts[2]
31
+ set -l final_name $parts[3]
32
+
33
+ # Clean the display string for the detail view (remove ANSI and SEP)
34
+ set -l clean_display (echo "$selected" | sed 's/\x1b\[[0-9;]*m//g' | sed 's/|SEP|.*$//' | string trim)
35
+
36
+ echo ""
37
+ "$gum_cmd" style --foreground 212 --border rounded --border-foreground 212 --padding "1 2" \
38
+ "󰄬 COMMAND INTELLIGENCE" \
39
+ " Identity: $final_name" \
40
+ " Exec: $final_cmd" \
41
+ " Details: $clean_display"
42
+
43
+ echo "$final_cmd" | cb >/dev/null 2>&1
44
+ "$gum_cmd" style --foreground 240 " 󱉊 Copied to clipboard"
45
+ end
46
+ end
@@ -0,0 +1,7 @@
1
+ function bg-upgrade --description 'Background upgrade of all package managers'
2
+ echo "🚀 Starting background upgrades (Homebrew, Nix, Chezmoi)..."
3
+ if command -v brew >/dev/null; silent-run "brew upgrade"; end
4
+ if command -v nix >/dev/null; silent-run "nix flake update"; end
5
+ silent-run "chezmoi update"
6
+ echo "Check status with 'pueue status'"
7
+ end
@@ -0,0 +1,3 @@
1
+ function c --description 'Clear screen'
2
+ clear $argv
3
+ end
@@ -0,0 +1,9 @@
1
+ function cat --description 'Print file contents with bat fallback'
2
+ if command -v bat >/dev/null 2>&1
3
+ bat $argv
4
+ else if command -v batcat >/dev/null 2>&1
5
+ batcat $argv
6
+ else
7
+ command cat $argv
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ function d --description 'Run dot or docker'
2
+ if command -v dot >/dev/null 2>&1
3
+ dot $argv
4
+ else if command -v docker >/dev/null 2>&1
5
+ docker $argv
6
+ end
7
+ end
@@ -0,0 +1,34 @@
1
+ function dot --description 'dotfiles manager'
2
+ if test "$argv[1]" = "load"
3
+ # Since fish doesn't have the same "lazy loading" mechanism as this zsh setup
4
+ # we'll just indicate that we're ready.
5
+ # But we'll still call the real dot if it exists.
6
+ if test "$argv[2]" = "--status"
7
+ echo "ready"
8
+ return 0
9
+ end
10
+ end
11
+
12
+ if test -x "$HOME/.local/bin/dot"
13
+ "$HOME/.local/bin/dot" $argv
14
+ else
15
+ echo "dot command not found at $HOME/.local/bin/dot" >&2
16
+ return 1
17
+ end
18
+ end
19
+
20
+ function dm --description 'List dot agent modes'
21
+ dot mode list
22
+ end
23
+
24
+ function da --description 'List dot agent profiles'
25
+ dot agent list
26
+ end
27
+
28
+ function dmc --description 'Show MCP registry'
29
+ dot mcp registry
30
+ end
31
+
32
+ function datt --description 'Emit workstation attestation JSON'
33
+ dot attest --json
34
+ end
@@ -0,0 +1,3 @@
1
+ function h --description 'Show history'
2
+ history $argv
3
+ end
@@ -0,0 +1,7 @@
1
+ function l --wraps=ls --description 'List contents of directory'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls $argv
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ function la --wraps=ls --description 'List contents of directory including hidden files'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza -a --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls -a $argv
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ function ll --wraps=ls --description 'List contents of directory in long format'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza -alF --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls -lA $argv
6
+ end
7
+ end
@@ -0,0 +1,13 @@
1
+ function log_error --description 'Log error message'
2
+ if set -q NO_COLOR; or not isatty 2
3
+ set -l RED ""
4
+ set -l NC ""
5
+ printf "[ERROR] %s
6
+ " "$argv[1]" >&2
7
+ else
8
+ set -l RED (set_color red)
9
+ set -l NC (set_color normal)
10
+ printf "%s[ERROR]%s %s
11
+ " "$RED" "$NC" "$argv[1]" >&2
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ function log_info --description 'Log info message'
2
+ if set -q NO_COLOR; or not isatty 1
3
+ set -l BLUE ""
4
+ set -l NC ""
5
+ printf "[INFO] %s
6
+ " "$argv[1]"
7
+ else
8
+ set -l BLUE (set_color blue)
9
+ set -l NC (set_color normal)
10
+ printf "%s[INFO]%s %s
11
+ " "$BLUE" "$NC" "$argv[1]"
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ function lr --wraps=ls --description 'List contents of directory recursively'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza -alF --recurse --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls -lAR $argv
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ function lra --wraps=ls --description 'List contents of directory recursively including hidden files'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza -alF --recurse --all --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls -lAR $argv
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ function ls --description 'List contents of directory'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza --sort Name --icons --group-directories-first $argv
4
+ else
5
+ command ls $argv
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ function lt --wraps=ls --description 'List contents of directory in tree format'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza -aT --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls -R $argv
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ function lta --wraps=ls --description 'List contents of directory in tree format including hidden files'
2
+ if command -v eza >/dev/null 2>&1
3
+ eza -aT --all --sort Name --icons --group-directories-first $argv
4
+ else
5
+ ls -aR $argv
6
+ end
7
+ end
@@ -0,0 +1,11 @@
1
+ function notify-run --description 'Submit a command to pueue and notify when done'
2
+ if test -z "$argv"
3
+ echo "Usage: notify-run <command>"
4
+ return 1
5
+ end
6
+ set -l task_id (pueue add --print-id -- $argv)
7
+ echo "Task $task_id submitted: $argv"
8
+ # Run a background process to wait and notify
9
+ fish -c "pueue wait $task_id; and echo '✅ Task $task_id finished: $argv'" &
10
+ disown
11
+ end
@@ -0,0 +1,3 @@
1
+ function q --description 'Exit shell'
2
+ exit $argv
3
+ end
@@ -0,0 +1,7 @@
1
+ function silent-run --description 'Submit a command to pueue and forget about it'
2
+ if test -z "$argv"
3
+ echo "Usage: silent-run <command>"
4
+ return 1
5
+ end
6
+ pueue add -- $argv
7
+ end
@@ -0,0 +1,8 @@
1
+ function yy --description 'Run Yazi and change directory on exit'
2
+ set tmp (mktemp -t "yazi-cwd.XXXXXX")
3
+ yazi $argv --cwd-file="$tmp"
4
+ if set cwd (command cat -- "$tmp"); and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
5
+ builtin cd -- "$cwd"
6
+ end
7
+ rm -f -- "$tmp"
8
+ end
@@ -0,0 +1,4 @@
1
+ # Flatpak apps to install (one per line). Example:
2
+ # com.spotify.Client
3
+ # org.mozilla.firefox
4
+ # com.visualstudio.code
@@ -0,0 +1,57 @@
1
+ {{ if eq .chezmoi.os "linux" -}}
2
+ <?xml version="1.0"?>
3
+ <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
4
+ <fontconfig>
5
+ <!-- Antialiasing -->
6
+ <match target="font">
7
+ <edit mode="assign" name="antialias">
8
+ <bool>true</bool>
9
+ </edit>
10
+ </match>
11
+
12
+ <!-- Hinting -->
13
+ <match target="font">
14
+ <edit mode="assign" name="hinting">
15
+ <bool>true</bool>
16
+ </edit>
17
+ </match>
18
+
19
+ <!-- Hint Style -->
20
+ <match target="font">
21
+ <edit mode="assign" name="hintstyle">
22
+ <const>hintslight</const>
23
+ </edit>
24
+ </match>
25
+
26
+ <!-- LCD Filter -->
27
+ <match target="font">
28
+ <edit mode="assign" name="lcdfilter">
29
+ <const>lcddefault</const>
30
+ </edit>
31
+ </match>
32
+
33
+ <!-- Wayland grayscale rendering avoids color fringing on mixed-density panels -->
34
+ <match target="font">
35
+ <edit mode="assign" name="rgba">
36
+ <const>{{ if or .features.linux_desktop .features.niri }}none{{ else }}rgb{{ end }}</const>
37
+ </edit>
38
+ </match>
39
+
40
+ <match target="font">
41
+ <edit mode="assign" name="autohint">
42
+ <bool>false</bool>
43
+ </edit>
44
+ </match>
45
+
46
+ <!-- Default Monospace Font -->
47
+ <alias>
48
+ <family>monospace</family>
49
+ <prefer>
50
+ <family>JetBrainsMono Nerd Font</family>
51
+ <family>Symbols Nerd Font</family>
52
+ <family>Noto Color Emoji</family>
53
+ </prefer>
54
+ </alias>
55
+
56
+ </fontconfig>
57
+ {{ end -}}
@@ -0,0 +1,33 @@
1
+ {{- $t := index .themes (default "macos-monterey-dark" .theme) -}}
2
+ {{- if not $t -}}{{- $t = index .themes "macos-monterey-dark" -}}{{- end }}
3
+ {{- $tt := $t -}}
4
+ {{- $themeName := default "macos-monterey-dark" .theme -}}
5
+ {{- if hasSuffix "-light" $themeName -}}
6
+ {{- $darkTheme := index .themes (printf "%s-dark" (trimSuffix "-light" $themeName)) -}}
7
+ {{- if $darkTheme -}}{{- $tt = $darkTheme -}}{{- end -}}
8
+ {{- end }}
9
+ [main]
10
+ font={{ .terminal_font_family }}:size={{ .terminal_font_size }}
11
+ pad=10x10
12
+ term=xterm-256color
13
+
14
+ [colors]
15
+ alpha=0.95
16
+ background={{ trimPrefix "#" $tt.term.bg }}
17
+ foreground={{ trimPrefix "#" $tt.term.fg }}
18
+ regular0={{ trimPrefix "#" $tt.term.c0 }}
19
+ regular1={{ trimPrefix "#" $tt.term.c1 }}
20
+ regular2={{ trimPrefix "#" $tt.term.c2 }}
21
+ regular3={{ trimPrefix "#" $tt.term.c3 }}
22
+ regular4={{ trimPrefix "#" $tt.term.c4 }}
23
+ regular5={{ trimPrefix "#" $tt.term.c5 }}
24
+ regular6={{ trimPrefix "#" $tt.term.c6 }}
25
+ regular7={{ trimPrefix "#" $tt.term.c7 }}
26
+ bright0={{ trimPrefix "#" $tt.term.c8 }}
27
+ bright1={{ trimPrefix "#" $tt.term.c9 }}
28
+ bright2={{ trimPrefix "#" $tt.term.c10 }}
29
+ bright3={{ trimPrefix "#" $tt.term.c11 }}
30
+ bright4={{ trimPrefix "#" $tt.term.c12 }}
31
+ bright5={{ trimPrefix "#" $tt.term.c13 }}
32
+ bright6={{ trimPrefix "#" $tt.term.c14 }}
33
+ bright7={{ trimPrefix "#" $tt.term.c15 }}
@@ -0,0 +1,18 @@
1
+ {{- $t := index .themes (default "macos-monterey-dark" .theme) -}}
2
+ {{- if not $t -}}{{- $t = index .themes "macos-monterey-dark" -}}{{- end }}
3
+ [main]
4
+ font={{ .terminal_font_family }}:size={{ .terminal_font_size }}
5
+ terminal=ghostty
6
+ width=42
7
+ horizontal-pad=18
8
+ vertical-pad=14
9
+ inner-pad=10
10
+ layer=overlay
11
+
12
+ [colors]
13
+ background={{ trimPrefix "#" $t.term.bg }}ee
14
+ text={{ trimPrefix "#" $t.term.fg }}ff
15
+ match={{ trimPrefix "#" $t.term.c5 }}ff
16
+ selection={{ trimPrefix "#" $t.term.c0 }}ff
17
+ selection-text={{ trimPrefix "#" $t.term.fg }}ff
18
+ border={{ trimPrefix "#" $t.term.c4 }}ff