@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,236 +0,0 @@
1
- local wezterm = require 'wezterm'
2
-
3
- local config = {}
4
- if wezterm.config_builder then
5
- config = wezterm.config_builder()
6
- end
7
-
8
- {{- $theme := default "tokyonight-night" .theme -}}
9
- {{- $fontFamily := default "JetBrainsMono Nerd Font" .terminal_font_family -}}
10
- {{- $fontSize := default 12 .terminal_font_size -}}
11
-
12
- local theme = "{{ $theme }}"
13
-
14
- config.font = wezterm.font_with_fallback({
15
- "{{ $fontFamily }}",
16
- "JetBrains Mono",
17
- "SF Mono",
18
- "Roboto Mono",
19
- })
20
- config.font_size = {{ $fontSize }}
21
-
22
- config.window_padding = {
23
- left = 16,
24
- right = 16,
25
- top = 12,
26
- bottom = 12,
27
- }
28
-
29
- config.enable_tab_bar = true
30
- config.use_fancy_tab_bar = false
31
- config.hide_tab_bar_if_only_one_tab = true
32
- config.window_decorations = "RESIZE"
33
-
34
- config.colors = {
35
- {{- if eq $theme "tokyonight-night" }}
36
- foreground = "#c0caf5",
37
- background = "#1a1b26",
38
- cursor_bg = "#c0caf5",
39
- cursor_fg = "#1a1b26",
40
- selection_bg = "#414868",
41
- selection_fg = "#c0caf5",
42
- ansi = { "#15161e", "#f7768e", "#9ece6a", "#e0af68", "#7aa2f7", "#bb9af7", "#7dcfff", "#a9b1d6" },
43
- brights = { "#5f6686", "#ff899d", "#9fe044", "#faba4a", "#8db0ff", "#c7a9ff", "#a4daff", "#c0caf5" },
44
- {{- else if eq $theme "tokyonight-storm" }}
45
- foreground = "#c0caf5",
46
- background = "#24283b",
47
- cursor_bg = "#c0caf5",
48
- cursor_fg = "#24283b",
49
- selection_bg = "#414868",
50
- selection_fg = "#c0caf5",
51
- ansi = { "#1d202f", "#f7768e", "#9ece6a", "#e0af68", "#7aa2f7", "#bb9af7", "#7dcfff", "#a9b1d6" },
52
- brights = { "#6b7292", "#ff899d", "#9fe044", "#faba4a", "#8db0ff", "#c7a9ff", "#a4daff", "#c0caf5" },
53
- {{- else if eq $theme "tokyonight-moon" }}
54
- foreground = "#c8d3f5",
55
- background = "#222436",
56
- cursor_bg = "#c8d3f5",
57
- cursor_fg = "#222436",
58
- selection_bg = "#444a73",
59
- selection_fg = "#c8d3f5",
60
- ansi = { "#1b1d2b", "#ff757f", "#c3e88d", "#ffc777", "#82aaff", "#c099ff", "#86e1fc", "#828bb8" },
61
- brights = { "#666c95", "#ff8d94", "#c7fb6d", "#ffd8ab", "#9ab8ff", "#caabff", "#b2ebff", "#c8d3f5" },
62
- {{- else if eq $theme "tokyonight-day" }}
63
- foreground = "#3760bf",
64
- background = "#e1e2e7",
65
- cursor_bg = "#3760bf",
66
- cursor_fg = "#e1e2e7",
67
- selection_bg = "#a1a6c5",
68
- selection_fg = "#3760bf",
69
- ansi = { "#b4b5b9", "#f52a65", "#587539", "#8c6c3e", "#2e7de9", "#9854f1", "#007197", "#6172b0" },
70
- brights = { "#797e9d", "#ff4774", "#5c8524", "#a27629", "#358aff", "#a463ff", "#007ea8", "#3760bf" },
71
- {{- else if eq $theme "dracula" }}
72
- foreground = "#f8f8f2",
73
- background = "#282a36",
74
- cursor_bg = "#f8f8f2",
75
- cursor_fg = "#282a36",
76
- selection_bg = "#6272a4",
77
- selection_fg = "#f8f8f2",
78
- ansi = { "#21222c", "#ff5555", "#50fa7b", "#f1fa8c", "#bd93f9", "#ff79c6", "#8be9fd", "#f8f8f2" },
79
- brights = { "#6272a4", "#ff6e6e", "#69ff94", "#ffffa5", "#d6acff", "#ff92df", "#a4ffff", "#ffffff" },
80
- {{- else if eq $theme "gruvbox-dark" }}
81
- foreground = "#d5c4a1",
82
- background = "#282828",
83
- cursor_bg = "#d5c4a1",
84
- cursor_fg = "#282828",
85
- selection_bg = "#665c54",
86
- selection_fg = "#d5c4a1",
87
- ansi = { "#282828", "#fb4934", "#b8bb26", "#fabd2f", "#83a598", "#d3869b", "#8ec07c", "#d5c4a1" },
88
- brights = { "#665c54", "#fb4934", "#b8bb26", "#fabd2f", "#83a598", "#d3869b", "#8ec07c", "#fbf1c7" },
89
- {{- else if eq $theme "gruvbox-light" }}
90
- foreground = "#504945",
91
- background = "#fbf1c7",
92
- cursor_bg = "#504945",
93
- cursor_fg = "#fbf1c7",
94
- selection_bg = "#bdae93",
95
- selection_fg = "#504945",
96
- ansi = { "#fbf1c7", "#9d0006", "#79740e", "#b57614", "#076678", "#8f3f71", "#427b58", "#504945" },
97
- brights = { "#bdae93", "#9d0006", "#79740e", "#b57614", "#076678", "#8f3f71", "#427b58", "#282828" },
98
- {{- else if eq $theme "nord" }}
99
- foreground = "#d8dee9",
100
- background = "#2e3440",
101
- cursor_bg = "#d8dee9",
102
- cursor_fg = "#2e3440",
103
- selection_bg = "#4c566a",
104
- selection_fg = "#d8dee9",
105
- ansi = { "#3b4252", "#bf616a", "#a3be8c", "#ebcb8b", "#81a1c1", "#b48ead", "#88c0d0", "#e5e9f0" },
106
- brights = { "#4c566a", "#bf616a", "#a3be8c", "#ebcb8b", "#81a1c1", "#b48ead", "#8fbcbb", "#eceff4" },
107
- {{- else if eq $theme "onedark" }}
108
- foreground = "#abb2bf",
109
- background = "#282c34",
110
- cursor_bg = "#abb2bf",
111
- cursor_fg = "#282c34",
112
- selection_bg = "#545862",
113
- selection_fg = "#abb2bf",
114
- ansi = { "#282c34", "#e06c75", "#98c379", "#e5c07b", "#61afef", "#c678dd", "#56b6c2", "#abb2bf" },
115
- brights = { "#727680", "#e06c75", "#98c379", "#e5c07b", "#61afef", "#c678dd", "#56b6c2", "#c8ccd4" },
116
- {{- else if eq $theme "onelight" }}
117
- foreground = "#383a42",
118
- background = "#fafafa",
119
- cursor_bg = "#383a42",
120
- cursor_fg = "#fafafa",
121
- selection_bg = "#a0a1a7",
122
- selection_fg = "#383a42",
123
- ansi = { "#fafafa", "#ca1243", "#50a14f", "#c18401", "#4078f2", "#a626a4", "#0184bc", "#383a42" },
124
- brights = { "#a0a1a7", "#ca1243", "#50a14f", "#c18401", "#4078f2", "#a626a4", "#0184bc", "#090a0b" },
125
- {{- else if eq $theme "solarized-dark" }}
126
- foreground = "#93a1a1",
127
- background = "#002b36",
128
- cursor_bg = "#93a1a1",
129
- cursor_fg = "#002b36",
130
- selection_bg = "#657b83",
131
- selection_fg = "#93a1a1",
132
- ansi = { "#002b36", "#dc322f", "#859900", "#b58900", "#268bd2", "#6c71c4", "#2aa198", "#93a1a1" },
133
- brights = { "#657b83", "#dc322f", "#859900", "#b58900", "#268bd2", "#6c71c4", "#2aa198", "#fdf6e3" },
134
- {{- else if eq $theme "solarized-light" }}
135
- foreground = "#586e75",
136
- background = "#fdf6e3",
137
- cursor_bg = "#586e75",
138
- cursor_fg = "#fdf6e3",
139
- selection_bg = "#839496",
140
- selection_fg = "#586e75",
141
- ansi = { "#fdf6e3", "#dc322f", "#859900", "#b58900", "#268bd2", "#6c71c4", "#2aa198", "#586e75" },
142
- brights = { "#839496", "#dc322f", "#859900", "#b58900", "#268bd2", "#6c71c4", "#2aa198", "#002b36" },
143
- {{- else if eq $theme "rose-pine" }}
144
- foreground = "#e0def4",
145
- background = "#191724",
146
- cursor_bg = "#e0def4",
147
- cursor_fg = "#191724",
148
- selection_bg = "#2a273f",
149
- selection_fg = "#e0def4",
150
- ansi = { "#26233a", "#eb6f92", "#9ccfd8", "#f6c177", "#31748f", "#c4a7e7", "#9ccfd8", "#e0def4" },
151
- brights = { "#6e6a86", "#eb6f92", "#9ccfd8", "#f6c177", "#31748f", "#c4a7e7", "#9ccfd8", "#e0def4" },
152
- {{- else if eq $theme "rose-pine-dawn" }}
153
- foreground = "#575279",
154
- background = "#faf4ed",
155
- cursor_bg = "#575279",
156
- cursor_fg = "#faf4ed",
157
- selection_bg = "#f2e9e1",
158
- selection_fg = "#575279",
159
- ansi = { "#f2e9e1", "#b4637a", "#286983", "#ea9d34", "#56949f", "#907aa9", "#d7827e", "#575279" },
160
- brights = { "#9893a5", "#b4637a", "#286983", "#ea9d34", "#56949f", "#907aa9", "#d7827e", "#575279" },
161
- {{- else if eq $theme "rose-pine-moon" }}
162
- foreground = "#e0def4",
163
- background = "#232136",
164
- cursor_bg = "#e0def4",
165
- cursor_fg = "#232136",
166
- selection_bg = "#393552",
167
- selection_fg = "#e0def4",
168
- ansi = { "#393552", "#eb6f92", "#9ccfd8", "#f6c177", "#3e8fb0", "#c4a7e7", "#9ccfd8", "#e0def4" },
169
- brights = { "#6e6a86", "#eb6f92", "#9ccfd8", "#f6c177", "#3e8fb0", "#c4a7e7", "#9ccfd8", "#e0def4" },
170
- {{- else if eq $theme "everforest-dark" }}
171
- foreground = "#d3c6aa",
172
- background = "#2f383e",
173
- cursor_bg = "#d3c6aa",
174
- cursor_fg = "#2f383e",
175
- selection_bg = "#3c474d",
176
- selection_fg = "#d3c6aa",
177
- ansi = { "#4b565c", "#e67e80", "#a7c080", "#dbbc7f", "#7fbbb3", "#d699b6", "#83c092", "#d3c6aa" },
178
- brights = { "#778288", "#e67e80", "#a7c080", "#dbbc7f", "#7fbbb3", "#d699b6", "#83c092", "#d3c6aa" },
179
- {{- else if eq $theme "everforest-light" }}
180
- foreground = "#5c6a72",
181
- background = "#fdf6e3",
182
- cursor_bg = "#5c6a72",
183
- cursor_fg = "#fdf6e3",
184
- selection_bg = "#e6e2cc",
185
- selection_fg = "#5c6a72",
186
- ansi = { "#829181", "#f85552", "#8da101", "#dfa000", "#3a94c5", "#df69ba", "#35a77c", "#5c6a72" },
187
- brights = { "#829181", "#f85552", "#8da101", "#dfa000", "#3a94c5", "#df69ba", "#35a77c", "#5c6a72" },
188
- {{- else if eq $theme "kanagawa-wave" }}
189
- foreground = "#dcd7ba",
190
- background = "#1f1f28",
191
- cursor_bg = "#dcd7ba",
192
- cursor_fg = "#1f1f28",
193
- selection_bg = "#2d4f67",
194
- selection_fg = "#dcd7ba",
195
- ansi = { "#1f1f28", "#c34043", "#76946a", "#c0a36e", "#7e9cd8", "#957fb8", "#6a9589", "#dcd7ba" },
196
- brights = { "#6a6a77", "#c34043", "#76946a", "#c0a36e", "#7e9cd8", "#957fb8", "#6a9589", "#dcd7ba" },
197
- {{- else if eq $theme "kanagawa-dragon" }}
198
- foreground = "#c8c093",
199
- background = "#181616",
200
- cursor_bg = "#c8c093",
201
- cursor_fg = "#181616",
202
- selection_bg = "#223249",
203
- selection_fg = "#c8c093",
204
- ansi = { "#181616", "#c4746e", "#87a987", "#c4b28a", "#8ba4b0", "#a292a3", "#8ea4a2", "#c8c093" },
205
- brights = { "#656462", "#c4746e", "#87a987", "#c4b28a", "#8ba4b0", "#a292a3", "#8ea4a2", "#c8c093" },
206
- {{- else if eq $theme "kanagawa-lotus" }}
207
- foreground = "#545464",
208
- background = "#f2ecbc",
209
- cursor_bg = "#545464",
210
- cursor_fg = "#f2ecbc",
211
- selection_bg = "#e2e0d1",
212
- selection_fg = "#545464",
213
- ansi = { "#e2e0d1", "#c84053", "#6f894e", "#77713f", "#4d699b", "#b35b79", "#597b75", "#545464" },
214
- brights = { "#9f9997", "#c84053", "#6f894e", "#77713f", "#4d699b", "#b35b79", "#597b75", "#545464" },
215
- {{- else if eq $theme "catppuccin-latte" }}
216
- foreground = "#4c4f69",
217
- background = "#eff1f5",
218
- cursor_bg = "#4c4f69",
219
- cursor_fg = "#eff1f5",
220
- selection_bg = "#6c6f85",
221
- selection_fg = "#4c4f69",
222
- ansi = { "#5c5f77", "#d20f39", "#40a02b", "#df8e1d", "#1e66f5", "#ea76cb", "#179299", "#acb0be" },
223
- brights = { "#6c6f85", "#d20f39", "#40a02b", "#df8e1d", "#1e66f5", "#ea76cb", "#179299", "#bcc0cc" },
224
- {{- else }}
225
- foreground = "#cdd6f4",
226
- background = "#1e1e2e",
227
- cursor_bg = "#cdd6f4",
228
- cursor_fg = "#1e1e2e",
229
- selection_bg = "#585b70",
230
- selection_fg = "#cdd6f4",
231
- ansi = { "#45475a", "#f38ba8", "#a6e3a1", "#f9e2af", "#89b4fa", "#f5c2e7", "#94e2d5", "#bac2de" },
232
- brights = { "#585b70", "#f38ba8", "#a6e3a1", "#f9e2af", "#89b4fa", "#f5c2e7", "#94e2d5", "#a6adc8" },
233
- {{- end }}
234
- }
235
-
236
- return config
@@ -1,12 +0,0 @@
1
- # Wget Configuration
2
- timestamping = on
3
- no_parent = on
4
- timeout = 60
5
- tries = 3
6
- retry_connrefused = on
7
- trust_server_names = on
8
- follow_ftp = on
9
- adjust_extension = on
10
- robots = off
11
- server_response = on
12
- user_agent = Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
@@ -1,36 +0,0 @@
1
- # Yarn Berry (v2+) configuration
2
- # Managed by chezmoi - edit source at ~/.dotfiles/dot_config/yarn/yarnrc.yml.tmpl
3
-
4
- # Use node-modules linker for compatibility (PnP is default but breaks some tools)
5
- nodeLinker: node-modules
6
-
7
- # Enable global cache for faster installs
8
- enableGlobalCache: true
9
-
10
- # Telemetry
11
- enableTelemetry: false
12
-
13
- # Compression level for archives (0-9, default 6)
14
- compressionLevel: mixed
15
-
16
- # HTTP settings
17
- httpTimeout: 60000
18
- httpRetry: 3
19
-
20
- # Default init settings
21
- initScope: ""
22
-
23
- # Log filters (reduce noise)
24
- logFilters:
25
- - code: YN0002
26
- level: discard
27
- - code: YN0060
28
- level: discard
29
- - code: YN0006
30
- level: discard
31
-
32
- # Scoped registries (uncomment and configure as needed)
33
- # npmScopes:
34
- # mycompany:
35
- # npmRegistryServer: "https://npm.mycompany.com/"
36
- # npmAuthToken: "${NPM_TOKEN:-}"
@@ -1,40 +0,0 @@
1
- # Yazi Configuration (~/.config/yazi/yazi.toml)
2
- # A fast, async terminal file manager written in Rust.
3
-
4
- [manager]
5
- layout = [1, 4, 3]
6
- sort_by = "alphabetical"
7
- sort_sensitive = false
8
- sort_reverse = false
9
- sort_dir_first = true
10
- linemode = "size"
11
- show_hidden = false
12
- show_symlink = true
13
-
14
- [preview]
15
- tab_size = 2
16
- max_width = 600
17
- max_height = 900
18
- cache_dir = ""
19
- image_filter = "lanczos3"
20
- image_quality = 75
21
- sixel_fraction = 15
22
-
23
- [opener]
24
- edit = [
25
- { run = 'nvim "$@"', block = true, desc = "Edit" },
26
- ]
27
- play = [
28
- { run = 'mpv "$@"', orphan = true, desc = "Play" },
29
- ]
30
- open = [
31
- { run = 'open "$@"', desc = "Open" },
32
- ]
33
-
34
- [open]
35
- rules = [
36
- { name = "*/", use = "edit" },
37
- { mime = "text/*", use = "edit" },
38
- { mime = "image/*", use = "open" },
39
- { mime = "video/*", use = "play" },
40
- ]
@@ -1,79 +0,0 @@
1
- // Zellij Configuration
2
- // Modern terminal multiplexer alternative to tmux
3
-
4
- theme "catppuccin-mocha"
5
- default_shell "zsh"
6
- default_layout "compact"
7
- mouse_mode true
8
- scroll_buffer_size 50000
9
- simplified_ui true
10
- session_serialization true
11
- pane_viewport_serialization true
12
- styled_underlines true
13
-
14
- ui {
15
- pane_frames {
16
- rounded_corners true
17
- hide_session_name false
18
- }
19
- }
20
-
21
- keybinds clear-defaults=true {
22
- normal {
23
- bind "Ctrl h" { MoveFocus "Left"; }
24
- bind "Ctrl j" { MoveFocus "Down"; }
25
- bind "Ctrl k" { MoveFocus "Up"; }
26
- bind "Ctrl l" { MoveFocus "Right"; }
27
- bind "Ctrl a" { SwitchToMode "Tmux"; }
28
- bind "Ctrl Space" { SwitchToMode "Locked"; }
29
- }
30
- tmux {
31
- bind "Esc" { SwitchToMode "Normal"; }
32
- bind "|" { NewPane "Right"; SwitchToMode "Normal"; }
33
- bind "-" { NewPane "Down"; SwitchToMode "Normal"; }
34
- bind "x" { CloseFocus; SwitchToMode "Normal"; }
35
- bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
36
- bind "c" { NewTab; SwitchToMode "Normal"; }
37
- bind "n" { GoToNextTab; SwitchToMode "Normal"; }
38
- bind "p" { GoToPreviousTab; SwitchToMode "Normal"; }
39
- bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
40
- bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
41
- bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
42
- bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
43
- bind "d" { Detach; }
44
- bind "[" { SwitchToMode "Scroll"; }
45
- }
46
- scroll {
47
- bind "Esc" { SwitchToMode "Normal"; }
48
- bind "j" { ScrollDown; }
49
- bind "k" { ScrollUp; }
50
- bind "Ctrl d" { HalfPageScrollDown; }
51
- bind "Ctrl u" { HalfPageScrollUp; }
52
- }
53
- locked {
54
- bind "Ctrl Space" { SwitchToMode "Normal"; }
55
- }
56
- shared_except "locked" {
57
- bind "Alt 1" { GoToTab 1; }
58
- bind "Alt 2" { GoToTab 2; }
59
- bind "Alt 3" { GoToTab 3; }
60
- bind "Alt 4" { GoToTab 4; }
61
- bind "Alt 5" { GoToTab 5; }
62
- }
63
- }
64
-
65
- themes {
66
- catppuccin-mocha {
67
- bg "#1e1e2e"
68
- fg "#cdd6f4"
69
- red "#f38ba8"
70
- green "#a6e3a1"
71
- blue "#89b4fa"
72
- yellow "#f9e2af"
73
- magenta "#f5c2e7"
74
- orange "#fab387"
75
- cyan "#94e2d5"
76
- black "#45475a"
77
- white "#bac2de"
78
- }
79
- }
@@ -1,13 +0,0 @@
1
- # Homebrew (Apple Silicon) - static exports for faster startup
2
- export HOMEBREW_PREFIX="/opt/homebrew"
3
- export HOMEBREW_CELLAR="/opt/homebrew/Cellar"
4
- export HOMEBREW_REPOSITORY="/opt/homebrew"
5
- export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:${PATH}"
6
- export MANPATH="/opt/homebrew/share/man${MANPATH+:$MANPATH}:"
7
- export INFOPATH="/opt/homebrew/share/info:${INFOPATH:-}"
8
-
9
- # User-local binaries
10
- export PATH="$HOME/.local/bin:$PATH"
11
-
12
- # Dotnet tools
13
- export PATH="$HOME/.dotnet/tools:$PATH"
@@ -1,6 +0,0 @@
1
- # Always-available PATH bootstrap (includes system paths to allow skipping /etc/zprofile path_helper)
2
- export PATH="/opt/homebrew/bin:$HOME/.local/bin:$HOME/.dotnet/tools:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH"
3
- [[ -f "$HOME/.cargo/env" ]] && source "$HOME/.cargo/env"
4
-
5
- # Skip /etc/zprofile (path_helper ~3ms) and /etc/zshrc (terminfo ~10ms) — we handle both
6
- setopt NO_GLOBAL_RCS
@@ -1,199 +0,0 @@
1
- # 🅳🅾🆃🅵🅸🅻🅴🆂 (v0.2.480) - <https://dotfiles.io>
2
- # Made With ❤️ in London, United Kingdom
3
- # Designed by Sebastien Rousseau
4
- # Copyright (c) 2015-2026. All rights reserved.
5
- # License: MIT
6
-
7
- # Performance optimization - skip if not interactive
8
- [[ -o interactive ]] || return
9
-
10
- # Only source once if being re-sourced (in the same shell scope)
11
- if [[ -v DOTFILES_SOURCED ]]; then
12
- return
13
- fi
14
- DOTFILES_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
- {{- if eq .chezmoi.os "darwin" }}
22
- export FORCE_COLOR_OS="macOS"
23
- {{- else if eq .chezmoi.os "linux" }}
24
- export FORCE_COLOR_OS="Linux"
25
- {{- else if eq .chezmoi.os "windows" }}
26
- export FORCE_COLOR_OS="Windows"
27
- {{- end }}
28
-
29
- {{- $profile := default "laptop" .profile -}}
30
- {{- $features := default (dict "zsh" true "nvim" true "tmux" true "gui" true "secrets" true) .features -}}
31
- {{- $theme := default "catppuccin-mocha" .theme -}}
32
- {{- $enabled := list -}}
33
- {{- range $k, $v := $features }}{{- if $v }}{{- $enabled = append $enabled $k }}{{- end }}{{- end }}
34
-
35
- export DOTFILES_PROFILE="{{ $profile }}"
36
- export DOTFILES_FEATURES="{{ join "," $enabled }}"
37
- export DOTFILES_THEME="{{ $theme }}"
38
-
39
- # Cached eval helper — sources cached init scripts, regenerates when stale
40
- _SHELL_CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/zsh"
41
- [[ -d "$_SHELL_CACHE" ]] || mkdir -p "$_SHELL_CACHE"
42
-
43
- _cached_eval() {
44
- local label=$1; shift
45
- local cache="$_SHELL_CACHE/${label}.zsh"
46
- local bin="${commands[$1]}"
47
- if [[ -f "$cache" ]] && [[ -z "$bin" || "$cache" -nt "$bin" ]]; then
48
- source "$cache"
49
- else
50
- "$@" >| "$cache" 2>/dev/null
51
- source "$cache"
52
- { zcompile "$cache" } &!
53
- fi
54
- }
55
-
56
- ## 🆅🅰🆁🅸🅰🆁🅸🅰🅱🅻🅴🆂 - Core variables, plugins, and options
57
- ZSH_RC_DIR="${HOME}/.config/zsh/rc.d"
58
- if [[ -d "${ZSH_RC_DIR}" ]]; then
59
- for rc_file in "${ZSH_RC_DIR}"/**/*.zsh(N); do
60
- source "${rc_file}"
61
- done
62
- fi
63
-
64
- ###############################
65
- # Performance: Auto-Zcompile #
66
- ###############################
67
- zcompile_many() {
68
- local f
69
- for f; do
70
- # Compile if source is newer than .zwc or .zwc doesn't exist
71
- if [[ -f "$f" ]]; then
72
- if [[ ! -f "${f}.zwc" || "$f" -nt "${f}.zwc" ]]; then
73
- zcompile "$f"
74
- fi
75
- fi
76
- done
77
- }
78
-
79
- # Compile main config and generated files in background
80
- if [[ -o interactive ]]; then
81
- (
82
- zcompile_many "${HOME}/.zshrc" \
83
- "${HOME}/.config/shell/aliases.sh" \
84
- "${HOME}/.config/shell/paths.sh" \
85
- "${HOME}/.config/shell/functions.sh" \
86
- "${HOME}/.config/shell/00-core-paths.sh" \
87
- "${HOME}/.config/shell/05-core-safety.sh" \
88
- "${HOME}/.config/shell/40-ls-colors.sh" \
89
- "${HOME}/.config/shell/90-ux-aliases.sh" &!
90
- )
91
- fi
92
-
93
- # Legacy Loader (Disabled in favor of Chezmoi Universal Config)
94
- # _DOTFILES_CACHE="${HOME}/.zsh_dotfiles_cache"
95
- # load_dotfiles() { ... }
96
- # load_dotfiles
97
-
98
- # Remove duplicates in zsh $PATH
99
- typeset -aU path
100
-
101
- # Load local customizations if they exist
102
- [[ -f "${HOME}/.zshrc.local" ]] && source "${HOME}/.zshrc.local"
103
-
104
- # Vendor / Enterprise Hooks (Site-local overrides)
105
- # Supports drop-in configs from system management tools
106
- if [[ -d "/etc/dotfiles/defaults.d" ]]; then
107
- for hook in /etc/dotfiles/defaults.d/*.sh(N); do
108
- source "$hook"
109
- done
110
- fi
111
-
112
- # Load Chezmoi-managed Universal Configuration Layers (Lexical Order)
113
- # 00-19: Core (Paths, Safety)
114
- # 20-49: Middleware (Exports, Options)
115
- # 50-89: Toolchain & Logic (Functions, Rust tools)
116
- # 90-99: UX (Aliases, Prompts)
117
- #
118
- # Optimized loading of core configurations + eager aliases
119
- for core_layer in 00-core-paths 05-core-safety 40-ls-colors 90-ux-aliases; do
120
- if [[ -f "${HOME}/.config/shell/${core_layer}.sh" ]]; then
121
- source "${HOME}/.config/shell/${core_layer}.sh"
122
- fi
123
- done
124
-
125
- # Deferred loading of heavy layers (lazy — loads after first prompt)
126
- autoload -Uz add-zsh-hook
127
- _load_deferred_layers() {
128
- add-zsh-hook -d precmd _load_deferred_layers
129
- [[ -f "${HOME}/.config/shell/50-logic-functions.sh" ]] && source "${HOME}/.config/shell/50-logic-functions.sh"
130
- [[ -f "${HOME}/.config/shell/91-ux-aliases-lazy.sh" ]] && source "${HOME}/.config/shell/91-ux-aliases-lazy.sh"
131
- # AI / Predictive Shell (deferred for faster startup)
132
- [[ -f "${HOME}/.config/shell/custom/context_suggest.zsh" ]] && source "${HOME}/.config/shell/custom/context_suggest.zsh"
133
- [[ -f "${HOME}/.config/shell/custom/error_analysis.zsh" ]] && source "${HOME}/.config/shell/custom/error_analysis.zsh"
134
- [[ -f "${HOME}/.config/shell/custom/ollama_functions.zsh" ]] && source "${HOME}/.config/shell/custom/ollama_functions.zsh"
135
- }
136
- add-zsh-hook precmd _load_deferred_layers
137
-
138
- # Essential Aliases (fallback if 90-ux-aliases.sh is unavailable)
139
- if command -v bat >/dev/null; then
140
- alias cat="bat"
141
- fi
142
-
143
- # Smart Alias Function (Colorize output when listing, standard behavior otherwise)
144
- alias_wrapper() {
145
- if [[ $# -eq 0 ]]; then
146
- if command -v bat >/dev/null; then
147
- builtin alias | bat -l sh --style=plain
148
- else
149
- builtin alias
150
- fi
151
- else
152
- builtin alias "$@"
153
- fi
154
- }
155
- alias alias=alias_wrapper
156
-
157
-
158
- # Phase 33: Atuin (Memory Layer)
159
- if command -v atuin > /dev/null; then
160
- _cached_eval atuin-init atuin init zsh
161
- fi
162
-
163
- # Starship Prompt (High Performance)
164
- if command -v starship >/dev/null; then
165
- _cached_eval starship-init starship init zsh
166
- fi
167
-
168
- # Zoxide (Smart Directory Jumper) - Replaces 'cd'
169
- if command -v zoxide >/dev/null; then
170
- _cached_eval zoxide-init zoxide init zsh
171
- fi
172
-
173
- # Mise (Runtime Version Manager) - Replaces asdf/pyenv/nvm
174
- if command -v mise >/dev/null; then
175
- _cached_eval mise-init mise activate zsh
176
- fi
177
-
178
- # FZF (Fuzzy Finder) - Cross-platform detection
179
- if command -v fzf >/dev/null; then
180
- # Detect FZF shell integration path (Homebrew, apt, manual install)
181
- local fzf_shell_dir=""
182
- for dir in "${HOMEBREW_PREFIX:-/opt/homebrew}/opt/fzf/shell" \
183
- /usr/local/opt/fzf/shell \
184
- /usr/share/fzf \
185
- /usr/share/doc/fzf/examples \
186
- "${HOME}/.fzf/shell"; do
187
- [[ -d "$dir" ]] && { fzf_shell_dir="$dir"; break; }
188
- done
189
-
190
- if [[ -n "$fzf_shell_dir" ]]; then
191
- [[ -f "${fzf_shell_dir}/completion.zsh" ]] && source "${fzf_shell_dir}/completion.zsh"
192
- [[ -f "${fzf_shell_dir}/key-bindings.zsh" ]] && source "${fzf_shell_dir}/key-bindings.zsh"
193
- fi
194
-
195
- # Use fd/rg for fzf source if available
196
- if command -v rg >/dev/null; then
197
- export FZF_DEFAULT_COMMAND='rg --files --no-ignore --hidden --follow --glob "!.git/*"'
198
- fi
199
- fi
@@ -1,5 +0,0 @@
1
- # SSH agent: auto-start and load key from macOS Keychain
2
- if [ -z "$SSH_AUTH_SOCK" ]; then
3
- eval "$(ssh-agent -s)" > /dev/null
4
- ssh-add --apple-use-keychain ~/.ssh/id_ed25519 2>/dev/null
5
- fi
@@ -1,28 +0,0 @@
1
- # Environment and core variables
2
- export HOSTNAME="${HOST}"
3
- export INPUTRC="${HOME}/.inputrc"
4
- export OS_ARCH="$(uname -m)"
5
- export OS_NAME="$(uname)"
6
- export OS_VERSION="$(uname -r)"
7
- export USER_LANGUAGE="en_GB.UTF-8"
8
- export ARCHFLAGS="-arch ${OS_ARCH}"
9
- export DOTFILES_VERSION='0.2.480'
10
- export DOTFILES="${HOME}/.dotfiles/lib"
11
- export LANG="${USER_LANGUAGE}"
12
- export LANGUAGE="${USER_LANGUAGE}"
13
- export LC_ALL="${USER_LANGUAGE}"
14
- export LC_CTYPE="${USER_LANGUAGE}"
15
- export TERM="xterm-256color"
16
-
17
- # fnm multishell path for environments without /run/user/... access
18
- if [[ -z "${XDG_RUNTIME_DIR:-}" ]]; then
19
- export XDG_RUNTIME_DIR="${XDG_STATE_HOME:-$HOME/.local/state}/run"
20
- fi
21
- if [[ ! -d "${XDG_RUNTIME_DIR}" ]]; then
22
- mkdir -p "${XDG_RUNTIME_DIR}" 2>/dev/null || true
23
- fi
24
-
25
- export FNM_MULTISHELL_PATH="${FNM_MULTISHELL_PATH:-${XDG_RUNTIME_DIR}/fnm_multishells}"
26
- if [[ ! -d "${FNM_MULTISHELL_PATH}" ]]; then
27
- mkdir -p "${FNM_MULTISHELL_PATH}" 2>/dev/null || true
28
- fi