dotfiles-tui 0.0.5

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 (204) hide show
  1. checksums.yaml +7 -0
  2. data/.env.example +4 -0
  3. data/.gitattributes +1 -0
  4. data/.github/workflows/publish-gem.yml +36 -0
  5. data/.gitignore +316 -0
  6. data/.shellcheckrc +1 -0
  7. data/.stow-local-ignore +23 -0
  8. data/.vscode/settings.json +2 -0
  9. data/Configs/aerospace/.config/aerospace/aerospace.toml +265 -0
  10. data/Configs/alacritty/.config/alacritty/alacritty.toml +31 -0
  11. data/Configs/conda/.condarc +1 -0
  12. data/Configs/continue/.continue/.continueignore +0 -0
  13. data/Configs/continue/.continue/.continuerc.json +3 -0
  14. data/Configs/continue/.continue/config.json +48 -0
  15. data/Configs/docker/.docker/completion/completion.zsh +3 -0
  16. data/Configs/editorconfig/.editorconfig +16 -0
  17. data/Configs/fzf/.fzf/completion/completion.zsh +8 -0
  18. data/Configs/git/.config/gitconfig/core +83 -0
  19. data/Configs/git/.config/gitconfig/home +20 -0
  20. data/Configs/git/.config/gitconfig/template.txt +7 -0
  21. data/Configs/git/.config/gitconfig/work +23 -0
  22. data/Configs/git/.gitconfig +25 -0
  23. data/Configs/gpg/.gnupg/.#lk0x000000015060b4e0.macBook.pro.24088 +2 -0
  24. data/Configs/gpg/.gnupg/gpg-agent.conf +3 -0
  25. data/Configs/gpg/.gnupg/openpgp-revocs.d/DE999E2ACEAE3E8EAD660459688CB4D444FB1024.rev +28 -0
  26. data/Configs/gpg/.gnupg/private-keys-v1.d/0FF407C984AC03CCC60D924C5B315977DF45D5D0.key +7 -0
  27. data/Configs/gpg/.gnupg/private-keys-v1.d/2B711D7C4A8BE25322C9966B73E6842F7E64CD38.key +7 -0
  28. data/Configs/gpg/.gnupg/pubring.kbx +0 -0
  29. data/Configs/gpg/.gnupg/trustdb.gpg +0 -0
  30. data/Configs/kitty/.config/kitty/current-theme.conf +80 -0
  31. data/Configs/kitty/.config/kitty/kitty.conf +93 -0
  32. data/Configs/nvim/.config/nvim/.stylua.toml +6 -0
  33. data/Configs/nvim/.config/nvim/README.md +9 -0
  34. data/Configs/nvim/.config/nvim/init.lua +37 -0
  35. data/Configs/nvim/.config/nvim/lazy-lock.json +29 -0
  36. data/Configs/nvim/.config/nvim/lua/chadrc.lua +17 -0
  37. data/Configs/nvim/.config/nvim/lua/configs/conform.lua +15 -0
  38. data/Configs/nvim/.config/nvim/lua/configs/lazy.lua +47 -0
  39. data/Configs/nvim/.config/nvim/lua/configs/lspconfig.lua +24 -0
  40. data/Configs/nvim/.config/nvim/lua/configs/null_ls.lua +27 -0
  41. data/Configs/nvim/.config/nvim/lua/mappings.lua +10 -0
  42. data/Configs/nvim/.config/nvim/lua/options.lua +6 -0
  43. data/Configs/nvim/.config/nvim/lua/plugins/init.lua +25 -0
  44. data/Configs/oh-my-posh/.config/oh-my-posh/theme/config.json +71 -0
  45. data/Configs/pip/.config/pip/pip.conf +3 -0
  46. data/Configs/python/.pythonrc +25 -0
  47. data/Configs/starship/.config/starship/starship.toml +134 -0
  48. data/Configs/starship/.config/starship/themes/frappe.toml +27 -0
  49. data/Configs/starship/.config/starship/themes/latte.toml +27 -0
  50. data/Configs/starship/.config/starship/themes/macchiato.toml +27 -0
  51. data/Configs/starship/.config/starship/themes/mocha.toml +27 -0
  52. data/Configs/tmux/.tmux.conf +21 -0
  53. data/Configs/wezterm/.config/wezterm/core/colors.lua +10 -0
  54. data/Configs/wezterm/.config/wezterm/core/font.lua +5 -0
  55. data/Configs/wezterm/.config/wezterm/core/helper.lua +22 -0
  56. data/Configs/wezterm/.config/wezterm/core/init.lua +20 -0
  57. data/Configs/wezterm/.config/wezterm/core/keybindings/init.lua +16 -0
  58. data/Configs/wezterm/.config/wezterm/core/keybindings/macos.lua +106 -0
  59. data/Configs/wezterm/.config/wezterm/core/keybindings/windows.lua +99 -0
  60. data/Configs/wezterm/.config/wezterm/core/launch.lua +41 -0
  61. data/Configs/wezterm/.config/wezterm/core/maximized.lua +5 -0
  62. data/Configs/wezterm/.config/wezterm/core/mousebindings.lua +23 -0
  63. data/Configs/wezterm/.config/wezterm/core/tab_title.lua +26 -0
  64. data/Configs/wezterm/.config/wezterm/core/window.lua +8 -0
  65. data/Configs/wezterm/.config/wezterm/wezterm.lua +83 -0
  66. data/Configs/zellij/.config/zellij/config.kdl +410 -0
  67. data/Configs/zellij/.config/zellij/layouts/default.kdl +159 -0
  68. data/Configs/zellij/.config/zellij/plugins/room.wasm +0 -0
  69. data/Configs/zellij/.config/zellij/plugins/zjstatus.wasm +0 -0
  70. data/Configs/zsh/.hushlogin +0 -0
  71. data/Configs/zsh/.localrc +42 -0
  72. data/Configs/zsh/.profile +3 -0
  73. data/Configs/zsh/.shellcheckrc +1 -0
  74. data/Configs/zsh/.zprofile +3 -0
  75. data/Configs/zsh/.zsh/autoload/backup_restore +84 -0
  76. data/Configs/zsh/.zsh/autoload/cat +8 -0
  77. data/Configs/zsh/.zsh/autoload/change_wallpaper +1 -0
  78. data/Configs/zsh/.zsh/autoload/clean_dstore +6 -0
  79. data/Configs/zsh/.zsh/autoload/clean_pycache +6 -0
  80. data/Configs/zsh/.zsh/autoload/convert_mkv_to_mp4 +14 -0
  81. data/Configs/zsh/.zsh/autoload/create_macos_installer +26 -0
  82. data/Configs/zsh/.zsh/autoload/download +71 -0
  83. data/Configs/zsh/.zsh/autoload/fail +2 -0
  84. data/Configs/zsh/.zsh/autoload/flush_dns +6 -0
  85. data/Configs/zsh/.zsh/autoload/info +1 -0
  86. data/Configs/zsh/.zsh/autoload/ls +8 -0
  87. data/Configs/zsh/.zsh/autoload/reset_beyond_compare +15 -0
  88. data/Configs/zsh/.zsh/autoload/reset_final_cut_pro +5 -0
  89. data/Configs/zsh/.zsh/autoload/reset_launch_pad +3 -0
  90. data/Configs/zsh/.zsh/autoload/reset_open_list +3 -0
  91. data/Configs/zsh/.zsh/autoload/speedup_terminal +6 -0
  92. data/Configs/zsh/.zsh/autoload/start_aria2_server +1 -0
  93. data/Configs/zsh/.zsh/autoload/success +1 -0
  94. data/Configs/zsh/.zsh/autoload/update_system +19 -0
  95. data/Configs/zsh/.zsh/autoload/user +1 -0
  96. data/Configs/zsh/.zsh/autoload/vim +9 -0
  97. data/Configs/zsh/.zsh/autoload/warn +1 -0
  98. data/Configs/zsh/.zsh/completion/aliases.zsh +3 -0
  99. data/Configs/zsh/.zsh/completion/completion.zsh +33 -0
  100. data/Configs/zsh/.zsh/completion/config.zsh +118 -0
  101. data/Configs/zsh/.zsh/completion/exports.zsh +108 -0
  102. data/Configs/zsh/.zsh/completion/fpath.zsh +8 -0
  103. data/Configs/zsh/.zsh_history +283 -0
  104. data/Configs/zsh/.zshenv +2 -0
  105. data/Configs/zsh/.zshrc +54 -0
  106. data/Gemfile +3 -0
  107. data/Gemfile.lock +87 -0
  108. data/Hooks/adguard/pre.rb +7 -0
  109. data/Hooks/aerospace/pre.rb +8 -0
  110. data/Hooks/aide/post.rb +7 -0
  111. data/Hooks/aide/pre.rb +7 -0
  112. data/Hooks/alacritty/pre.rb +7 -0
  113. data/Hooks/alfred/pre.rb +7 -0
  114. data/Hooks/atuin/post.rb +27 -0
  115. data/Hooks/atuin/pre.rb +7 -0
  116. data/Hooks/bartender/pre.rb +7 -0
  117. data/Hooks/bun/pre.rb +7 -0
  118. data/Hooks/carapace/pre.rb +7 -0
  119. data/Hooks/cargo/pre.rb +7 -0
  120. data/Hooks/choosy/pre.rb +7 -0
  121. data/Hooks/controld/pre.rb +7 -0
  122. data/Hooks/core/common.rb +36 -0
  123. data/Hooks/core/final.rb +23 -0
  124. data/Hooks/core/lib/configurator.rb +593 -0
  125. data/Hooks/core/lib/display.rb +120 -0
  126. data/Hooks/core/lib/hook_config.rb +96 -0
  127. data/Hooks/core/lib/hook_context.rb +124 -0
  128. data/Hooks/core/lib/hooks.rb +45 -0
  129. data/Hooks/core/lib/logger.rb +23 -0
  130. data/Hooks/core/lib/menu.rb +70 -0
  131. data/Hooks/core/lib/spinner.rb +50 -0
  132. data/Hooks/core/lib/system.rb +78 -0
  133. data/Hooks/core/lib/tweaks.rb +59 -0
  134. data/Hooks/core/library.rb +3 -0
  135. data/Hooks/core/pre.rb +17 -0
  136. data/Hooks/ctrld/pre.rb +7 -0
  137. data/Hooks/deskpad/pre.rb +7 -0
  138. data/Hooks/fonts/pre.rb +60 -0
  139. data/Hooks/ghostty/pre.rb +10 -0
  140. data/Hooks/git/post.rb +20 -0
  141. data/Hooks/git/pre.rb +7 -0
  142. data/Hooks/gpg/post.rb +16 -0
  143. data/Hooks/gpg/pre.rb +7 -0
  144. data/Hooks/ice-hidemenubar/pre.rb +7 -0
  145. data/Hooks/iterm/IC Green PPL.itermcolors +344 -0
  146. data/Hooks/iterm/chalkboard.webp +0 -0
  147. data/Hooks/iterm/com.googlecode.iterm2.plist +2371 -0
  148. data/Hooks/iterm/post.rb +7 -0
  149. data/Hooks/iterm/pre.rb +7 -0
  150. data/Hooks/jujutsu/post.rb +13 -0
  151. data/Hooks/jujutsu/pre.rb +7 -0
  152. data/Hooks/keka/pre.rb +7 -0
  153. data/Hooks/kitty/pre.rb +7 -0
  154. data/Hooks/lazyvim/pre.rb +7 -0
  155. data/Hooks/lima/pre.rb +7 -0
  156. data/Hooks/little-snitch/pre.rb +7 -0
  157. data/Hooks/microsoft-edge/pre.rb +7 -0
  158. data/Hooks/mos/pre.rb +7 -0
  159. data/Hooks/nvchad/pre.rb +7 -0
  160. data/Hooks/oh-my-posh/config.json +58 -0
  161. data/Hooks/oh-my-posh/post.rb +7 -0
  162. data/Hooks/oh-my-posh/pre.rb +7 -0
  163. data/Hooks/pearcleaner/pre.rb +7 -0
  164. data/Hooks/pycharm/pre.rb +7 -0
  165. data/Hooks/raindropio/pre.rb +7 -0
  166. data/Hooks/rectangle/RectangleConfig.json +258 -0
  167. data/Hooks/rectangle/com.knollsoft.Rectangle.plist +0 -0
  168. data/Hooks/rectangle/post.rb +22 -0
  169. data/Hooks/rectangle/pre.rb +7 -0
  170. data/Hooks/slack/pre.rb +7 -0
  171. data/Hooks/soundsource/pre.rb +7 -0
  172. data/Hooks/ssh/post.rb +8 -0
  173. data/Hooks/starship/pre.rb +7 -0
  174. data/Hooks/sublime_text/post.rb +25 -0
  175. data/Hooks/sublime_text/pre.rb +7 -0
  176. data/Hooks/swiftformat-for-xcode/pre.rb +7 -0
  177. data/Hooks/syncthing/pre.rb +7 -0
  178. data/Hooks/synology/pre.rb +7 -0
  179. data/Hooks/tailscale/pre.rb +7 -0
  180. data/Hooks/tmux/post.rb +7 -0
  181. data/Hooks/tmux/pre.rb +7 -0
  182. data/Hooks/topnotch/pre.rb +7 -0
  183. data/Hooks/transmission/pre.rb +7 -0
  184. data/Hooks/vscode/extensions.txt +16 -0
  185. data/Hooks/vscode/keybindings.json +26 -0
  186. data/Hooks/vscode/post.rb +29 -0
  187. data/Hooks/vscode/pre.rb +9 -0
  188. data/Hooks/vscode/settings.json +139 -0
  189. data/Hooks/vscode/style.css +29 -0
  190. data/Hooks/wezterm/pre.rb +7 -0
  191. data/Hooks/wins/pre.rb +7 -0
  192. data/Hooks/zed/pre.rb +7 -0
  193. data/Hooks/zellij/post.rb +7 -0
  194. data/Hooks/zellij/pre.rb +7 -0
  195. data/Hooks/zoxide/pre.rb +7 -0
  196. data/Hooks/zsh/pre.rb +19 -0
  197. data/LICENSE +21 -0
  198. data/README.md +100 -0
  199. data/bin/dotfiles-tui +6 -0
  200. data/bootstrap.rb +186 -0
  201. data/dotfiles-tui.gemspec +47 -0
  202. data/lib/dotfiles_tui/version.rb +5 -0
  203. data/lib/dotfiles_tui.rb +15 -0
  204. metadata +275 -0
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('iterm', stage: :post) do |_hook|
6
+ # Configure iTerm2 preferences here if desired.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('iterm', stage: :pre) do |_hook|
6
+ # Add custom installation logic if needed. Disabled by default.
7
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('jujutsu', stage: :post) do |hook|
6
+ unless system('command -v jj >/dev/null 2>&1')
7
+ hook.info('jj not installed; skipping configuration')
8
+ next
9
+ end
10
+
11
+ hook.run('jj config set --user user.email "mr.narender@icloud.com"', allow_failure: true)
12
+ hook.run('jj config set --user ui.default-command log', allow_failure: true)
13
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('jujutsu', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --formula jj')
7
+ end
data/Hooks/keka/pre.rb ADDED
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('keka', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('kitty', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('lazyvim', stage: :pre) do |hook|
6
+ hook.run('git clone https://github.com/LazyVim/starter ~/.config/nvim')
7
+ end
data/Hooks/lima/pre.rb ADDED
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('lima', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('little-snitch', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask little-snitch')
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('microsoft-edge', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
data/Hooks/mos/pre.rb ADDED
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('mos', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask mos')
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('nvchad', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,58 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
3
+ "blocks": [
4
+ {
5
+ "alignment": "left",
6
+ "segments": [
7
+ {
8
+ "background": "#feae34",
9
+ "foreground": "#262b44",
10
+ "leading_diamond": "",
11
+ "powerline_symbol": "",
12
+ "properties": {
13
+ "style": "folder"
14
+ },
15
+ "style": "diamond",
16
+ "template": "  {{ .Path }} ",
17
+ "trailing_diamond": "",
18
+ "type": "path"
19
+ },
20
+ {
21
+ "background": "#fee761",
22
+ "background_templates": [
23
+ "{{ if or (.Working.Changed) (.Staging.Changed) }}#f77622{{ end }}",
24
+ "{{ if and (gt .Ahead 0) (gt .Behind 0) }}#e43b44{{ end }}",
25
+ "{{ if gt .Ahead 0 }}#2ce8f5{{ end }}",
26
+ "{{ if gt .Behind 0 }}#f77622{{ end }}"
27
+ ],
28
+ "foreground": "#262b44",
29
+ "powerline_symbol": "",
30
+ "properties": {
31
+ "fetch_stash_count": true,
32
+ "fetch_status": true,
33
+ "fetch_upstream_icon": true
34
+ },
35
+ "style": "powerline",
36
+ "template": " {{ .UpstreamIcon }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Staging.Changed }}  {{ .Staging.String }}{{ end }}{{ if and (.Working.Changed) (.Staging.Changed) }} |{{ end }}{{ if .Working.Changed }}  {{ .Working.String }}{{ end }}{{ if gt .StashCount 0 }}  {{ .StashCount }}{{ end }} ",
37
+ "type": "git"
38
+ },
39
+ {
40
+ "background": "#0095e9",
41
+ "background_templates": ["{{ if gt .Code 0 }}#ff0044{{ end }}"],
42
+ "foreground": "#ffffff",
43
+ "leading_diamond": "<transparent,background></>",
44
+ "properties": {
45
+ "always_enabled": true
46
+ },
47
+ "style": "diamond",
48
+ "template": "  ",
49
+ "trailing_diamond": "",
50
+ "type": "status"
51
+ }
52
+ ],
53
+ "type": "prompt"
54
+ }
55
+ ],
56
+ "final_space": true,
57
+ "version": 2
58
+ }
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('oh-my-posh', stage: :post) do |_hook|
6
+ # No post actions defined.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('oh-my-posh', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('pearcleaner', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask pearcleaner')
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('pycharm', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('raindropio', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,258 @@
1
+ {
2
+ "bundleId" : "com.knollsoft.Rectangle",
3
+ "defaults" : {
4
+ "allowAnyShortcut" : {
5
+ "bool" : true
6
+ },
7
+ "almostMaximizeHeight" : {
8
+ "float" : 0
9
+ },
10
+ "almostMaximizeWidth" : {
11
+ "float" : 0
12
+ },
13
+ "alternateDefaultShortcuts" : {
14
+ "bool" : false
15
+ },
16
+ "altThirdCycle" : {
17
+ "int" : 0
18
+ },
19
+ "alwaysAccountForStage" : {
20
+ "int" : 0
21
+ },
22
+ "applyGapsToMaximize" : {
23
+ "int" : 0
24
+ },
25
+ "applyGapsToMaximizeHeight" : {
26
+ "int" : 0
27
+ },
28
+ "attemptMatchOnNextPrevDisplay" : {
29
+ "int" : 0
30
+ },
31
+ "autoMaximize" : {
32
+ "int" : 0
33
+ },
34
+ "cascadeAllDeltaSize" : {
35
+ "float" : 30
36
+ },
37
+ "centeredDirectionalMove" : {
38
+ "int" : 0
39
+ },
40
+ "centerHalfCycles" : {
41
+ "int" : 0
42
+ },
43
+ "cornerSnapAreaSize" : {
44
+ "float" : 20
45
+ },
46
+ "curtainChangeSize" : {
47
+ "int" : 0
48
+ },
49
+ "disabledApps" : {
50
+
51
+ },
52
+ "doubleClickTitleBar" : {
53
+ "int" : 0
54
+ },
55
+ "doubleClickTitleBarIgnoredApps" : {
56
+
57
+ },
58
+ "doubleClickTitleBarRestore" : {
59
+ "int" : 0
60
+ },
61
+ "dragFromStage" : {
62
+ "int" : 0
63
+ },
64
+ "enhancedUI" : {
65
+ "int" : 1
66
+ },
67
+ "footprintAlpha" : {
68
+ "float" : 0.3
69
+ },
70
+ "footprintAnimationDurationMultiplier" : {
71
+ "float" : 0.75
72
+ },
73
+ "footprintBorderWidth" : {
74
+ "float" : 2
75
+ },
76
+ "footprintColor" : {
77
+
78
+ },
79
+ "footprintFade" : {
80
+ "int" : 0
81
+ },
82
+ "fullIgnoreBundleIds" : {
83
+
84
+ },
85
+ "gapSize" : {
86
+ "float" : 0
87
+ },
88
+ "hideMenubarIcon" : {
89
+ "bool" : true
90
+ },
91
+ "ignoreDragSnapToo" : {
92
+ "int" : 0
93
+ },
94
+ "ignoredSnapAreas" : {
95
+ "int" : 0
96
+ },
97
+ "landscapeSnapAreas" : {
98
+ "string" : "[2,{\"action\":2},7,{\"action\":30},1,{\"action\":0},4,{\"action\":0},5,{\"action\":1},3,{\"action\":1},8,{\"action\":1},6,{\"action\":0}]"
99
+ },
100
+ "launchOnLogin" : {
101
+ "bool" : true
102
+ },
103
+ "minimumWindowHeight" : {
104
+ "float" : 0
105
+ },
106
+ "minimumWindowWidth" : {
107
+ "float" : 0
108
+ },
109
+ "missionControlDragging" : {
110
+ "int" : 0
111
+ },
112
+ "missionControlDraggingAllowedOffscreenDistance" : {
113
+ "float" : 25
114
+ },
115
+ "missionControlDraggingDisallowedDuration" : {
116
+ "int" : 250
117
+ },
118
+ "moveCursor" : {
119
+ "int" : 0
120
+ },
121
+ "moveCursorAcrossDisplays" : {
122
+ "int" : 1
123
+ },
124
+ "notifiedOfProblemApps" : {
125
+ "bool" : false
126
+ },
127
+ "obtainWindowOnClick" : {
128
+ "int" : 0
129
+ },
130
+ "portraitSnapAreas" : {
131
+
132
+ },
133
+ "relaunchOpensMenu" : {
134
+ "bool" : false
135
+ },
136
+ "resizeOnDirectionalMove" : {
137
+ "bool" : false
138
+ },
139
+ "screenEdgeGapBottom" : {
140
+ "float" : 0
141
+ },
142
+ "screenEdgeGapLeft" : {
143
+ "float" : 0
144
+ },
145
+ "screenEdgeGapRight" : {
146
+ "float" : 0
147
+ },
148
+ "screenEdgeGapsOnMainScreenOnly" : {
149
+ "bool" : false
150
+ },
151
+ "screenEdgeGapTop" : {
152
+ "float" : 0
153
+ },
154
+ "shortEdgeSnapAreaSize" : {
155
+ "float" : 145
156
+ },
157
+ "showAllActionsInMenu" : {
158
+ "int" : 0
159
+ },
160
+ "sixthsSnapArea" : {
161
+ "int" : 0
162
+ },
163
+ "sizeOffset" : {
164
+ "float" : 0
165
+ },
166
+ "snapEdgeMarginBottom" : {
167
+ "float" : 5
168
+ },
169
+ "snapEdgeMarginLeft" : {
170
+ "float" : 5
171
+ },
172
+ "snapEdgeMarginRight" : {
173
+ "float" : 5
174
+ },
175
+ "snapEdgeMarginTop" : {
176
+ "float" : 5
177
+ },
178
+ "snapModifiers" : {
179
+ "int" : 0
180
+ },
181
+ "specifiedHeight" : {
182
+ "float" : 1050
183
+ },
184
+ "specifiedWidth" : {
185
+ "float" : 1680
186
+ },
187
+ "stageSize" : {
188
+ "float" : 190
189
+ },
190
+ "subsequentExecutionMode" : {
191
+ "int" : 0
192
+ },
193
+ "SUEnableAutomaticChecks" : {
194
+ "bool" : false
195
+ },
196
+ "systemWideMouseDown" : {
197
+ "int" : 0
198
+ },
199
+ "systemWideMouseDownApps" : {
200
+
201
+ },
202
+ "todo" : {
203
+ "int" : 0
204
+ },
205
+ "todoApplication" : {
206
+
207
+ },
208
+ "todoMode" : {
209
+ "bool" : false
210
+ },
211
+ "todoSidebarSide" : {
212
+ "int" : 1
213
+ },
214
+ "todoSidebarWidth" : {
215
+ "float" : 400
216
+ },
217
+ "traverseSingleScreen" : {
218
+ "int" : 0
219
+ },
220
+ "unsnapRestore" : {
221
+ "int" : 0
222
+ },
223
+ "windowSnapping" : {
224
+ "int" : 0
225
+ }
226
+ },
227
+ "shortcuts" : {
228
+ "center" : {
229
+ "keyCode" : 8,
230
+ "modifierFlags" : 786432
231
+ },
232
+ "leftHalf" : {
233
+ "keyCode" : 123,
234
+ "modifierFlags" : 786432
235
+ },
236
+ "maximize" : {
237
+ "keyCode" : 3,
238
+ "modifierFlags" : 786432
239
+ },
240
+ "reflowTodo" : {
241
+ "keyCode" : 45,
242
+ "modifierFlags" : 786432
243
+ },
244
+ "restore" : {
245
+ "keyCode" : 51,
246
+ "modifierFlags" : 786432
247
+ },
248
+ "rightHalf" : {
249
+ "keyCode" : 124,
250
+ "modifierFlags" : 786432
251
+ },
252
+ "toggleTodo" : {
253
+ "keyCode" : 11,
254
+ "modifierFlags" : 786432
255
+ }
256
+ },
257
+ "version" : "82"
258
+ }
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'fileutils'
4
+ require_relative '../core/common'
5
+
6
+ Bootstrap::Hooks.run('rectangle', stage: :post) do |hook|
7
+ rectangle_app = '/Applications/Rectangle.app'
8
+ next unless File.directory?(rectangle_app)
9
+
10
+ support_dir = File.join(Dir.home, 'Library', 'Application Support', 'Rectangle')
11
+ FileUtils.mkdir_p(support_dir)
12
+
13
+ config_source = hook.hook_path('RectangleConfig.json')
14
+ FileUtils.cp(config_source, File.join(support_dir, 'RectangleConfig.json')) if File.exist?(config_source)
15
+
16
+ plist_source = hook.hook_path('com.knollsoft.Rectangle.plist')
17
+ preferences_path = File.join(Dir.home, 'Library', 'Preferences', 'com.knollsoft.Rectangle.plist')
18
+ FileUtils.mkdir_p(File.dirname(preferences_path))
19
+ FileUtils.cp(plist_source, preferences_path) if File.exist?(plist_source)
20
+
21
+ hook.run('defaults write com.googlecode.iterm2 DisableWindowSizeSnap -integer 1', allow_failure: true)
22
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('rectangle', stage: :pre) do |_hook|
6
+ # Rectangle installation disabled by default.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('slack', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('soundsource', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
data/Hooks/ssh/post.rb ADDED
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('ssh', stage: :post) do |hook|
6
+ hook.run('find ~/.ssh/ -type f -exec chmod 600 \'{}\' +')
7
+ hook.run('find ~/.ssh/ -type d -exec chmod 700 \'{}\' +')
8
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('starship', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'fileutils'
4
+ require 'rbconfig'
5
+ require_relative '../core/common'
6
+
7
+ Bootstrap::Hooks.run('sublime_text', stage: :post) do |hook|
8
+ mac_app_path = '/Applications/Sublime Text.app'
9
+ sublime_installed = File.directory?(mac_app_path) || system('command -v subl >/dev/null 2>&1')
10
+ next unless sublime_installed
11
+
12
+ home_dir = if RbConfig::CONFIG['host_os'] =~ /darwin/i
13
+ File.join(Dir.home, 'Library', 'Application Support', 'Sublime Text')
14
+ else
15
+ File.join(Dir.home, '.config', 'Sublime Text')
16
+ end
17
+
18
+ FileUtils.mkdir_p(home_dir)
19
+
20
+ archive = hook.hook_path('configuration.zip')
21
+ if File.exist?(archive)
22
+ hook.run("unzip -q '#{archive}' -d '#{home_dir}'", allow_failure: true)
23
+ hook.remove_path(File.join(home_dir, '__MACOSX'))
24
+ end
25
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('sublime_text', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('swiftformat-for-xcode', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask swiftformat-for-xcode')
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('syncthing', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask syncthing')
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('synology', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask synology-drive', allow_failure: true)
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('tailscale', stage: :pre) do |hook|
6
+ hook.run('/opt/homebrew/bin/brew install --quiet --cask tailscale')
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('tmux', stage: :post) do |_hook|
6
+ # No post actions defined.
7
+ end
data/Hooks/tmux/pre.rb ADDED
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('tmux', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('topnotch', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../core/common'
4
+
5
+ Bootstrap::Hooks.run('transmission', stage: :pre) do |_hook|
6
+ # No actions defined. Enable this hook via config/hooks.yml when needed.
7
+ end
@@ -0,0 +1,16 @@
1
+ charliermarsh.ruff
2
+ esbenp.prettier-vscode
3
+ ms-python.debugpy
4
+ ms-python.python
5
+ ms-python.vscode-pylance
6
+ foxundermoon.shell-format
7
+ evondev.indent-rainbow-palettes
8
+ redhat.vscode-yaml
9
+ richie5um2.vscode-sort-json
10
+ rust-lang.rust-analyzer
11
+ tamasfe.even-better-toml
12
+ usernamehw.errorlens
13
+ sumneko.lua
14
+ Catppuccin.catppuccin-vsc
15
+ Catppuccin.catppuccin-vsc-icons
16
+ miguelsolorio.fluent-icons