@sebastienrousseau/dotfiles 0.2.481 → 0.2.499

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 (317) hide show
  1. package/docs/ARCHITECTURE.md +29 -196
  2. package/docs/COMPLIANCE.md +10 -10
  3. package/docs/COPYRIGHT +3 -4
  4. package/docs/OPERATIONS.md +38 -65
  5. package/docs/PLAN.md +3 -3
  6. package/docs/PR_DESCRIPTION.md +85 -84
  7. package/docs/ROADMAP.md +11 -11
  8. package/docs/ROADMAP_legacy.md +556 -0
  9. package/docs/SECURITY_CHECKLIST.md +1 -1
  10. package/docs/TASK.md +4 -4
  11. package/docs/WALKTHROUGH.md +33 -152
  12. package/package.json +17 -5
  13. package/scripts/backup.sh +142 -0
  14. package/scripts/banner.sh +20 -0
  15. package/scripts/benchmark.sh +20 -0
  16. package/scripts/build.sh +41 -0
  17. package/scripts/clean.sh +31 -0
  18. package/scripts/compile.sh +54 -0
  19. package/scripts/copy.sh +108 -0
  20. package/scripts/{tools/detect-collisions.py → detect-collisions.py} +1 -1
  21. package/scripts/doctor.sh +79 -0
  22. package/scripts/dotfiles.sh +63 -0
  23. package/scripts/download.sh +35 -0
  24. package/scripts/help.sh +57 -0
  25. package/scripts/lock-configs.sh +57 -0
  26. package/scripts/package.sh +46 -0
  27. package/scripts/ssh.sh +55 -0
  28. package/scripts/teleport.sh +23 -0
  29. package/scripts/{tests/test-aliases.sh → test-aliases.sh} +3 -3
  30. package/scripts/test_smoke.sh +88 -0
  31. package/scripts/unpack.sh +28 -0
  32. package/scripts/{diagnostics/verify_state.sh → verify_state.sh} +21 -21
  33. package/templates/projects/go/README.md +0 -4
  34. package/templates/projects/node/README.md +0 -4
  35. package/templates/projects/python/README.md +0 -4
  36. package/templates/projects/python/pyproject.toml +0 -15
  37. package/CHANGELOG.md +0 -285
  38. package/LICENSE +0 -1283
  39. package/README.md +0 -315
  40. package/docs/ALIASES.md +0 -128
  41. package/docs/FEATURES.md +0 -166
  42. package/docs/FONTS.md +0 -147
  43. package/docs/INSTALL.md +0 -119
  44. package/docs/KEYS.md +0 -40
  45. package/docs/KEY_ROTATION.md +0 -219
  46. package/docs/LEGACY_ROADMAP.md +0 -142
  47. package/docs/NEOVIM_IDE_GUIDE.md +0 -52
  48. package/docs/README.md +0 -269
  49. package/docs/REPO_AUDIT.md +0 -23
  50. package/docs/SCREENSHOTS.md +0 -116
  51. package/docs/SECRETS.md +0 -76
  52. package/docs/SECURITY.md +0 -30
  53. package/docs/TESTING.md +0 -190
  54. package/docs/TOOLS.md +0 -146
  55. package/docs/TROUBLESHOOTING.md +0 -112
  56. package/docs/UTILS.md +0 -105
  57. package/docs/WSL2_NIX_TROUBLESHOOTING.md +0 -723
  58. package/docs/adr/ADR-001-ci-cd-pipeline.md +0 -101
  59. package/docs/adr/ADR-002-shell-performance.md +0 -121
  60. package/docs/adr/ADR-003-security-first.md +0 -140
  61. package/docs/adr/ADR-004-cli-architecture.md +0 -157
  62. package/docs/adr/ADR-005-chezmoi-choice.md +0 -89
  63. package/docs/adr/ADR-006-shell-selection.md +0 -115
  64. package/docs/adr/README.md +0 -33
  65. package/docs/themes/README.md +0 -20
  66. package/dot_config/aider/aider.conf.yml +0 -32
  67. package/dot_config/alacritty/alacritty.toml.tmpl +0 -483
  68. package/dot_config/ansible/ansible.cfg.tmpl +0 -11
  69. package/dot_config/atuin/config.toml +0 -23
  70. package/dot_config/bat/config +0 -8
  71. package/dot_config/brave-flags.conf.tmpl +0 -7
  72. package/dot_config/btop/btop.conf +0 -16
  73. package/dot_config/btop/themes/tokyonight.theme +0 -34
  74. package/dot_config/bun/bunfig.toml.tmpl +0 -33
  75. package/dot_config/claude/mcp_servers.json +0 -49
  76. package/dot_config/clippy.toml +0 -55
  77. package/dot_config/containers/containers.conf +0 -14
  78. package/dot_config/curl/dot_curlrc +0 -18
  79. package/dot_config/dlv/config.yml +0 -39
  80. package/dot_config/docker/config.json.tmpl +0 -15
  81. package/dot_config/dotfiles/boot/README.md +0 -11
  82. package/dot_config/dotfiles/grub/README.md +0 -11
  83. package/dot_config/dotfiles/lock/README.md +0 -11
  84. package/dot_config/dotfiles/versions.env.tmpl +0 -19
  85. package/dot_config/duf/duf.conf +0 -6
  86. package/dot_config/duti/defaults.duti +0 -5
  87. package/dot_config/emoji/emoji.txt +0 -34
  88. package/dot_config/fastfetch/config.jsonc +0 -28
  89. package/dot_config/firefox/user.js +0 -8
  90. package/dot_config/flatpak/flatpak.list +0 -4
  91. package/dot_config/fontconfig/fonts.conf.tmpl +0 -44
  92. package/dot_config/gem/gemrc +0 -9
  93. package/dot_config/gh/config.yml +0 -12
  94. package/dot_config/ghostty/config.tmpl +0 -661
  95. package/dot_config/git/attributes +0 -12
  96. package/dot_config/git/config.tmpl +0 -77
  97. package/dot_config/git/ignore +0 -27
  98. package/dot_config/gnupg/gpg-agent.conf.tmpl +0 -11
  99. package/dot_config/go/aliases.sh +0 -61
  100. package/dot_config/go/env.sh +0 -24
  101. package/dot_config/go/golangci.yml +0 -118
  102. package/dot_config/go/gopls.json +0 -30
  103. package/dot_config/goose/config.yaml +0 -29
  104. package/dot_config/gtk-3.0/gtk.css.tmpl +0 -305
  105. package/dot_config/gtk-3.0/settings.ini.tmpl +0 -66
  106. package/dot_config/gtk-4.0/gtk.css.tmpl +0 -309
  107. package/dot_config/gtk-4.0/settings.ini.tmpl +0 -21
  108. package/dot_config/htop/htoprc +0 -20
  109. package/dot_config/ice/README.md +0 -13
  110. package/dot_config/inputrc +0 -2
  111. package/dot_config/ipython/profile_default/ipython_config.py.tmpl +0 -5
  112. package/dot_config/just/justfile +0 -104
  113. package/dot_config/k9s/config.yaml.tmpl +0 -65
  114. package/dot_config/k9s/skins/catppuccin-mocha.yaml +0 -116
  115. package/dot_config/karabiner/karabiner.json +0 -14
  116. package/dot_config/kitty/kitty.conf.tmpl +0 -517
  117. package/dot_config/lazydocker/config.yml +0 -186
  118. package/dot_config/lazygit/config.yml +0 -23
  119. package/dot_config/lsd/config.yaml +0 -19
  120. package/dot_config/mas/masapps.txt +0 -5
  121. package/dot_config/minikube/config.json +0 -13
  122. package/dot_config/mise/config.toml +0 -41
  123. package/dot_config/mongosh/mongoshrc.js +0 -67
  124. package/dot_config/mycli/myclirc +0 -67
  125. package/dot_config/nano/nanorc +0 -28
  126. package/dot_config/ncdu/config +0 -12
  127. package/dot_config/nvim/init.lua +0 -4
  128. package/dot_config/nvim/lazy-lock.json +0 -27
  129. package/dot_config/nvim/lua/config/autocmds.lua +0 -63
  130. package/dot_config/nvim/lua/config/keymaps.lua +0 -87
  131. package/dot_config/nvim/lua/config/lazy.lua +0 -34
  132. package/dot_config/nvim/lua/config/options.lua +0 -48
  133. package/dot_config/nvim/lua/plugins/coding.lua +0 -234
  134. package/dot_config/nvim/lua/plugins/dap.lua +0 -201
  135. package/dot_config/nvim/lua/plugins/editor.lua +0 -59
  136. package/dot_config/nvim/lua/plugins/git.lua +0 -9
  137. package/dot_config/nvim/lua/plugins/lsp.lua +0 -221
  138. package/dot_config/nvim/lua/plugins/markdown.lua +0 -17
  139. package/dot_config/nvim/lua/plugins/rust.lua +0 -33
  140. package/dot_config/nvim/lua/plugins/sessions.lua +0 -32
  141. package/dot_config/nvim/lua/plugins/ui.lua +0 -537
  142. package/dot_config/nvim/snippets/all.lua +0 -9
  143. package/dot_config/nvim/snippets/python.lua +0 -16
  144. package/dot_config/pip/pip.conf.tmpl +0 -32
  145. package/dot_config/pypoetry/config.toml.tmpl +0 -6
  146. package/dot_config/pyrightconfig.json.tmpl +0 -5
  147. package/dot_config/raycast/README.md +0 -13
  148. package/dot_config/redis/redisclirc +0 -41
  149. package/dot_config/shell/00-container-detect.sh +0 -53
  150. package/dot_config/shell/00-core-paths.sh.tmpl +0 -95
  151. package/dot_config/shell/05-core-safety.sh.tmpl +0 -13
  152. package/dot_config/shell/40-ls-colors.sh.tmpl +0 -31
  153. package/dot_config/shell/50-logic-functions.sh.tmpl +0 -10
  154. package/dot_config/shell/90-theme-switch.sh +0 -70
  155. package/dot_config/shell/90-ux-aliases.sh.tmpl +0 -35
  156. package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +0 -23
  157. package/dot_config/shell/Brewfile +0 -207
  158. package/dot_config/shell/Brewfile.cask +0 -92
  159. package/dot_config/shell/Brewfile.cli +0 -119
  160. package/dot_config/shell/README.md +0 -267
  161. package/dot_config/shell/custom/context_suggest.zsh +0 -68
  162. package/dot_config/shell/custom/error_analysis.zsh +0 -45
  163. package/dot_config/sops/dot_sops.yaml +0 -23
  164. package/dot_config/starship.toml.tmpl +0 -124
  165. package/dot_config/task/Taskfile.yml +0 -86
  166. package/dot_config/tflint/tflint.hcl.tmpl +0 -9
  167. package/dot_config/tmux/tmux.conf.tmpl +0 -181
  168. package/dot_config/topgrade/topgrade.toml.tmpl +0 -42
  169. package/dot_config/vscode/extensions.txt +0 -11
  170. package/dot_config/vscode/settings.json.tmpl +0 -123
  171. package/dot_config/waybar/style.css +0 -8
  172. package/dot_config/wezterm/wezterm.lua.tmpl +0 -236
  173. package/dot_config/wget/wgetrc +0 -12
  174. package/dot_config/yarn/yarnrc.yml.tmpl +0 -36
  175. package/dot_config/yazi/yazi.toml +0 -40
  176. package/dot_config/zellij/config.kdl +0 -79
  177. package/dot_config/zsh/dot_zprofile +0 -13
  178. package/dot_config/zsh/dot_zshenv +0 -6
  179. package/dot_config/zsh/dot_zshrc.tmpl +0 -199
  180. package/dot_config/zsh/rc.d/05-ssh-agent.zsh +0 -5
  181. package/dot_config/zsh/rc.d/10-env.zsh.tmpl +0 -28
  182. package/dot_config/zsh/rc.d/20-zinit.zsh.tmpl +0 -22
  183. package/dot_config/zsh/rc.d/30-options.zsh.tmpl +0 -123
  184. package/dot_config/zsh/rc.d/40-bell.zsh.tmpl +0 -20
  185. package/dot_config/zsh/rc.d/50-login-fortune.zsh.tmpl +0 -9
  186. package/dot_local/bin/executable_ai_core +0 -130
  187. package/dot_local/bin/executable_b64 +0 -59
  188. package/dot_local/bin/executable_dot +0 -178
  189. package/dot_local/bin/executable_dot_completion +0 -55
  190. package/dot_local/bin/executable_epoch +0 -62
  191. package/dot_local/bin/executable_extract +0 -108
  192. package/dot_local/bin/executable_git-ai-commit +0 -160
  193. package/dot_local/bin/executable_git-ai-diff +0 -154
  194. package/dot_local/bin/executable_hash +0 -123
  195. package/dot_local/bin/executable_hex +0 -79
  196. package/dot_local/bin/executable_ip +0 -37
  197. package/dot_local/bin/executable_jsonv +0 -54
  198. package/dot_local/bin/executable_jwt +0 -78
  199. package/dot_local/bin/executable_kill-port +0 -59
  200. package/dot_local/bin/executable_lorem +0 -103
  201. package/dot_local/bin/executable_regex +0 -96
  202. package/dot_local/bin/executable_tmux-sessionizer +0 -187
  203. package/dot_local/bin/executable_tour +0 -137
  204. package/dot_local/bin/executable_update +0 -108
  205. package/dot_local/bin/executable_uuid +0 -57
  206. package/dot_local/bin/executable_yamlv +0 -39
  207. package/dot_local/bin/executable_zig-install +0 -89
  208. package/dot_local/bin/voice_ops +0 -7
  209. package/dot_local/share/bash-completion/completions/dot +0 -54
  210. package/dot_local/share/zsh/completions/.keep +0 -0
  211. package/install.sh +0 -255
  212. package/scripts/ci/validate-ci-config.sh +0 -222
  213. package/scripts/demo/record.sh +0 -41
  214. package/scripts/diagnostics/benchmark.sh +0 -201
  215. package/scripts/diagnostics/doctor.sh +0 -115
  216. package/scripts/diagnostics/drift-dashboard.sh +0 -26
  217. package/scripts/diagnostics/health.sh +0 -356
  218. package/scripts/diagnostics/history-analysis.sh +0 -77
  219. package/scripts/diagnostics/security-score.sh +0 -392
  220. package/scripts/dot/commands/appearance.sh +0 -63
  221. package/scripts/dot/commands/core.sh +0 -130
  222. package/scripts/dot/commands/diagnostics.sh +0 -100
  223. package/scripts/dot/commands/meta.sh +0 -117
  224. package/scripts/dot/commands/restore.sh +0 -209
  225. package/scripts/dot/commands/secrets.sh +0 -81
  226. package/scripts/dot/commands/security.sh +0 -73
  227. package/scripts/dot/commands/tools.sh +0 -228
  228. package/scripts/dot/lib/utils.sh +0 -72
  229. package/scripts/fonts/install-nerd-fonts.sh +0 -59
  230. package/scripts/fonts/patch-fonts.sh +0 -34
  231. package/scripts/ops/chezmoi-apply.sh +0 -42
  232. package/scripts/ops/chezmoi-diff.sh +0 -14
  233. package/scripts/ops/chezmoi-remove.sh +0 -43
  234. package/scripts/ops/chezmoi-update.sh +0 -16
  235. package/scripts/ops/heal.sh +0 -466
  236. package/scripts/ops/health-check.sh +0 -380
  237. package/scripts/ops/rollback.sh +0 -531
  238. package/scripts/ops/teleport.sh +0 -32
  239. package/scripts/secrets/age-init.sh +0 -69
  240. package/scripts/secrets/create-secrets-file.sh +0 -44
  241. package/scripts/secrets/encrypt-ssh-key.sh +0 -42
  242. package/scripts/security/backup.sh +0 -17
  243. package/scripts/security/dns-doh.sh +0 -29
  244. package/scripts/security/encryption-check.sh +0 -39
  245. package/scripts/security/enforce-policies.sh +0 -339
  246. package/scripts/security/firewall.sh +0 -34
  247. package/scripts/security/lock-configs.sh +0 -57
  248. package/scripts/security/lock-screen.sh +0 -33
  249. package/scripts/security/manage-secrets.sh +0 -415
  250. package/scripts/security/telemetry-kill.sh +0 -28
  251. package/scripts/security/usb-safety.sh +0 -29
  252. package/scripts/tests/README.md +0 -241
  253. package/scripts/tests/benchmark.sh +0 -91
  254. package/scripts/tests/framework/assertions.sh +0 -283
  255. package/scripts/tests/framework/mocks.sh +0 -201
  256. package/scripts/tests/framework/test_runner.sh +0 -189
  257. package/scripts/tests/integration/test_install.sh +0 -237
  258. package/scripts/tests/performance/benchmark_runner.sh +0 -156
  259. package/scripts/tests/performance/regression_check.sh +0 -73
  260. package/scripts/tests/performance/stress_test.sh +0 -65
  261. package/scripts/tests/test-docker.sh +0 -48
  262. package/scripts/tests/unit/test_ai_aliases.sh +0 -158
  263. package/scripts/tests/unit/test_ai_cli_checks.sh +0 -47
  264. package/scripts/tests/unit/test_backup.sh +0 -227
  265. package/scripts/tests/unit/test_case_functions.sh +0 -238
  266. package/scripts/tests/unit/test_cd_aliases.sh +0 -367
  267. package/scripts/tests/unit/test_dot_cli.sh +0 -217
  268. package/scripts/tests/unit/test_encode64.sh +0 -67
  269. package/scripts/tests/unit/test_environment.sh +0 -78
  270. package/scripts/tests/unit/test_extract.sh +0 -163
  271. package/scripts/tests/unit/test_framework_edge_cases.sh +0 -113
  272. package/scripts/tests/unit/test_genpass.sh +0 -298
  273. package/scripts/tests/unit/test_install_edge_cases.sh +0 -167
  274. package/scripts/tests/unit/test_installers.sh +0 -172
  275. package/scripts/tests/unit/test_keygen.sh +0 -68
  276. package/scripts/tests/unit/test_logging.sh +0 -96
  277. package/scripts/tests/unit/test_os_detection_comprehensive.sh +0 -388
  278. package/scripts/tests/unit/test_package_managers_comprehensive.sh +0 -321
  279. package/scripts/tests/unit/test_prependpath.sh +0 -66
  280. package/scripts/tests/unit/test_prependpath_refactored.sh +0 -89
  281. package/scripts/tests/unit/test_rd.sh +0 -230
  282. package/scripts/tests/unit/test_security_fixes.sh +0 -130
  283. package/scripts/tests/unit/test_security_scripts.sh +0 -87
  284. package/scripts/tests/unit/test_template_validation.sh +0 -238
  285. package/scripts/tests/unit/test_utility_functions.sh +0 -144
  286. package/scripts/tests/unit/test_wave1_alias_split.sh +0 -132
  287. package/scripts/tests/unit/test_wave1_ci_pinning.sh +0 -61
  288. package/scripts/tests/unit/test_wave1_gitleaks_config.sh +0 -52
  289. package/scripts/tests/unit/test_wave1_heal_fixes.sh +0 -97
  290. package/scripts/tests/unit/test_wave1_install_gpg.sh +0 -35
  291. package/scripts/tests/unit/test_wave1_zshenv_path.sh +0 -89
  292. package/scripts/tests/unit/test_wave1_zshrc_lazy_hook.sh +0 -115
  293. package/scripts/tests/unit/test_wave2_dot_new_guard.sh +0 -75
  294. package/scripts/tests/unit/test_zipf.sh +0 -76
  295. package/scripts/theme/apply-gnome-theme.sh +0 -297
  296. package/scripts/theme/install-boot-logo.sh +0 -61
  297. package/scripts/theme/install-catppuccin-themes.sh +0 -346
  298. package/scripts/theme/install-cursors.sh +0 -24
  299. package/scripts/theme/install-file-icons.sh +0 -25
  300. package/scripts/theme/install-grub-theme.sh +0 -51
  301. package/scripts/theme/install-lock-icon.sh +0 -29
  302. package/scripts/theme/switch.sh +0 -250
  303. package/scripts/theme/wallpaper-rotate.sh +0 -82
  304. package/scripts/theme/wallpaper-sync.sh +0 -42
  305. package/scripts/tools/cmatrix.sh +0 -20
  306. package/scripts/tools/emoji-picker.sh +0 -45
  307. package/scripts/tools/figlet-banner.sh +0 -17
  308. package/scripts/tools/log-rotate.sh +0 -29
  309. package/scripts/tools/lolcat-wrap.sh +0 -18
  310. package/scripts/tools/pipes.sh +0 -47
  311. package/scripts/tuning/linux.sh +0 -175
  312. package/scripts/tuning/macos.sh +0 -46
  313. package/templates/projects/molecule/README.md +0 -7
  314. package/templates/projects/molecule/converge.yml +0 -7
  315. package/templates/projects/molecule/molecule.yml +0 -16
  316. package/templates/projects/packer/README.md +0 -15
  317. package/templates/projects/packer/main.pkr.hcl +0 -15
