@fredlackey/devutils 0.0.1 → 0.0.2

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 (257) hide show
  1. package/README.md +5 -5
  2. package/package.json +1 -1
  3. package/src/commands/install.js +374 -36
  4. package/src/installs/adobe-creative-cloud.js +527 -25
  5. package/src/installs/adobe-creative-cloud.md +605 -0
  6. package/src/installs/appcleaner.js +303 -26
  7. package/src/installs/appcleaner.md +699 -0
  8. package/src/installs/apt-transport-https.js +390 -0
  9. package/src/installs/apt-transport-https.md +678 -0
  10. package/src/installs/atomicparsley.js +624 -26
  11. package/src/installs/atomicparsley.md +795 -0
  12. package/src/installs/aws-cli.js +779 -26
  13. package/src/installs/aws-cli.md +727 -0
  14. package/src/installs/balena-etcher.js +688 -26
  15. package/src/installs/balena-etcher.md +761 -0
  16. package/src/installs/bambu-studio.js +912 -26
  17. package/src/installs/bambu-studio.md +780 -0
  18. package/src/installs/bash-completion.js +554 -23
  19. package/src/installs/bash-completion.md +833 -0
  20. package/src/installs/bash.js +399 -26
  21. package/src/installs/bash.md +993 -0
  22. package/src/installs/beyond-compare.js +585 -26
  23. package/src/installs/beyond-compare.md +813 -0
  24. package/src/installs/build-essential.js +511 -26
  25. package/src/installs/build-essential.md +977 -0
  26. package/src/installs/ca-certificates.js +618 -0
  27. package/src/installs/ca-certificates.md +937 -0
  28. package/src/installs/caffeine.js +490 -26
  29. package/src/installs/caffeine.md +839 -0
  30. package/src/installs/camtasia.js +577 -25
  31. package/src/installs/camtasia.md +762 -0
  32. package/src/installs/chatgpt.js +458 -26
  33. package/src/installs/chatgpt.md +814 -0
  34. package/src/installs/chocolatey.js +447 -0
  35. package/src/installs/chocolatey.md +661 -0
  36. package/src/installs/chrome-canary.js +472 -26
  37. package/src/installs/chrome-canary.md +641 -0
  38. package/src/installs/chromium.js +645 -26
  39. package/src/installs/chromium.md +838 -0
  40. package/src/installs/claude-code.js +558 -26
  41. package/src/installs/claude-code.md +1173 -0
  42. package/src/installs/curl.js +361 -26
  43. package/src/installs/curl.md +714 -0
  44. package/src/installs/cursor.js +561 -26
  45. package/src/installs/cursor.md +970 -0
  46. package/src/installs/dbschema.js +674 -26
  47. package/src/installs/dbschema.md +925 -0
  48. package/src/installs/dependencies.md +435 -0
  49. package/src/installs/development-tools.js +600 -0
  50. package/src/installs/development-tools.md +977 -0
  51. package/src/installs/docker.js +1010 -25
  52. package/src/installs/docker.md +1109 -0
  53. package/src/installs/drawio.js +1001 -26
  54. package/src/installs/drawio.md +795 -0
  55. package/src/installs/elmedia-player.js +328 -25
  56. package/src/installs/elmedia-player.md +556 -0
  57. package/src/installs/ffmpeg.js +870 -25
  58. package/src/installs/ffmpeg.md +852 -0
  59. package/src/installs/file.js +464 -0
  60. package/src/installs/file.md +987 -0
  61. package/src/installs/gemini-cli.js +793 -26
  62. package/src/installs/gemini-cli.md +1153 -0
  63. package/src/installs/git.js +382 -26
  64. package/src/installs/git.md +907 -0
  65. package/src/installs/gitego.js +931 -26
  66. package/src/installs/gitego.md +1172 -0
  67. package/src/installs/go.js +913 -26
  68. package/src/installs/go.md +958 -0
  69. package/src/installs/google-chrome.js +801 -25
  70. package/src/installs/google-chrome.md +862 -0
  71. package/src/installs/gpg.js +412 -73
  72. package/src/installs/gpg.md +1056 -0
  73. package/src/installs/homebrew.js +1015 -26
  74. package/src/installs/homebrew.md +988 -0
  75. package/src/installs/imageoptim.js +950 -26
  76. package/src/installs/imageoptim.md +1119 -0
  77. package/src/installs/installers.json +2297 -0
  78. package/src/installs/jq.js +382 -26
  79. package/src/installs/jq.md +809 -0
  80. package/src/installs/keyboard-maestro.js +701 -26
  81. package/src/installs/keyboard-maestro.md +825 -0
  82. package/src/installs/latex.js +771 -26
  83. package/src/installs/latex.md +1095 -0
  84. package/src/installs/lftp.js +338 -26
  85. package/src/installs/lftp.md +907 -0
  86. package/src/installs/lsb-release.js +346 -0
  87. package/src/installs/lsb-release.md +814 -0
  88. package/src/installs/messenger.js +829 -26
  89. package/src/installs/messenger.md +900 -0
  90. package/src/installs/microsoft-office.js +550 -26
  91. package/src/installs/microsoft-office.md +760 -0
  92. package/src/installs/microsoft-teams.js +782 -25
  93. package/src/installs/microsoft-teams.md +886 -0
  94. package/src/installs/node.js +886 -26
  95. package/src/installs/node.md +1153 -0
  96. package/src/installs/nordpass.js +698 -26
  97. package/src/installs/nordpass.md +921 -0
  98. package/src/installs/nvm.js +977 -26
  99. package/src/installs/nvm.md +1057 -0
  100. package/src/installs/openssh.js +734 -64
  101. package/src/installs/openssh.md +1056 -0
  102. package/src/installs/pandoc.js +644 -26
  103. package/src/installs/pandoc.md +1036 -0
  104. package/src/installs/pinentry.js +492 -26
  105. package/src/installs/pinentry.md +1142 -0
  106. package/src/installs/pngyu.js +851 -26
  107. package/src/installs/pngyu.md +896 -0
  108. package/src/installs/postman.js +781 -26
  109. package/src/installs/postman.md +940 -0
  110. package/src/installs/procps.js +425 -0
  111. package/src/installs/procps.md +851 -0
  112. package/src/installs/safari-tech-preview.js +355 -25
  113. package/src/installs/safari-tech-preview.md +533 -0
  114. package/src/installs/sfnt2woff.js +640 -26
  115. package/src/installs/sfnt2woff.md +795 -0
  116. package/src/installs/shellcheck.js +463 -26
  117. package/src/installs/shellcheck.md +1005 -0
  118. package/src/installs/slack.js +722 -25
  119. package/src/installs/slack.md +865 -0
  120. package/src/installs/snagit.js +566 -25
  121. package/src/installs/snagit.md +844 -0
  122. package/src/installs/software-properties-common.js +372 -0
  123. package/src/installs/software-properties-common.md +805 -0
  124. package/src/installs/spotify.js +858 -25
  125. package/src/installs/spotify.md +901 -0
  126. package/src/installs/studio-3t.js +803 -26
  127. package/src/installs/studio-3t.md +918 -0
  128. package/src/installs/sublime-text.js +780 -25
  129. package/src/installs/sublime-text.md +914 -0
  130. package/src/installs/superwhisper.js +687 -25
  131. package/src/installs/superwhisper.md +630 -0
  132. package/src/installs/tailscale.js +727 -26
  133. package/src/installs/tailscale.md +1100 -0
  134. package/src/installs/tar.js +389 -0
  135. package/src/installs/tar.md +946 -0
  136. package/src/installs/termius.js +780 -26
  137. package/src/installs/termius.md +844 -0
  138. package/src/installs/terraform.js +761 -26
  139. package/src/installs/terraform.md +899 -0
  140. package/src/installs/tidal.js +752 -25
  141. package/src/installs/tidal.md +864 -0
  142. package/src/installs/tmux.js +328 -26
  143. package/src/installs/tmux.md +1030 -0
  144. package/src/installs/tree.js +393 -26
  145. package/src/installs/tree.md +833 -0
  146. package/src/installs/unzip.js +460 -0
  147. package/src/installs/unzip.md +879 -0
  148. package/src/installs/vim.js +403 -26
  149. package/src/installs/vim.md +1040 -0
  150. package/src/installs/vlc.js +803 -26
  151. package/src/installs/vlc.md +927 -0
  152. package/src/installs/vscode.js +825 -26
  153. package/src/installs/vscode.md +1002 -0
  154. package/src/installs/wget.js +415 -0
  155. package/src/installs/wget.md +791 -0
  156. package/src/installs/whatsapp.js +710 -25
  157. package/src/installs/whatsapp.md +854 -0
  158. package/src/installs/winpty.js +352 -0
  159. package/src/installs/winpty.md +620 -0
  160. package/src/installs/woff2.js +535 -26
  161. package/src/installs/woff2.md +977 -0
  162. package/src/installs/wsl.js +572 -0
  163. package/src/installs/wsl.md +699 -0
  164. package/src/installs/xcode-clt.js +520 -0
  165. package/src/installs/xcode-clt.md +351 -0
  166. package/src/installs/xcode.js +542 -26
  167. package/src/installs/xcode.md +573 -0
  168. package/src/installs/yarn.js +806 -26
  169. package/src/installs/yarn.md +1074 -0
  170. package/src/installs/yq.js +636 -26
  171. package/src/installs/yq.md +944 -0
  172. package/src/installs/yt-dlp.js +683 -26
  173. package/src/installs/yt-dlp.md +946 -0
  174. package/src/installs/yum-utils.js +297 -0
  175. package/src/installs/yum-utils.md +648 -0
  176. package/src/installs/zoom.js +740 -25
  177. package/src/installs/zoom.md +884 -0
  178. package/src/scripts/README.md +567 -45
  179. package/src/scripts/STATUS.md +208 -0
  180. package/src/scripts/afk.js +395 -7
  181. package/src/scripts/backup-all.js +731 -9
  182. package/src/scripts/backup-source.js +711 -8
  183. package/src/scripts/brewd.js +373 -7
  184. package/src/scripts/brewi.js +505 -9
  185. package/src/scripts/brewr.js +512 -9
  186. package/src/scripts/brews.js +462 -9
  187. package/src/scripts/brewu.js +488 -7
  188. package/src/scripts/c.js +185 -7
  189. package/src/scripts/ccurl.js +325 -8
  190. package/src/scripts/certbot-crontab-init.js +488 -8
  191. package/src/scripts/certbot-init.js +641 -9
  192. package/src/scripts/ch.js +339 -7
  193. package/src/scripts/claude-danger.js +253 -8
  194. package/src/scripts/clean-dev.js +419 -8
  195. package/src/scripts/clear-dns-cache.js +525 -7
  196. package/src/scripts/clone.js +417 -7
  197. package/src/scripts/code-all.js +420 -7
  198. package/src/scripts/count-files.js +195 -8
  199. package/src/scripts/count-folders.js +195 -8
  200. package/src/scripts/count.js +248 -8
  201. package/src/scripts/d.js +203 -7
  202. package/src/scripts/datauri.js +373 -8
  203. package/src/scripts/delete-files.js +363 -7
  204. package/src/scripts/docker-clean.js +410 -8
  205. package/src/scripts/dp.js +426 -7
  206. package/src/scripts/e.js +375 -9
  207. package/src/scripts/empty-trash.js +497 -7
  208. package/src/scripts/evm.js +428 -9
  209. package/src/scripts/fetch-github-repos.js +441 -10
  210. package/src/scripts/get-channel.js +329 -8
  211. package/src/scripts/get-course.js +384 -11
  212. package/src/scripts/get-dependencies.js +290 -9
  213. package/src/scripts/get-folder.js +783 -10
  214. package/src/scripts/get-tunes.js +411 -10
  215. package/src/scripts/get-video.js +352 -9
  216. package/src/scripts/git-backup.js +561 -9
  217. package/src/scripts/git-clone.js +477 -9
  218. package/src/scripts/git-pup.js +303 -7
  219. package/src/scripts/git-push.js +380 -8
  220. package/src/scripts/h.js +607 -9
  221. package/src/scripts/hide-desktop-icons.js +483 -7
  222. package/src/scripts/hide-hidden-files.js +522 -7
  223. package/src/scripts/install-dependencies-from.js +440 -9
  224. package/src/scripts/ips.js +647 -10
  225. package/src/scripts/iso.js +354 -8
  226. package/src/scripts/killni.js +561 -7
  227. package/src/scripts/ll.js +451 -8
  228. package/src/scripts/local-ip.js +310 -8
  229. package/src/scripts/m.js +508 -8
  230. package/src/scripts/map.js +293 -8
  231. package/src/scripts/mkd.js +287 -7
  232. package/src/scripts/ncu-update-all.js +441 -8
  233. package/src/scripts/nginx-init.js +702 -12
  234. package/src/scripts/npmi.js +366 -7
  235. package/src/scripts/o.js +495 -8
  236. package/src/scripts/org-by-date.js +321 -7
  237. package/src/scripts/p.js +208 -7
  238. package/src/scripts/packages.js +313 -8
  239. package/src/scripts/path.js +209 -7
  240. package/src/scripts/ports.js +582 -8
  241. package/src/scripts/q.js +290 -8
  242. package/src/scripts/refresh-files.js +378 -10
  243. package/src/scripts/remove-smaller-files.js +500 -8
  244. package/src/scripts/rename-files-with-date.js +517 -9
  245. package/src/scripts/resize-image.js +523 -9
  246. package/src/scripts/rm-safe.js +653 -8
  247. package/src/scripts/s.js +525 -9
  248. package/src/scripts/set-git-public.js +349 -7
  249. package/src/scripts/show-desktop-icons.js +459 -7
  250. package/src/scripts/show-hidden-files.js +456 -7
  251. package/src/scripts/tpa.js +265 -8
  252. package/src/scripts/tpo.js +264 -7
  253. package/src/scripts/u.js +489 -7
  254. package/src/scripts/vpush.js +422 -8
  255. package/src/scripts/y.js +267 -7
  256. package/src/utils/common/os.js +94 -2
  257. package/src/utils/ubuntu/apt.js +13 -7
