@sebastienrousseau/dotfiles 0.2.520 → 0.2.521

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 (323) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/LICENSE-APACHE +190 -0
  3. package/LICENSE-MIT +21 -0
  4. package/README.md +43 -37
  5. package/install.sh +76 -10
  6. package/package.json +7 -7
  7. package/tools/README.md +49 -0
  8. package/tools/ci/install-chezmoi-verified.sh +68 -0
  9. package/docs/.vitepress/reports/localization-readability-audit.md +0 -73
  10. package/docs/AI.md +0 -179
  11. package/docs/ARCHITECTURE.md +0 -117
  12. package/docs/CNAME +0 -1
  13. package/docs/CONFIG_STRATEGY.md +0 -124
  14. package/docs/COPYRIGHT +0 -7
  15. package/docs/ECOSYSTEM.md +0 -220
  16. package/docs/GOLD-STANDARD-AUDIT.md +0 -352
  17. package/docs/GOVERNANCE.md +0 -98
  18. package/docs/MAINTAINERS.md +0 -41
  19. package/docs/MINIMUM-TOOLCHAIN.md +0 -100
  20. package/docs/NAMING_CONVENTIONS.md +0 -102
  21. package/docs/OPENCODE.md +0 -127
  22. package/docs/README.md +0 -84
  23. package/docs/STRUCTURE.md +0 -102
  24. package/docs/adr/ADR-001-ci-cd-pipeline.md +0 -118
  25. package/docs/adr/ADR-002-shell-performance.md +0 -130
  26. package/docs/adr/ADR-003-security-first.md +0 -158
  27. package/docs/adr/ADR-004-cli-architecture.md +0 -171
  28. package/docs/adr/ADR-005-chezmoi-choice.md +0 -99
  29. package/docs/adr/ADR-006-shell-selection.md +0 -124
  30. package/docs/adr/ADR-007-multi-shell-parity.md +0 -62
  31. package/docs/adr/ADR-008-alias-system-architecture.md +0 -95
  32. package/docs/adr/ADR-009-wallpaper-driven-theming.md +0 -131
  33. package/docs/adr/ADR-010-starship-transient-prompt.md +0 -144
  34. package/docs/adr/ADR-011-nushell-tier3-keep.md +0 -144
  35. package/docs/adr/ADR-012-ai-fleet-local-proxy.md +0 -79
  36. package/docs/adr/README.md +0 -40
  37. package/docs/architecture/AI_COST_OPTIMIZATION.md +0 -144
  38. package/docs/architecture/ARCHITECTURE.md +0 -20
  39. package/docs/architecture/INTEROP.md +0 -44
  40. package/docs/architecture/REPO_LAYOUT.md +0 -241
  41. package/docs/architecture/WALKTHROUGH.md +0 -86
  42. package/docs/architecture/fleet-deployment.md +0 -77
  43. package/docs/archive/EUXIS_2026_REVIEW.md +0 -127
  44. package/docs/archive/LEGACY_ROADMAP.md +0 -6
  45. package/docs/archive/MILESTONE_v0.2.493.md +0 -47
  46. package/docs/archive/PLAN.md +0 -199
  47. package/docs/archive/REPO_AUDIT.md +0 -31
  48. package/docs/articles/.pages +0 -6
  49. package/docs/articles/2026-07-05-custom-mkdocs-material-dark-theme.md +0 -216
  50. package/docs/articles/2026-07-05-fish-startup-abbr.md +0 -153
  51. package/docs/articles/2026-07-05-master-to-main-rename-runbook.md +0 -128
  52. package/docs/articles/index.md +0 -36
  53. package/docs/guides/INSTALL.md +0 -144
  54. package/docs/guides/MACOS_ICLOUD_SYMLINKS.md +0 -121
  55. package/docs/guides/NEOVIM_IDE_GUIDE.md +0 -61
  56. package/docs/guides/THEMING.md +0 -230
  57. package/docs/guides/TROUBLESHOOTING.md +0 -176
  58. package/docs/guides/WSL2_NIX_TROUBLESHOOTING.md +0 -792
  59. package/docs/index.md +0 -132
  60. package/docs/interop/A2A.md +0 -39
  61. package/docs/interop/POWERSHELL.md +0 -102
  62. package/docs/manual/00-introduction.md +0 -89
  63. package/docs/manual/01-concepts/01-architecture.md +0 -138
  64. package/docs/manual/01-concepts/02-trust-model.md +0 -183
  65. package/docs/manual/01-concepts/03-theme-engine.md +0 -186
  66. package/docs/manual/01-concepts/04-fleet.md +0 -148
  67. package/docs/manual/01-concepts/05-self-healing.md +0 -204
  68. package/docs/manual/02-tutorials/01-first-install.md +0 -197
  69. package/docs/manual/02-tutorials/02-add-wallpaper.md +0 -216
  70. package/docs/manual/02-tutorials/03-create-profile.md +0 -244
  71. package/docs/manual/02-tutorials/04-encrypt-secret.md +0 -281
  72. package/docs/manual/02-tutorials/05-deploy-fleet.md +0 -283
  73. package/docs/manual/03-reference/01-dot-cli.md +0 -475
  74. package/docs/manual/03-reference/02-config-files.md +0 -265
  75. package/docs/manual/03-reference/03-environment.md +0 -124
  76. package/docs/manual/03-reference/04-templates.md +0 -190
  77. package/docs/manual/03-reference/05-feature-flags.md +0 -187
  78. package/docs/manual/04-cookbook/01-recipes.md +0 -285
  79. package/docs/manual/04-cookbook/02-troubleshooting.md +0 -351
  80. package/docs/manual/04-cookbook/03-faq.md +0 -175
  81. package/docs/manual/05-appendices/A-platform-matrix.md +0 -101
  82. package/docs/manual/05-appendices/B-security-checklist.md +0 -85
  83. package/docs/manual/05-appendices/C-glossary.md +0 -40
  84. package/docs/manual/05-appendices/D-bibliography.md +0 -58
  85. package/docs/manual/05-appendices/E-license.md +0 -38
  86. package/docs/manual/_toc.yml +0 -58
  87. package/docs/manual/command-index.md +0 -175
  88. package/docs/manual/concept-index.md +0 -170
  89. package/docs/manual/index.md +0 -66
  90. package/docs/migration/README.md +0 -81
  91. package/docs/migration/from-bare-git-repo.md +0 -156
  92. package/docs/migration/from-gnu-stow.md +0 -165
  93. package/docs/migration/from-plain-chezmoi.md +0 -148
  94. package/docs/migration/from-yadm.md +0 -187
  95. package/docs/operations/ARCHITECTURE_ROADMAP.md +0 -7
  96. package/docs/operations/ATTESTATION.md +0 -44
  97. package/docs/operations/CI_CADENCE.md +0 -107
  98. package/docs/operations/CI_COMPOSITES.md +0 -156
  99. package/docs/operations/COMPLETIONS.md +0 -123
  100. package/docs/operations/COVERAGE.md +0 -204
  101. package/docs/operations/DRIFT.md +0 -107
  102. package/docs/operations/HARD_AUDIT_2026.md +0 -631
  103. package/docs/operations/MAINTENANCE.md +0 -63
  104. package/docs/operations/MANIFEST.md +0 -127
  105. package/docs/operations/MIGRATION.md +0 -109
  106. package/docs/operations/OPERATIONS.md +0 -188
  107. package/docs/operations/PERFORMANCE.md +0 -133
  108. package/docs/operations/PERFORMANCE_BUDGETS.md +0 -196
  109. package/docs/operations/REGISTRY.md +0 -90
  110. package/docs/operations/RELEASE_PIPELINE.md +0 -128
  111. package/docs/operations/RELIABILITY.md +0 -122
  112. package/docs/operations/RFC_v0_2_503_reorganization.md +0 -280
  113. package/docs/operations/ROADMAP.md +0 -10
  114. package/docs/operations/ROADMAP_2026.md +0 -7
  115. package/docs/operations/ROADMAP_V0_2_503.md +0 -10
  116. package/docs/operations/TESTING.md +0 -216
  117. package/docs/operations/TRACEABILITY.md +0 -44
  118. package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +0 -65
  119. package/docs/operations/VERSION_SYNC.md +0 -393
  120. package/docs/packaging.md +0 -222
  121. package/docs/reference/ALIASES.md +0 -131
  122. package/docs/reference/ALIASES_CHEATSHEET.md +0 -32
  123. package/docs/reference/ALIASES_DEPRECATIONS.md +0 -13
  124. package/docs/reference/FEATURE-MATRIX.md +0 -646
  125. package/docs/reference/FEATURES.md +0 -66
  126. package/docs/reference/FONTS.md +0 -112
  127. package/docs/reference/POWERSHELL_PARITY.md +0 -82
  128. package/docs/reference/PROFILES.md +0 -69
  129. package/docs/reference/SCREENSHOTS.md +0 -121
  130. package/docs/reference/SCRIPTS.md +0 -71
  131. package/docs/reference/SUPPORT_MATRIX.md +0 -80
  132. package/docs/reference/THEMES.md +0 -117
  133. package/docs/reference/TOOLS.md +0 -110
  134. package/docs/reference/UTILS.md +0 -243
  135. package/docs/registry.json +0 -6
  136. package/docs/schema/dot-env-v1.json +0 -110
  137. package/docs/schema/dot-registry-v1.json +0 -33
  138. package/docs/security/AI_ACT_COMPLIANCE.md +0 -94
  139. package/docs/security/AUDIT_BYPASS.md +0 -103
  140. package/docs/security/AUTOMATION_SECRETS.md +0 -26
  141. package/docs/security/CI_EGRESS_ALLOWLIST.md +0 -127
  142. package/docs/security/CI_PINNING.md +0 -129
  143. package/docs/security/COMMIT_SIGNING.md +0 -138
  144. package/docs/security/COMPLIANCE.md +0 -458
  145. package/docs/security/DEPS_DEV_EXCEPTIONS.md +0 -86
  146. package/docs/security/DISCLOSURE.md +0 -130
  147. package/docs/security/ENCRYPTION.md +0 -57
  148. package/docs/security/FMEA.md +0 -159
  149. package/docs/security/FUZZING.md +0 -209
  150. package/docs/security/HISTORY_FILTERING.md +0 -132
  151. package/docs/security/INCIDENT_RESPONSE.md +0 -579
  152. package/docs/security/INSTALL_VERIFICATION.md +0 -122
  153. package/docs/security/KEYS.md +0 -49
  154. package/docs/security/KEY_ROTATION.md +0 -303
  155. package/docs/security/MCP_POLICY.md +0 -78
  156. package/docs/security/POLICY_RELEASES.md +0 -37
  157. package/docs/security/README.md +0 -28
  158. package/docs/security/SCORECARD.md +0 -195
  159. package/docs/security/SECRETS.md +0 -158
  160. package/docs/security/SECURITY.md +0 -45
  161. package/docs/security/SECURITY_CHECKLIST.md +0 -55
  162. package/docs/security/SHELL_EXEMPTIONS.md +0 -145
  163. package/docs/security/SOUP_REGISTER.md +0 -36
  164. package/docs/security/THREAT_MODEL.md +0 -130
  165. package/docs/security/VERIFICATION_VALIDATION.md +0 -228
  166. package/docs/security/VERIFY_RELEASE.md +0 -201
  167. package/docs/security/security-pubkey.asc +0 -15
  168. package/docs/stylesheets/extra.css +0 -444
  169. package/docs/themes/README.md +0 -10
  170. package/docs/themes/VISUAL_INTEGRITY_REPORT.md +0 -30
  171. package/docs/themes/hero-shot.svg +0 -78
  172. package/scripts/README.md +0 -123
  173. package/scripts/ci/check-copyright-headers.sh +0 -8
  174. package/scripts/ci/check-shell-preamble.sh +0 -8
  175. package/scripts/ci/guard-gitleaks-checkout.sh +0 -8
  176. package/scripts/demo/record.sh +0 -43
  177. package/scripts/diagnostics/a2a-conformance.sh +0 -163
  178. package/scripts/diagnostics/alias-governance.sh +0 -165
  179. package/scripts/diagnostics/aliases-cheatsheet.sh +0 -74
  180. package/scripts/diagnostics/aliases-manifest.sh +0 -77
  181. package/scripts/diagnostics/attest-verify.sh +0 -147
  182. package/scripts/diagnostics/benchmark.sh +0 -408
  183. package/scripts/diagnostics/conflicts.sh +0 -73
  184. package/scripts/diagnostics/doctor-unified.sh +0 -43
  185. package/scripts/diagnostics/doctor.sh +0 -797
  186. package/scripts/diagnostics/drift-dashboard.sh +0 -203
  187. package/scripts/diagnostics/health.sh +0 -656
  188. package/scripts/diagnostics/history-analysis.sh +0 -86
  189. package/scripts/diagnostics/mcp-doctor.sh +0 -582
  190. package/scripts/diagnostics/perf.sh +0 -453
  191. package/scripts/diagnostics/scorecard.sh +0 -120
  192. package/scripts/diagnostics/secret-governance.sh +0 -65
  193. package/scripts/diagnostics/security-score.sh +0 -467
  194. package/scripts/diagnostics/smoke-test.sh +0 -88
  195. package/scripts/diagnostics/snapshot.sh +0 -90
  196. package/scripts/diagnostics/verify.sh +0 -108
  197. package/scripts/diagnostics/verify_state.sh +0 -73
  198. package/scripts/diagnostics/version-locks.sh +0 -94
  199. package/scripts/diagnostics/workstation-attestation.sh +0 -212
  200. package/scripts/dot/commands/agent.sh +0 -535
  201. package/scripts/dot/commands/agents.sh +0 -352
  202. package/scripts/dot/commands/ai.sh +0 -600
  203. package/scripts/dot/commands/aliases.sh +0 -277
  204. package/scripts/dot/commands/appearance.sh +0 -110
  205. package/scripts/dot/commands/completion.sh +0 -171
  206. package/scripts/dot/commands/core.sh +0 -217
  207. package/scripts/dot/commands/diagnostics.sh +0 -265
  208. package/scripts/dot/commands/env-emit.sh +0 -203
  209. package/scripts/dot/commands/fleet.sh +0 -711
  210. package/scripts/dot/commands/init.sh +0 -185
  211. package/scripts/dot/commands/lint.sh +0 -208
  212. package/scripts/dot/commands/manual.sh +0 -169
  213. package/scripts/dot/commands/meta.sh +0 -438
  214. package/scripts/dot/commands/patterns.sh +0 -55
  215. package/scripts/dot/commands/registry.sh +0 -455
  216. package/scripts/dot/commands/restore.sh +0 -232
  217. package/scripts/dot/commands/secrets.sh +0 -296
  218. package/scripts/dot/commands/security.sh +0 -102
  219. package/scripts/dot/commands/tools.sh +0 -570
  220. package/scripts/dot/data/alias-deprecations.tsv +0 -2
  221. package/scripts/dot/powershell/Dot.psm1 +0 -319
  222. package/scripts/fonts/install-nerd-fonts.sh +0 -75
  223. package/scripts/fonts/patch-fonts.sh +0 -36
  224. package/scripts/git-hooks/install.sh +0 -12
  225. package/scripts/git-hooks/pre-commit +0 -12
  226. package/scripts/git-hooks/pre-commit-audit.sh +0 -146
  227. package/scripts/git-hooks/pre-push +0 -105
  228. package/scripts/git-hooks/prepare-commit-msg +0 -29
  229. package/scripts/lib/secrets_provider.sh +0 -200
  230. package/scripts/nvim/headless-upgrade.lua +0 -81
  231. package/scripts/ops/ai-setup.sh +0 -71
  232. package/scripts/ops/bundle.sh +0 -104
  233. package/scripts/ops/chaos.sh +0 -50
  234. package/scripts/ops/chezmoi-apply.sh +0 -333
  235. package/scripts/ops/chezmoi-diff.sh +0 -16
  236. package/scripts/ops/chezmoi-remove.sh +0 -46
  237. package/scripts/ops/chezmoi-update.sh +0 -67
  238. package/scripts/ops/heal-chezmoi.sh +0 -87
  239. package/scripts/ops/heal-system.sh +0 -129
  240. package/scripts/ops/heal-tools.sh +0 -297
  241. package/scripts/ops/heal.sh +0 -223
  242. package/scripts/ops/post-apply-repair.sh +0 -107
  243. package/scripts/ops/prewarm.sh +0 -128
  244. package/scripts/ops/release.sh +0 -262
  245. package/scripts/ops/rollback.sh +0 -613
  246. package/scripts/ops/setup.sh +0 -138
  247. package/scripts/ops/teleport.sh +0 -34
  248. package/scripts/qa/check-feature-matrix.sh +0 -296
  249. package/scripts/qa/check-version-consistency.sh +0 -12
  250. package/scripts/qa/coverage-baseline.sh +0 -61
  251. package/scripts/qa/docs-coverage.sh +0 -118
  252. package/scripts/qa/examples-coverage.sh +0 -94
  253. package/scripts/qa/powershell-contract.ps1 +0 -95
  254. package/scripts/qa/reliability-audit.sh +0 -139
  255. package/scripts/qa/scorecard-snapshot.sh +0 -128
  256. package/scripts/qa/traceability-coverage.sh +0 -124
  257. package/scripts/qa/validate-examples.sh +0 -90
  258. package/scripts/qa/wsl-contract.sh +0 -12
  259. package/scripts/secrets/age-init.sh +0 -82
  260. package/scripts/secrets/create-secrets-file.sh +0 -46
  261. package/scripts/secrets/encrypt-ssh-key.sh +0 -44
  262. package/scripts/security/backup.sh +0 -58
  263. package/scripts/security/check-disclosure-key-expiry.sh +0 -111
  264. package/scripts/security/dns-doh.sh +0 -52
  265. package/scripts/security/encryption-check.sh +0 -55
  266. package/scripts/security/enforce-policies.sh +0 -552
  267. package/scripts/security/firewall.sh +0 -91
  268. package/scripts/security/lock-configs.sh +0 -67
  269. package/scripts/security/lock-screen.sh +0 -56
  270. package/scripts/security/manage-secrets.sh +0 -429
  271. package/scripts/security/ssh-cert.sh +0 -204
  272. package/scripts/security/telemetry-kill.sh +0 -51
  273. package/scripts/security/usb-safety.sh +0 -52
  274. package/scripts/theme/apply-gnome-theme.sh +0 -333
  275. package/scripts/theme/extract-heic-frames.sh +0 -115
  276. package/scripts/theme/extract-theme.py +0 -1020
  277. package/scripts/theme/install-boot-logo.sh +0 -63
  278. package/scripts/theme/install-catppuccin-themes.sh +0 -371
  279. package/scripts/theme/install-cursors.sh +0 -26
  280. package/scripts/theme/install-file-icons.sh +0 -27
  281. package/scripts/theme/install-grub-theme.sh +0 -62
  282. package/scripts/theme/install-lock-icon.sh +0 -31
  283. package/scripts/theme/merge-wallpaper.sh +0 -146
  284. package/scripts/theme/rebuild-themes.sh +0 -603
  285. package/scripts/theme/switch.sh +0 -476
  286. package/scripts/theme/wallpaper-rotate.sh +0 -137
  287. package/scripts/theme/wallpaper-sync.sh +0 -690
  288. package/scripts/tools/cmatrix.sh +0 -22
  289. package/scripts/tools/detect-collisions.py +0 -103
  290. package/scripts/tools/emoji-picker.sh +0 -49
  291. package/scripts/tools/figlet-banner.sh +0 -19
  292. package/scripts/tools/log-rotate.sh +0 -31
  293. package/scripts/tools/lolcat-wrap.sh +0 -20
  294. package/scripts/tools/pipes.sh +0 -49
  295. package/scripts/tuning/linux.sh +0 -186
  296. package/scripts/tuning/macos.sh +0 -56
  297. package/scripts/uninstall.sh +0 -86
  298. package/scripts/verify-release-versions +0 -156
  299. package/scripts/version-sync.sh +0 -714
  300. package/templates/chezmoi-data/geekom-a9.toml.example +0 -21
  301. package/templates/chezmoi-data/mac-m1.toml.example +0 -16
  302. package/templates/chezmoi-data/mac-t2-linux.toml.example +0 -21
  303. package/templates/chezmoi-data/surface-pro-7p.toml.example +0 -21
  304. package/templates/projects/go/.github/workflows/ci.yml +0 -31
  305. package/templates/projects/go/README.md +0 -7
  306. package/templates/projects/go/cmd/__PROJECT_NAME__/main.go +0 -8
  307. package/templates/projects/go/go.mod +0 -3
  308. package/templates/projects/go/go.sum +0 -0
  309. package/templates/projects/molecule/README.md +0 -7
  310. package/templates/projects/molecule/converge.yml +0 -7
  311. package/templates/projects/molecule/molecule.yml +0 -16
  312. package/templates/projects/node/.github/workflows/ci.yml +0 -30
  313. package/templates/projects/node/README.md +0 -7
  314. package/templates/projects/node/package-lock.json +0 -12
  315. package/templates/projects/node/package.json +0 -10
  316. package/templates/projects/node/src/index.js +0 -3
  317. package/templates/projects/packer/README.md +0 -15
  318. package/templates/projects/packer/main.pkr.hcl +0 -15
  319. package/templates/projects/python/.github/workflows/ci.yml +0 -34
  320. package/templates/projects/python/README.md +0 -7
  321. package/templates/projects/python/pyproject.toml +0 -25
  322. package/templates/projects/python/src/__PROJECT_NAME__/__init__.py +0 -2
  323. package/templates/projects/python/tests/test_basic.py +0 -3