@@ -1,149 +1,150 @@
1
- # Release notes — v0.2.480
1
+ # PR Title
2
+ feat(core): Rel v0.2.471 - Universal Config, Security & Performance
2
3
 
3
- ## Release overview
4
+ # PR Description
4
5
 
5
- This release transforms the dotfiles into a high-performance, cross-platform system managed by **chezmoi**.
6
+ ## 🚀 v0.2.471 Release: Universal Configuration
6
7
 
7
- ### Architecture
8
- v0.2.480 is a portable **shell distribution** managed by `chezmoi` (source of truth in `~/.dotfiles`).
8
+ This release transforms the dotfiles into a high-performance, universally compatible system managed by **chezmoi**.
9
9
 
10
- - **XDG-first**: Configs strictly mapped to `~/.config/` (no `~/.foo` sprawl).
11
- - **Single entrypoint**: `dot_zshenv` acts as an XDG bootloader for instant environment setup.
12
- - **Modern toolchain**: Replaces classic Unix tools with high-performance Rust alternatives:
10
+ ### 🏗️ Technical Architecture
11
+ v0.2.471 is not just "dotfiles" but a portable **Shell Distribution** managed by `chezmoi` ("source of truth" in `~/.local/share/chezmoi`).
12
+
13
+ - **XDG-First**: Configs strictly mapped to `~/.config/` (No `~/.foo` sprawl).
14
+ - **Single Entrypoint**: `dot_zshenv` acts as an XDG bootloader for instant environment setup.
15
+ - **Modern Toolchain**: Replaces classic Unix tools with high-performance Rust alternatives:
13
16
  - `ls` → `eza`