@@ -0,0 +1,435 @@
1
+ # Dependency Analysis Summary
2
+
3
+ **Last Updated:** 2026-01-04
4
+ **Total Test-Pending Technologies:** 86
5
+ **Already Documented (Skipped):** 85
6
+ **Analyzed This Run:** 1
7
+ **Successful:** 86
8
+ **Failed:** 0
9
+
10
+ ## Results
11
+
12
+ | Technology | Installer | Documentation | Status |
13
+ |------------|-----------|---------------|--------|
14
+ | Adobe Creative Cloud | src/installs/adobe-creative-cloud.js | src/installs/adobe-creative-cloud.md | Complete - has dependencies |
15
+ | AppCleaner | src/installs/appcleaner.js | src/installs/appcleaner.md | Complete - has dependencies |
16
+ | apt-transport-https | src/installs/apt-transport-https.js | src/installs/apt-transport-https.md | Skipped - already documented |
17
+ | AtomicParsley | src/installs/atomicparsley.js | src/installs/atomicparsley.md | Complete - has dependencies |
18
+ | AWS CLI | src/installs/aws-cli.js | src/installs/aws-cli.md | Complete - has dependencies |
19
+ | Balena Etcher | src/installs/balena-etcher.js | src/installs/balena-etcher.md | Complete - has dependencies |
20
+ | Bambu Studio | src/installs/bambu-studio.js | src/installs/bambu-studio.md | Complete - has dependencies |
21
+ | Bash Completion 2 | src/installs/bash-completion.js | src/installs/bash-completion.md | Complete - has dependencies |
22
+ | Bash | src/installs/bash.js | src/installs/bash.md | Complete - has dependencies |
23
+ | Beyond Compare | src/installs/beyond-compare.js | src/installs/beyond-compare.md | Complete - has dependencies |
24
+ | build-essential | src/installs/build-essential.js | src/installs/build-essential.md | Skipped - already documented |
25
+ | ca-certificates | src/installs/ca-certificates.js | src/installs/ca-certificates.md | Skipped - already documented |
26
+ | Caffeine | src/installs/caffeine.js | src/installs/caffeine.md | Complete - has dependencies |
27
+ | Camtasia | src/installs/camtasia.js | src/installs/camtasia.md | Complete - has dependencies |
28
+ | ChatGPT | src/installs/chatgpt.js | src/installs/chatgpt.md | Complete - has dependencies |
29
+ | Chocolatey | src/installs/chocolatey.js | src/installs/chocolatey.md | Skipped - already documented |
30
+ | Google Chrome Canary | src/installs/chrome-canary.js | src/installs/chrome-canary.md | Complete - has dependencies |
31
+ | Chromium | src/installs/chromium.js | src/installs/chromium.md | Complete - has dependencies |
32
+ | Claude Code | src/installs/claude-code.js | src/installs/claude-code.md | Complete - has dependencies |
33
+ | cURL | src/installs/curl.js | src/installs/curl.md | Complete - has dependencies |
34
+ | Cursor | src/installs/cursor.js | src/installs/cursor.md | Complete - has dependencies |
35
+ | DbSchema | src/installs/dbschema.js | src/installs/dbschema.md | Complete - has dependencies |
36
+ | Development Tools | src/installs/development-tools.js | src/installs/development-tools.md | Skipped - already documented |
37
+ | Docker | src/installs/docker.js | src/installs/docker.md | Complete - has dependencies |
38
+ | Draw.IO | src/installs/drawio.js | src/installs/drawio.md | Complete - has dependencies |
39
+ | Elmedia Player | src/installs/elmedia-player.js | src/installs/elmedia-player.md | Complete - has dependencies |
40
+ | FFmpeg | src/installs/ffmpeg.js | src/installs/ffmpeg.md | Complete - has dependencies |
41
+ | file | src/installs/file.js | src/installs/file.md | Skipped - already documented |
42
+ | Gemini CLI | src/installs/gemini-cli.js | src/installs/gemini-cli.md | Complete - has dependencies |
43
+ | Git | src/installs/git.js | src/installs/git.md | Complete - has dependencies |
44
+ | gitego | src/installs/gitego.js | src/installs/gitego.md | Complete - has dependencies |
45
+ | Go | src/installs/go.js | src/installs/go.md | Complete - has dependencies |
46
+ | Google Chrome | src/installs/google-chrome.js | src/installs/google-chrome.md | Complete - has dependencies |
47
+ | GPG | src/installs/gpg.js | src/installs/gpg.md | Complete - has dependencies |
48
+ | Homebrew | src/installs/homebrew.js | src/installs/homebrew.md | Complete - has dependencies |
49
+ | ImageOptim | src/installs/imageoptim.js | src/installs/imageoptim.md | Complete - has dependencies |
50
+ | jq | src/installs/jq.js | src/installs/jq.md | Complete - has dependencies |
51
+ | Keyboard Maestro | src/installs/keyboard-maestro.js | src/installs/keyboard-maestro.md | Complete - has dependencies |
52
+ | LaTeX | src/installs/latex.js | src/installs/latex.md | Complete - has dependencies |
53
+ | LFTP | src/installs/lftp.js | src/installs/lftp.md | Complete - has dependencies |
54
+ | lsb-release | src/installs/lsb-release.js | src/installs/lsb-release.md | Skipped - already documented |
55
+ | Messenger | src/installs/messenger.js | src/installs/messenger.md | Complete - has dependencies |
56
+ | Microsoft Office 365 | src/installs/microsoft-office.js | src/installs/microsoft-office.md | Complete - has dependencies |
57
+ | Microsoft Teams | src/installs/microsoft-teams.js | src/installs/microsoft-teams.md | Complete - has dependencies |
58
+ | Node.js | src/installs/node.js | src/installs/node.md | Complete - has dependencies |
59
+ | Nord Pass | src/installs/nordpass.js | src/installs/nordpass.md | Complete - has dependencies |
60
+ | nvm | src/installs/nvm.js | src/installs/nvm.md | Complete - has dependencies |
61
+ | OpenSSH | src/installs/openssh.js | src/installs/openssh.md | Complete - has dependencies |
62
+ | Pandoc | src/installs/pandoc.js | src/installs/pandoc.md | Complete - has dependencies |
63
+ | pinentry | src/installs/pinentry.js | src/installs/pinentry.md | Complete - has dependencies |
64
+ | Pngyu | src/installs/pngyu.js | src/installs/pngyu.md | Complete - has dependencies |
65
+ | Postman | src/installs/postman.js | src/installs/postman.md | Complete - has dependencies |
66
+ | procps | src/installs/procps.js | src/installs/procps.md | Skipped - already documented |
67
+ | Safari Technology Preview | src/installs/safari-tech-preview.js | src/installs/safari-tech-preview.md | Complete - has dependencies |
68
+ | sfnt2woff | src/installs/sfnt2woff.js | src/installs/sfnt2woff.md | Complete - has dependencies |
69
+ | ShellCheck | src/installs/shellcheck.js | src/installs/shellcheck.md | Complete - has dependencies |
70
+ | Slack | src/installs/slack.js | src/installs/slack.md | Complete - has dependencies |
71
+ | Snagit | src/installs/snagit.js | src/installs/snagit.md | Complete - has dependencies |
72
+ | software-properties-common | src/installs/software-properties-common.js | src/installs/software-properties-common.md | Skipped - already documented |
73
+ | Spotify | src/installs/spotify.js | src/installs/spotify.md | Complete - has dependencies |
74
+ | Studio 3T | src/installs/studio-3t.js | src/installs/studio-3t.md | Complete - has dependencies |
75
+ | Sublime Text | src/installs/sublime-text.js | src/installs/sublime-text.md | Complete - has dependencies |
76
+ | Superwhisper | src/installs/superwhisper.js | src/installs/superwhisper.md | Complete - has dependencies |
77
+ | Tailscale | src/installs/tailscale.js | src/installs/tailscale.md | Complete - has dependencies |
78
+ | tar | src/installs/tar.js | src/installs/tar.md | Skipped - already documented |
79
+ | Termius | src/installs/termius.js | src/installs/termius.md | Complete - has dependencies |
80
+ | Terraform | src/installs/terraform.js | src/installs/terraform.md | Complete - has dependencies |
81
+ | Tidal | src/installs/tidal.js | src/installs/tidal.md | Complete - has dependencies |
82
+ | tmux | src/installs/tmux.js | src/installs/tmux.md | Complete - has dependencies |
83
+ | Tree | src/installs/tree.js | src/installs/tree.md | Complete - has dependencies |
84
+ | unzip | src/installs/unzip.js | src/installs/unzip.md | Skipped - already documented |
85
+ | Vim | src/installs/vim.js | src/installs/vim.md | Complete - has dependencies |
86
+ | VLC | src/installs/vlc.js | src/installs/vlc.md | Complete - has dependencies |
87
+ | Visual Studio Code | src/installs/vscode.js | src/installs/vscode.md | Complete - has dependencies |
88
+ | wget | src/installs/wget.js | src/installs/wget.md | Skipped - already documented |
89
+ | WhatsApp | src/installs/whatsapp.js | src/installs/whatsapp.md | Complete - has dependencies |
90
+ | winpty | src/installs/winpty.js | src/installs/winpty.md | Skipped - already documented |
91
+ | woff2 | src/installs/woff2.js | src/installs/woff2.md | Complete - has dependencies |
92
+ | WSL 2 | src/installs/wsl.js | src/installs/wsl.md | Skipped - already documented |
93
+ | Xcode CLT | src/installs/xcode-clt.js | src/installs/xcode-clt.md | Complete - none required |
94
+ | Xcode | src/installs/xcode.js | src/installs/xcode.md | Skipped - already documented |
95
+ | Yarn | src/installs/yarn.js | src/installs/yarn.md | Complete - has dependencies |
96
+ | yq | src/installs/yq.js | src/installs/yq.md | Complete - has dependencies |
97
+ | yt-dlp | src/installs/yt-dlp.js | src/installs/yt-dlp.md | Complete - has dependencies |
98
+ | yum-utils | src/installs/yum-utils.js | src/installs/yum-utils.md | Skipped - already documented |
99
+ | Zoom | src/installs/zoom.js | src/installs/zoom.md | Complete - has dependencies |
100
+
101
+ ## Status Key
102
+
103
+ - **Complete - has dependencies**: Analysis complete, technology requires one or more dependencies
104
+ - **Complete - none required**: Analysis complete, technology has no external dependencies
105
+ - **Skipped - already documented**: Technology already had a ## Dependencies section, no analysis needed
106
+ - **Failed - analysis error**: Agent encountered an error during analysis
107
+
108
+ ## Failures
109
+
110
+ *No failures recorded.*
111
+
112
+ ## Next Steps
113
+
114
+ - Review the Dependencies sections in each markdown file for accuracy
115
+ - Ensure all acquisition commands are correct for each platform
116
+ - Proceed with installation testing using the install-tester agent
117
+
118
+ ---
119
+
120
+ ## Known Dependencies
121
+
122
+ This section catalogs the dependencies used across all installer scripts. Each subsection lists a dependency and the installers that require it. An installer may appear under multiple dependencies.
123
+
124
+ **Note:** This list is built incrementally as installer markdown files are reviewed. Dependencies marked with "(optional)" are recommended but not strictly required.
125
+
126
+ ### Homebrew
127
+
128
+ Package manager for macOS. Many installers rely on Homebrew for macOS installations.
129
+
130
+ **Used by:**
131
+ - curl
132
+ - docker
133
+ - ffmpeg
134
+ - git
135
+ - gpg
136
+ - node
137
+ - nvm
138
+ - terraform
139
+ - vscode
140
+ - yarn
141
+
142
+ ### Chocolatey
143
+
144
+ Package manager for Windows. Many installers rely on Chocolatey for Windows installations.
145
+
146
+ **Used by:**
147
+ - curl
148
+ - docker
149
+ - ffmpeg
150
+ - git
151
+ - gpg
152
+ - node
153
+ - nvm
154
+ - terraform
155
+ - vscode
156
+ - yarn
157
+
158
+ ### curl
159
+
160
+ Command-line tool for transferring data. Used to download installation scripts and packages.
161
+
162
+ **Used by:**
163
+ - docker
164
+ - ffmpeg
165
+ - homebrew
166
+ - node
167
+ - nvm
168
+ - terraform
169
+ - yarn
170
+
171
+ ### ca-certificates
172
+
173
+ Certificate authority certificates for SSL/TLS verification.
174
+
175
+ **Used by:**
176
+ - docker
177
+ - node
178
+ - terraform
179
+ - yarn
180
+
181
+ ### gnupg (GPG)
182
+
183
+ GNU Privacy Guard for verifying package signatures.
184
+
185
+ **Used by:**
186
+ - node
187
+ - terraform
188
+ - vscode
189
+ - yarn
190
+
191
+ ### wget
192
+
193
+ Network downloader utility. Alternative to curl for downloading files.
194
+
195
+ **Used by:**
196
+ - ffmpeg
197
+ - terraform
198
+ - vscode
199
+
200
+ ### build-essential
201
+
202
+ Essential compilation tools for Linux (gcc, make, etc.).
203
+
204
+ **Used by:**
205
+ - homebrew
206
+ - node (optional)
207
+
208
+ ### git
209
+
210
+ Version control system. Required for cloning repositories and some installation methods.
211
+
212
+ **Used by:**
213
+ - homebrew
214
+ - nvm
215
+
216
+ ### software-properties-common
217
+
218
+ Ubuntu package providing `add-apt-repository` command.
219
+
220
+ **Used by:**
221
+ - git (optional)
222
+ - terraform
223
+
224
+ ### unzip
225
+
226
+ Archive extraction utility.
227
+
228
+ **Used by:**
229
+ - ffmpeg (Git Bash)
230
+ - terraform (Raspberry Pi OS)
231
+
232
+ ### yum-utils
233
+
234
+ YUM package manager utilities for Amazon Linux/RHEL.
235
+
236
+ **Used by:**
237
+ - terraform
238
+
239
+ ### winpty
240
+
241
+ Windows PTY interface for Git Bash terminal compatibility.
242
+
243
+ **Used by (optional for Git Bash):**
244
+ - docker
245
+ - nvm
246
+ - vscode
247
+ - yarn
248
+
249
+ ### Xcode Command Line Tools
250
+
251
+ Apple's developer tools for macOS compilation.
252
+
253
+ **Used by:**
254
+ - ffmpeg
255
+ - homebrew
256
+
257
+ ### apt-transport-https
258
+
259
+ APT transport for downloading via HTTPS (Ubuntu/Debian).
260
+
261
+ **Used by:**
262
+ - vscode
263
+
264
+ ### lsb-release
265
+
266
+ Linux Standard Base release info utility.
267
+
268
+ **Used by:**
269
+ - terraform
270
+
271
+ ### procps
272
+
273
+ Process utilities for Linux (provides `ps`, etc.).
274
+
275
+ **Used by:**
276
+ - homebrew
277
+
278
+ ### file
279
+
280
+ File type identification utility.
281
+
282
+ **Used by:**
283
+ - homebrew
284
+
285
+ ### tar
286
+
287
+ Archive utility for extracting tarballs.
288
+
289
+ **Used by:**
290
+ - ffmpeg
291
+
292
+ ### WSL 2
293
+
294
+ Windows Subsystem for Linux version 2.
295
+
296
+ **Used by:**
297
+ - docker (Windows, for Docker Desktop)
298
+
299
+ ### pinentry-mac
300
+
301
+ PIN entry dialog for GPG on macOS.
302
+
303
+ **Used by:**
304
+ - gpg
305
+
306
+ ### Development Tools
307
+
308
+ Group package for RHEL/Amazon Linux providing compilation tools.
309
+
310
+ **Used by:**
311
+ - homebrew
312
+
313
+ ---
314
+
315
+ ## Dependency Handling Behavior
316
+
317
+ This section documents how each installer handles its dependencies at runtime. Understanding this behavior helps users know what to expect when running `dev install <tool>`.
318
+
319
+ ### Behavior Categories
320
+
321
+ | Category | Description | User Action Required |
322
+ |----------|-------------|---------------------|
323
+ | **Exits with Message** | Installation stops and displays instructions | User must install dependency first |
324
+ | **Auto-Installs Inline** | Prerequisites installed automatically | None - fully automatic |
325
+ | **Pre-installed/Bundled** | Dependency already present on system | None |
326
+
327
+ ### Platform-Specific Patterns
328
+
329
+ #### macOS (Homebrew Required)
330
+
331
+ Most macOS installers require Homebrew. If Homebrew is not installed:
332
+ - Installation **exits gracefully** with a message
333
+ - User is instructed to run `dev install homebrew` first
334
+ - Installation does **NOT** proceed automatically
335
+
336
+ **Installers that exit if Homebrew is missing:**
337
+ - adobe-creative-cloud, appcleaner, atomicparsley, aws-cli, balena-etcher, bambu-studio
338
+ - bash, bash-completion, beyond-compare, caffeine, camtasia, chatgpt
339
+ - chrome-canary, chromium, cursor, dbschema, docker, drawio
340
+ - elmedia-player, ffmpeg, git, go, google-chrome, gpg, imageoptim
341
+ - jq, keyboard-maestro, latex, lftp, messenger, microsoft-office
342
+ - microsoft-teams, node, nordpass, nvm, openssh, pandoc, pinentry
343
+ - pngyu, postman, safari-tech-preview, sfnt2woff, shellcheck, slack
344
+ - snagit, spotify, studio-3t, sublime-text, superwhisper, tailscale
345
+ - termius, terraform, tidal, tmux, tree, vim, vlc, vscode, wget
346
+ - whatsapp, woff2, xcode, yarn, yq, yt-dlp, zoom
347
+
348
+ **Exception - Docker throws an error instead of returning:**
349
+ - docker.js throws an `Error` if Homebrew is missing (install fails with error)
350
+
351
+ #### Windows (Chocolatey Required)
352
+
353
+ Most Windows installers require Chocolatey. If Chocolatey is not installed:
354
+ - Installation **exits gracefully** with a message
355
+ - User is instructed to install Chocolatey (PowerShell command provided)
356
+ - Installation does **NOT** proceed automatically
357
+
358
+ **Installers that exit if Chocolatey is missing:**
359
+ - atomicparsley, aws-cli, balena-etcher, bambu-studio, beyond-compare
360
+ - camtasia, chrome-canary, chromium, curl, cursor, dbschema, docker
361
+ - drawio, ffmpeg, git, go, google-chrome, gpg, jq, latex, lftp
362
+ - messenger, microsoft-office, microsoft-teams, node, nordpass, nvm
363
+ - openssh, pandoc, pinentry, postman, shellcheck, slack, snagit
364
+ - spotify, studio-3t, sublime-text, tailscale, termius, terraform
365
+ - tidal, tmux, tree, vim, vlc, vscode, wget, whatsapp, yarn, yq
366
+ - yt-dlp, zoom
367
+
368
+ **Exception - Docker throws an error instead of returning:**
369
+ - docker.js throws an `Error` if Chocolatey is missing (install fails with error)
370
+
371
+ #### Git Bash (Mixed Behavior)
372
+
373
+ Git Bash installers have varying behavior:
374
+
375
+ **Pre-installed/Bundled (no action needed):**
376
+ - curl - bundled with Git for Windows
377
+ - git - bundled with Git for Windows (Git Bash IS Git)
378
+
379
+ **Uses Chocolatey via PowerShell:**
380
+ - docker, node, nvm, terraform, vscode, yarn - call `powershell.exe` to run Chocolatey
381
+ - If Chocolatey is not installed, installation exits with instructions
382
+
383
+ **Not Supported:**
384
+ - homebrew - not available for Git Bash (advises WSL)
385
+
386
+ #### Ubuntu/Debian/Raspbian (Auto-Install Prerequisites)
387
+
388
+ Linux installers using APT typically **auto-install prerequisites inline**. The user does not need to install dependencies first.
389
+
390
+ **Examples of auto-installed prerequisites:**
391
+ - docker.js: Installs `ca-certificates`, `curl` automatically
392
+ - node.js: Installs `curl`, `ca-certificates`, `gnupg` automatically
393
+ - vscode.js: Installs `wget`, `gpg`, `apt-transport-https` automatically
394
+ - terraform.js: Installs `gnupg`, `software-properties-common`, `wget` automatically
395
+ - homebrew.js: Installs `build-essential`, `procps`, `curl`, `file`, `git` automatically
396
+
397
+ **Simple APT installers (no special prerequisites):**
398
+ - curl, git, vim, tree, tmux, jq, wget, gpg, openssh, pandoc, shellcheck
399
+
400
+ #### Amazon Linux (Auto-Install Prerequisites)
401
+
402
+ Amazon Linux installers using DNF/YUM typically **auto-install prerequisites inline**.
403
+
404
+ **Examples of auto-installed prerequisites:**
405
+ - terraform.js: Installs `yum-utils` automatically
406
+ - homebrew.js: Installs `Development Tools` group, `procps-ng`, `curl`, `file`, `git` automatically
407
+
408
+ **Simple DNF/YUM installers (no special prerequisites):**
409
+ - curl, git, vim, tree, tmux, jq, wget, gpg
410
+
411
+ #### WSL (Ubuntu Behavior)
412
+
413
+ WSL installers follow the same behavior as Ubuntu:
414
+ - Prerequisites are **auto-installed inline**
415
+ - No manual dependency installation required
416
+
417
+ ### Summary Table by Installer
418
+
419
+ | Installer | macOS | Windows | Git Bash | Ubuntu/Debian | Amazon Linux |
420
+ |-----------|-------|---------|----------|---------------|--------------|
421
+ | curl | Exits (Homebrew) | Exits (Choco) | Bundled | Auto-install | Auto-install |
422
+ | docker | **Throws** (Homebrew) | **Throws** (Choco) | PowerShell | Auto-install | Auto-install |
423
+ | git | Exits (Homebrew) | Exits (Choco) | Bundled | Auto-install | Auto-install |
424
+ | homebrew | N/A (is the dep) | Not supported | Not supported | Auto-install | Auto-install |
425
+ | node | Exits (Homebrew) | Exits (Choco) | PowerShell | Auto-install | Auto-install |
426
+ | terraform | Exits (Homebrew) | Exits (Choco) | PowerShell | Auto-install | Auto-install |
427
+ | vscode | Exits (Homebrew) | Exits (Choco) | PowerShell | Auto-install | Auto-install |
428
+
429
+ ### Key Takeaways
430
+
431
+ 1. **macOS/Windows users**: Must install package manager (Homebrew/Chocolatey) first
432
+ 2. **Linux users**: Dependencies are handled automatically - just run `dev install <tool>`
433
+ 3. **Git Bash users**: Some tools bundled, others require Chocolatey on Windows host
434
+ 4. **Most installers exit gracefully** with helpful messages rather than throwing errors
435
+ 5. **docker.js is an exception** - it throws an error if package manager is missing