@@ -1,66 +0,0 @@
1
- ---
2
- render_with_liquid: false
3
- ---
4
-
5
- # Feature Flags Reference
6
-
7
- Feature flags let you turn parts of the dotfiles on or off. All flags live in `.chezmoidata.toml` under `[features]`. Set a flag to `true` to enable it, or `false` to disable it. Changes take effect after you run `dot apply`.
8
-
9
- ## Shell and Terminal
10
-
11
- These flags control shell behavior and terminal tools.
12
-
13
- | Flag | Default | Description |
14
- |------|---------|-------------|
15
- | `alias_wrapper` | `false` | Enable alias governance wrapper (confirms destructive aliases) |
16
- | `dms` | `true` | Dank Material Shell theming for GNOME |
17
- | `zellij` | `false` | Enable Zellij terminal multiplexer config |
18
-
19
- ## Linux Desktop
20
-
21
- These flags enable Wayland desktop components. Turn them on if you run a Linux desktop with Niri or another tiling compositor.
22
-
23
- | Flag | Default | Description |
24
- |------|---------|-------------|
25
- | `linux_desktop` | `false` | Enable full Linux desktop environment configs |
26
- | `niri` | `false` | Niri Wayland compositor config |
27
- | `waybar` | `false` | Waybar status bar config |
28
- | `fuzzel` | `false` | Fuzzel application launcher config |
29
- | `mako` | `false` | Mako notification daemon config |
30
- | `foot` | `false` | Foot terminal emulator config |
31
- | `kanshi` | `false` | Kanshi display manager config |
32
-
33
- ## Hardware
34
-
35
- | Flag | Default | Description |
36
- |------|---------|-------------|
37
- | `touch` | `false` | Enable touchscreen support (gestures, on-screen keyboard) |
38
- | `t2` | `false` | Apple T2 security chip handling |
39
- | `surface` | `false` | Microsoft Surface hardware support |
40
-
41
- ## Tool Selection
42
-
43
- | Setting | Default | Options |
44
- |---------|---------|---------|
45
- | `node_manager` | `mise` | `mise`, `fnm`, `nvm` |
46
-
47
- ## Alias Policy
48
-
49
- | Setting | Default | Description |
50
- |---------|---------|-------------|
51
- | `aliases.buckets.system` | `true` | Enable system utility aliases |
52
- | `aliases.buckets.svn` | `true` | Enable SVN aliases |
53
- | `aliases.policy.strict_mode` | `false` | Require confirmation for destructive aliases (rm, mv) |
54
-
55
- ## How to Toggle Features
56
-
57
- You can edit flags in two places. Change `.chezmoidata.toml` in the repo to set defaults for all machines. Or override on a single machine in `~/.config/chezmoi/chezmoi.toml`:
58
-
59
- ```bash
60
- # In ~/.config/chezmoi/chezmoi.toml
61
- [data.features]
62
- zellij = true
63
- linux_desktop = true
64
- ```
65
-
66
- Then apply: `dot apply`
@@ -1,112 +0,0 @@
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
@@ -1,82 +0,0 @@
1
- ---
2
- render_with_liquid: false
3
- title: "PowerShell parity matrix"
4
- description: "What works on Windows-native PowerShell 7.4 LTS / 7.5+ vs the bash surface."
5
- ---
6
-
7
- # PowerShell parity matrix
8
-
9
- This document tracks what is supported on Windows-native PowerShell 7.4 LTS / 7.5+ compared to the bash/zsh surface that ships on macOS and Linux. The repo's positioning has shifted (per [ROADMAP_2026 §6.9](../operations/ROADMAP_2026.md)) to call PowerShell a first-class target rather than "best effort." This page is the contract.
10
-
11
- ## Support tiers
12
-
13
- | Tier | Meaning | Examples |
14
- |---|---|---|
15
- | **Full** | Native PowerShell path; tested in CI on `windows-latest`. | `dot version`, `dot help`, `dot agents check`. |
16
- | **WSL-bridged** | Runs under WSL2 bash with the same UX as Linux. | All `dot` subcommands, the test suite, the cold-start bench. |
17
- | **Bash-bridged** | The PowerShell dispatcher delegates to Git Bash or WSL bash and fails clearly when bash is unavailable. | `dot registry`, `dot fleet apply`, Unix-specific diagnostics. |
18
- | **N/A** | The command targets a Unix-only surface and is not exposed on PowerShell. | Wallpaper-driven theming via macOS `defaults`; Linux-only `lock-configs.sh`. |
19
-
20
- ## Command-by-command matrix
21
-
22
- | Command | Windows-native | WSL2 | macOS | Linux |
23
- |---|---|---|---|---|
24
- | `dot version` | **Full (native)** — `Get-DotVersion` cmdlet in `scripts/dot/powershell/Dot.psm1`; reads `.chezmoidata.toml` directly, no bash | Full | Full | Full |
25
- | `dot help` | **Full (native)** — `Invoke-DotHelp`; detailed Unix command help remains bash-bridged | Full | Full | Full |
26
- | `dot status` | **Full (native)** — structured clean/drifted result from chezmoi | Full | Full | Full |
27
- | `dot diff` / `apply` / `sync` / `update` | **Full (native)** — direct, exit-code-checked chezmoi operations | Full | Full | Full |
28
- | `dot add` / `remove` / `init` / `cd` | **Full (native)** — direct chezmoi operations and source-path lookup | Full | Full | Full |
29
- | `dot doctor` | **Full (native baseline)** — PowerShell, chezmoi, git, repo data, and module checks; Unix-only diagnostics are bash-bridged | Full | Full | Full |
30
- | `dot agents check` | **Full (native)** — `Test-DotAgentsSync` cmdlet; CI smoke test runs the cmdlet directly | Full | Full | Full |
31
- | `dot agents list` | **Full (native)** — structured harness/path/rendered records | Full | Full | Full |
32
- | `dot agents render` | Bash-bridged | Full | Full | Full |
33
- | `dot env list` | **Full (native)** — mise text or JSON inventory | Full | Full | Full |
34
- | `dot env emit` | Bash-bridged | Full | Full | Full |
35
- | `dot fleet status` | **Full (native)** — node, version, OS, architecture, and drift | Full | Full | Full |
36
- | `dot fleet drift` / `events` / `apply` / `namespace` | Bash-bridged | Full | Full | Full |
37
- | `dot registry list` / `search` / `info` / `install` | Bash-bridged; Unix path is verified, checksum-pinned, and preview-first | Full | Full | Full |
38
- | `dot agent` / `mode` / AI commands | Bash-bridged | Full | Full | Full |
39
- | `dot lint` | WSL-bridged (shellcheck/shfmt are Unix-native) | Full | Full | Full |
40
- | `dot perf` / `health` / `tools` | Bash-bridged | Full | Full | Full |
41
- | `dot theme` / `wallpaper` | N/A on native Windows | Limited | Full | Full (desktop-dependent) |
42
- | `dot security firewall` | Bash-bridged; no native Defender mutation | N/A | Full (pf) | Full (ufw/firewalld) |
43
- | `dot security lock-configs` | N/A (Windows ACL model differs; tracked) | N/A | Full (`chflags uchg`) | Full (`chattr +i`) |
44
- | Shell startup integration | Full (`Microsoft.PowerShell_profile.ps1` ships) | Full (zsh, bash, fish) | Full (zsh, bash, fish, nu) | Full (zsh, bash, fish, nu) |
45
-
46
- ## What CI verifies
47
-
48
- | Check | Platforms |
49
- |---|---|
50
- | `dot version` exits 0 | windows-latest, ubuntu-latest, macos-latest, macos-14 |
51
- | `dot help` exits 0 | windows-latest, ubuntu-latest, macos-latest, macos-14 |
52
- | `dot agents check` exits 0 | windows-latest (native), ubuntu-latest, macos-latest, macos-14 |
53
- | Native module import, agent-body sync, harness inventory, doctor baseline, and chezmoi diff | windows-latest |
54
- | Native dispatcher version, help, and agents check | windows-latest |
55
- | PowerShell ≥ 7.4 | windows-latest (smoke test at `tools/ci/windows-smoke-test.ps1`) |
56
- | PSScriptAnalyzer Error-level findings | windows-latest |
57
- | `chezmoi --version` exits 0 | windows-latest (via scoop), all Unix matrices |
58
- | `bash tools/ci/dot-cli-startup-bench.sh` median < 200ms | macos-latest |
59
- | `bash tools/ci/dot-cli-startup-bench.sh` median < 150ms | ubuntu-latest |
60
-
61
- ## Known parity gaps
62
-
63
- These are scoped in [`ROADMAP_2026 §C5`](../operations/ROADMAP_2026.md) but not in this PR's scope:
64
-
65
- 1. **Registry and fleet mutation.** Verified registry installation and multi-node fleet application still use the explicit bash bridge.
66
- 2. **Wallpaper-driven theming.** Native Windows wallpaper extraction and application are not implemented.
67
- 3. **Windows config locking.** There is no ACL/EFS equivalent of the Unix immutable-file operation.
68
- 4. **Authenticode signing.** Release provenance covers the archive, but `install.ps1` and `dot.ps1` are not Authenticode-signed for enterprise execution policies.
69
-
70
- ## Source-of-truth files
71
-
72
- - `.github/workflows/ci.yml` — `test-windows` job (pwsh + scoop + chezmoi + smoke)
73
- - `tools/ci/windows-smoke-test.ps1` — the actual gate
74
- - `bin/dot.ps1` and `scripts/dot/powershell/Dot.psm1` — native dispatcher and cmdlets
75
- - `defaults/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl` — deployed profile
76
- - `scripts/dot/lib/platform.sh` — the dot_path_to_unix/native bridge (H9 audit fix)
77
-
78
- ## Why this matters
79
-
80
- The 2026 trend brief flagged Windows-as-first-class as the highest-leverage move post-Codex-Windows-GA (launched 2026-03-04 with 500k waitlist → 2M WAU in 4 weeks). PowerShell 7.4 LTS retires 2026-11-10, so the gate sits at "7.4+" today and will tighten to "7.5+" in November. Documented here so the gate change is not a surprise.
81
-
82
- Generated 2026-05-16 alongside the round-2 hard audit. Maintained: when adding a `dot` subcommand, update this matrix in the same PR.
@@ -1,69 +0,0 @@
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 |
@@ -1,121 +0,0 @@
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.
@@ -1,71 +0,0 @@
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 |
@@ -1,80 +0,0 @@
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` |