14
17
  - `cat` → `bat`
15
18
  - `grep` → `ripgrep`
16
- - `cd` → `zoxide` (smart directory jumping)
17
- - `history` → `atuin` (syncable, encrypted SQLite history)
18
- - **Predictive shell**:
19
- - **AI strategy**: Context-aware autosuggestions coupled with optional local LLM integration (`ai_core`).
20
- - **Error analysis**: Wrappers analyze command failures through `gh copilot` or local models.
21
-
22
- ### Non-goals
23
- - **Not a framework**: This is a curated distribution, not a plugin manager like Oh-My-Zsh.
24
- - **Not POSIX-pure**: Prioritizes modern Zsh/Rust features over strict POSIX compliance.
25
- - **Not minimal**: Optimizes for functionality and speed, not line-count minimalism.
26
-
27
- ### Security
28
- - **Hardened by default**: Scripts run with `set -euo pipefail` to fail fast on errors.
29
- - **Supply chain safety**:
30
- - **Pinned install**: Installation commands pin to the specific release tag (`v0.2.480`) to prevent drift.
31
- - **Zero-trust**: No implicit reliance on `main` branch code in production.
32
- - **Threat model**: This project assumes a **trusted local machine** and focuses on supply-chain (pinned versions) and configuration safety (immutable history).
33
- - **Audit logging**: Dotfiles logs all `chezmoi` mutations to `~/.local/share/dotfiles.log` for day-2 operations review.
34
-
35
- ### Changes
19
+ - `cd` → `zoxide` (Smart Directory Jumping)
20
+ - `history` → `atuin` (Syncable, Encrypted SQlite history)
21
+ - **Predictive Shell**:
22
+ - **AI Strategy**: Context-aware autosuggestions coupled with optional local LLM integration (`ai_core`).
23
+ - **Error Analysis**: Smart wrappers to analyze command failures via `gh copilot` or local models.
24
+
25
+ ### 🚫 Non-Goals
26
+ - **Not a Framework**: This is a curated distribution, not a plugin manager like Oh-My-Zsh.
27
+ - **Not POSIX-Pure**: Prioritizes modern Zsh/Rust features over strict POSIX compliance.
28
+ - **Not Minimal**: Optimizes for functionality and speed, not line-count minimalism.
29
+
30
+ ### 🛡️ Security Posture
31
+ - **Hardened by Default**: Scripts run with `set -euo pipefail` to fail fast on errors.
32
+ - **Supply Chain Safety**:
33
+ - **Pinned Install**: Installation commands are pinned to the specific release tag (`v0.2.471`) to prevent drift.
34
+ - **Zero-Trust**: No implicit reliance on `main` branch code in production.
35
+ - **Threat Model**: This project assumes a **trusted local machine** and focuses on supply-chain (pinned versions) and configuration safety (immutable history).
36
+ - **Audit Logging**: All `chezmoi` mutations are logged to `~/.dotfiles_audit.log` for day-2 operations review.
37
+
38
+ ### 🛠️ Changes
36
39
  - **Migrated**:
37
40
  - Shell: `~/.zshrc` now sources generated templates from `~/.config/shell`.
38
- - Neovim: `~/.config/nvim` fully managed through Lua/Lazy.nvim.
39
- - Tmux: Modular config consolidated to `~/.dotfiles/dot_tmux.conf`.
41
+ - Shell: `~/.zshrc` now sources generated templates from `~/.config/shell`.
42
+ - Neovim: `~/.config/nvim` fully managed via Lua/Lazy.nvim.
43
+ - Tmux: Modular config consolidated to `~/.local/share/chezmoi/dot_tmux.conf`.
40
44
  - **Packaging**:
41
45
  - `Brewfile` (macOS) and `apt-get` (Linux) handled automatically.
42
46
  - **Structural**:
43
47
  - **Renamed**: `dot_config/dotfiles` → `dot_config/shell` for semantic clarity.
44
48
  - **Moved**: `bin/` → `dot_local/bin/` for automatic path integration.
45
- - **Separated**: Install scripts split by OS (Darwin/Linux) for cleaner logic.
46
- - **Layered architecture**: Refactored shell config into explicit layers:
49
+ - **Segregated**: Install scripts split by OS (Darwin/Linux) for cleaner logic.
50
+ - **Layered Architecture**: Refactored shell config into explicit layers:
47
51
  - `00-core`: Safety/Paths
48
52
  - `50-logic`: Functions/Toolchain
49
53
  - `90-ux`: Aliases/Theme
50
- - **Trust and reproducibility**:
51
- - **Pinned formulae**: Generated `Brewfile.lock.json` for strictly reproducible macOS builds.
52
- - **Binary pinning**: `install.sh` now enforces specific version tags for initial bootstrap.
53
- ### Quality
54
- - **Conflict resolution**: Detected and resolved **46 namespace collisions** across all alias modules (Git, Go, Archives, etc.) to ensure zero overlap.
55
- - **Git safety**: Renamed colliding Go aliases (for example, `gr` -> `gor`) to protect core Git commands.
54
+ - **Trust & Reproducibility**:
55
+ - **Pinned Formulae**: Generated `Brewfile.lock.json` for strictly reproducible macOS builds.
56
+ - **Binary Pinning**: `install.sh` now enforces specific version tags for initial bootstrap.
57
+ ### 🔒 Security & Quality
58
+ - **Conflict Resolution**: Detected and resolved **46 namespace collisions** across all alias modules (Git, Go, Archives, etc.) to ensure zero overlap.
59
+ - **Git Safety**: Renamed colliding Go aliases (e.g., `gr` -> `gor`) to protect core Git commands.
56
60
  - **Modernization**: Merged `list` into `modern` for a cohesive Rust-based toolchain experience (`eza`, `bat`).
57
61
  - **Standardization**: Removed duplicate logging functions in favor of a shared utility.
58
- - **Documentation**: All 30+ component READMEs now reflect current functionality.
62
+ - **Documentation**: All 30+ component READMEs are now 100% accurate and verified.
59
63
 
60
- ### Toolchain
64
+ ### 🛠️ Start-of-Art Toolchain
61
65
  - **Kubernetes**: Added `kubectl`, `helm`, `k9s` aliases.
62
66
  - **IaC**: Added `terraform`, `opentofu`, `ansible`.
63
67
  - **Languages**: Added ecosystem support for `go`, `yarn`, `uv` (modern Python).
64
- - **AI integration**: Added wrappers for `gh copilot`, `fabric`, and local LLMs.
65
- - **Smart help**: Added `dothelp` to search and index custom functions.
68
+ - **AI Integration**: Added wrappers for `gh copilot`, `fabric`, and local LLMs.
69
+ - **Smart Help**: Introduced `dothelp` to strictly search and index custom functions.
66
70
 
67
- ### Testing
71
+ ### 🤖 CI/CD & Testing
68
72
 
69
- - **Automated testing**
70
- - Docker CI (`ci-docker.yml`) runs on Ubuntu/Fedora/Arch.
71
- - Integration tests validate alias syntax (`test-aliases.sh`).
73
+ - **Automated Testing**
74
+ - Docker CI (`ci-docker.yml`) running on Ubuntu/Fedora/Arch.
75
+ - Integration tests for alias syntax (`test-aliases.sh`).
72
76
 
73
- - **Enterprise core and security (the trust layer)**
74
- - **SLSA and SBOM**: `security-release.yml` generates SPDX SBOMs and SLSA Level 3 Provenance.
77
+ - **Enterprise Core & Security (The Trust Layer)**
78
+ - **SLSA & SBOM**: `security-release.yml` generates SPDX SBOMs and SLSA Level 3 Provenance.
75
79
  - **Signing**: `enable-signing` wizard for GPG/SSH git signing.
76
- - **Immutability**: `lock-configs` / `unlock-configs` protect critical dotfiles (`chflags`/`chattr`).
80
+ - **Immutability**: `lock-configs` / `unlock-configs` to protect critical dotfiles (`chflags`/`chattr`).
77
81
 
78
- - **Legal and licensing**
82
+ - **Legal & Licensing**
79
83
  - **Compliance**: `scan-licenses` (FOSSology/Trivy), `check-cla` (GitHub checks).
80
84
  - **Attribution**: `add-headers` automation and `gen-notice` generation.
81
85
 
82
- - **Self-healing and diagnostics**
83
- - **Health**: `dot doctor` diagnoses environment (dependencies, XDG, paths).
86
+ - **Self-Healing & Diagnostics**
87
+ - **Health**: `dot doctor` script diagnoses environment (Dependencies, XDG, Paths).
84
88
  - **Repair**: `dot heal` / `dot drift` aliases for auto-repair and drift detection.
85
89
 
86
- - **Regulatory compliance**
90
+ - **Regulatory Compliance**
87
91
  - **Documentation**: `COMPLIANCE.md` maps features to **SOC2 Type II** and **ISO 27001**.
88
92
  - **Privacy**: `privacy-mode` alias disables CLI telemetry for 7+ frameworks.
89
93
 
90
- - **macOS deep integration**
91
- - **Hardening**: `defaults` script hardens screensaver, firewall, and Finder settings.
92
- - **Optimization**: Configures Safari for development, removes Dock clutter.
94
+ - **macOS Deep Integration**
95
+ - **Hardening**: `defaults` script secures screensaver, firewall, and finder settings.
96
+ - **Optimization**: Configures Safari for dev, removes Dock clutter.
93
97
 
94
- - **Font typography**
98
+ - **Font Typography**
95
99
  - **Fonts**: Auto-installs `JetBrainsMono Nerd Font` and `Symbols Nerd Font`.
96
100
  - **Rendering**: Linux `fontconfig` XML for sub-pixel antialiasing.
97
101
 
98
- - **Phase 58: Editor unification** (implemented)
102
+ - **Phase 58: Editor Unification (The Grand Vim)** (Implemented)
99
103
  - **Neovim IDE**: Full VS Code feature parity (Noice, Lualine, Gitsigns, Indent-Blankline).
100
- - **Language support**: Optimized for Rust (Rustaceanvim) and Python (BasedPyright/Ruff).
104
+ - **Language Support**: Optimized for Rust (Rustaceanvim) and Python (BasedPyright/Ruff).
101
105
  - **Performance**: Lazy-loading architecture with `<30ms` startup.
102
- - **CI/CD fixes**: Resolved CodeQL alerts (removed legacy Node.js) and fixed Docker builds.
106
+ - **CI/CD Fixes**: Resolved CodeQL alerts (removed legacy Node.js) and fixed Docker builds.
103
107
 
104
- - **OS bundling and compliance**
108
+ - **OS Bundling & Compliance**
105
109
  - **Packaging**: `scripts/package.sh` generates versioned distribution tarballs.
106
110
  - **Enterprise**: `/etc/dotfiles/defaults.d` hooks for site-local config overrides.
107
111
  - **Standards**: Strict **XDG Base Directory** enforcement in `paths.sh`.
108
112
 
109
- - **The universal installer (zero-dep)**
110
- - **Bootstrap**: `install.sh` runs through `curl | sh` with no dependencies.
111
- - **Teleport**: `dot teleport user@host` deploys configs ephemerally through SSH.
113
+ - **The Universal Installer (Zero-Dep)**
114
+ - **Bootstrap**: `install.sh` running via `curl | sh` with no dependencies.
115
+ - **Teleport**: `dot teleport user@host` to ephemerally deploy configs via SSH.
112
116
 
113
- ### Verification
117
+ ### 🧪 Verification
114
118
  - **Performance**: Benchmark script `scripts/benchmark.sh` confirms <20ms startup.
115
- - **Integration**: `test-aliases.sh` validates syntax of all 32 alias modules.
116
- - **Security**: **Zero critical vulnerabilities** (CodeQL and Dependabot clean).
117
- - **Functionality**: Local migration tested on macOS, Linux, and WSL.
119
+ - **Integration**: `test-aliases.sh` verified syntax of all 32 alias modules.
120
+ - **Security**: **Zero Critical Vulnerabilities** (CodeQL & Dependabot clean).
121
+ - **Functionality**: Local migration verified on macOS, Linux, and WSL.
118
122
 
119
123
 
120
- ### Install and migrate
124
+ ### 📦 Installation & Migration
121
125
 
122
- #### Option A: Fresh install (new machines)
123
- To set up a new machine, run the universal installer:
126
+ #### Option A: Fresh Install (New Machines)
127
+ If you are setting up a new machine, simply run the universal installer:
124
128
  ```bash
125
- sh -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/v0.2.480/install.sh)"
129
+ sh -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/v0.2.471/install.sh)"
126
130
  ```
127
131
 
128
- #### Option B: Migration (upgrade from earlier versions)
129
-
130
- > [!IMPORTANT]
131
- > This release changes the architecture from direct symlinks to `chezmoi` templates. Back up your configuration first.
132
-
133
- Existing `chezmoi` users can run `chezmoi apply` to upgrade, but the full installer works better for major version jumps.
132
+ #### Option B: Migration (Upgrade from `master` / v1)
133
+ ⚠️ **Important**: This release changes the architecture from direct symlinks to `chezmoi` templates. Functional backups are recommended.
134
+ **Compatibility Note**: Existing `chezmoi` users can simply run `chezmoi apply` to upgrade, but the full installer is recommended for major version jumps.
134
135
 
135
- 1. **Back up legacy configs**:
136
+ 1. **Backup Legacy Configs**:
136
137
  ```bash
137
138
  mv ~/.zshrc ~/.zshrc.bak
138
139
  mv ~/.config/nvim ~/.config/nvim.bak
139
140
  ```
140
- 2. **Run the installer**:
141
+ 2. **Run Installer**:
141
142
  ```bash
142
- sh -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/v0.2.480/install.sh)"
143
+ sh -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/v0.2.471/install.sh)"
143
144
  ```
144
- 3. **Resolve conflicts**:
145
- - If `chezmoi` prompts you to overwrite files (for example, `.zshrc`), select **overwrite** (or diff to check) because this release uses a new sourcing strategy.
146
- 4. **Restart shell**:
145
+ 3. **Resolve Conflicts**:
146
+ - If prompted by `chezmoi` to overwrite files (e.g., `.zshrc`), select **overwrite** (or diff to check) as this release uses a new sourcing strategy.
147
+ 4. **Restart Shell**:
147
148
  ```bash
148
149
  exec zsh
149
150
  ```
package/docs/ROADMAP.md CHANGED
@@ -1,10 +1,10 @@
1
- # Roadmap
1
+ # Product Roadmap: The Trusted Shell Platform
2
2
 
3
3
  This roadmap steers the project from a "feature-rich dotfiles repo" to an **Enterprise-Grade Shell Distribution**. The structure is organized by strategic pillars (**Trust**, **Predictability**, **Observability**) rather than linear phases, though the original 100-Phase vision is preserved within these categories.
4
4
 
5
5
  ---
6
6
 
7
- ## Reproducibility
7
+ ## 🏗️ Pillar 1: Reproducibility & Determinism (Highest ROI)
8
8
  **Goal:** "Reproducible Shell Environments".
9
9
  > *This distribution aims for deterministic rebuilds: the same tag yields the same environment across machines.*
10
10
 
@@ -16,7 +16,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
16
16
  - [ ] **Container Native (Phase 28)**: Base Docker image for devcontainers.
17
17
  - [ ] **Terraform Provider (Phase 28)**: Custom provider to provision dotfiles state.
18
18
 
19
- ## Observability
19
+ ## 👁️ Pillar 2: First-Class Observability
20
20
  **Goal:** "Observable Shell Lifecycle".
21
21
  > *The shell is instrumented: failures, timing, and lifecycle events are visible by design.*
22
22
 
@@ -27,7 +27,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
27
27
  - [ ] **System Status (Phase 39)**: Real-time resource usage, battery, and network stats.
28
28
  - [ ] **Update Manager (Phase 39)**: Visual interface for tool updates and migration.
29
29
 
30
- ## Secrets
30
+ ## 🔐 Pillar 3: Secrets & Trust Boundaries
31
31
  **Goal:** "Explicit Secrets Model".
32
32
  > *Secrets are never committed; sensitive state is encrypted or host-local by default.*
33
33
 
@@ -38,7 +38,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
38
38
  - [ ] **Hardware Enclaves (Phase 29)**: Support for Secure Enclave/TPM key storage.
39
39
  - [ ] **OIDC Auth (Phase 29)**: Keyless authentication via GitHub OIDC.
40
40
 
41
- ## Toolchain
41
+ ## 🧱 Pillar 4: Layered Architecture & Toolchain
42
42
  **Goal:** "Composable Shell Layers".
43
43
  > *The distribution is layered: core safety is mandatory, advanced features are opt-in.*
44
44
 
@@ -50,7 +50,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
50
50
  - [ ] **Wasm Target**: WebAssembly toolchain setup.
51
51
  - [ ] **Embedded Dev**: Presets for Arduino/ESP32.
52
52
 
53
- ## Opt-in features
53
+ ## ⚙️ Pillar 5: Controlled Opt-In Features
54
54
  **Goal:** "Explicit Feature Flags".
55
55
  > *Advanced features are gated behind explicit opt-in flags.*
56
56
 
@@ -61,7 +61,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
61
61
  - [ ] **Dependency Solving**: Semantic versioning for modules.
62
62
  - [ ] **Verified Publishers**: Cryptographic signing for "Official" modules.
63
63
 
64
- ## Safety
64
+ ## 🛡️ Pillar 6: Threat Model & Safety
65
65
  **Goal:** "Documented Threat Model".
66
66
  > *Security decisions are driven by an explicit, documented threat model.*
67
67
 
@@ -73,7 +73,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
73
73
  - [ ] **PAM Modules**: Custom auth modules.
74
74
  - [ ] **Auditd Rules**: Pre-configured audit rules.
75
75
 
76
- ## Validation
76
+ ## 🧪 Pillar 7: Self-Test & Validation
77
77
  **Goal:** "Self-Validating Environment".
78
78
  > *The environment can validate itself after installation or update.*
79
79
 
@@ -84,7 +84,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
84
84
  - [ ] **Network Simulation**: Simulate high latency/packet loss.
85
85
  - [ ] **Permission Fuzzing**: Verify strict umask behavior.
86
86
 
87
- ## Distribution
87
+ ## 📦 Pillar 8: Distribution Guarantees & Platform Support
88
88
  **Goal:** "Supported Platforms Matrix".
89
89
  > *Only listed platforms are guaranteed to work; others are best-effort.*
90
90
 
@@ -99,7 +99,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
99
99
 
100
100
  ---
101
101
 
102
- ## Future
102
+ ## 🔮 Future Horizons (Legacy Roadmap)
103
103
 
104
104
  ### Domain-Specific Environments
105
105
  - [ ] **Data Science (Phase 38)**: Conda/Mamba, GPU Config, Jupyter.
@@ -125,7 +125,7 @@ This roadmap steers the project from a "feature-rich dotfiles repo" to an **Ente
125
125
 
126
126
  ---
127
127
 
128
- ## Completed
128
+ ## 📜 Completed Milestones
129
129
 
130
130
  ### Core Foundations
131
131
  - [x] **Universal Config (Chezmoi) (Phase 1)**