@fredlackey/devutils 0.0.1 → 0.0.3

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 (259) 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
  258. package/src/utils/windows/choco.js +82 -26
  259. package/src/utils/windows/winget.js +89 -27
@@ -0,0 +1,988 @@
1
+ # Installing Homebrew
2
+
3
+ ## Overview
4
+
5
+ Homebrew is a free and open-source package management system that simplifies the installation of software on macOS and Linux. Originally created for macOS to fill the void of a missing system package manager, Homebrew has expanded to support Linux distributions. It installs packages to their own directory and symlinks their files into standard locations, avoiding conflicts with system software.
6
+
7
+ Key features of Homebrew:
8
+
9
+ - **Simple installation**: Install software with a single command (`brew install <package>`)
10
+ - **Dependency management**: Automatically installs required dependencies
11
+ - **Binary packages (bottles)**: Pre-compiled packages for fast installation on supported platforms
12
+ - **Easy updates**: Update all installed packages with `brew upgrade`
13
+
14
+ **Platform Support Summary**:
15
+
16
+ | Platform | Support Level | Notes |
17
+ |----------|---------------|-------|
18
+ | macOS (Intel/Apple Silicon) | Full | Primary platform with complete bottle support |
19
+ | Ubuntu/Debian (x86_64) | Full | Complete bottle support via Linuxbrew |
20
+ | Amazon Linux (x86_64) | Full | Complete bottle support via Linuxbrew |
21
+ | WSL (Ubuntu on Windows) | Full | Complete bottle support via Linuxbrew |
22
+ | Raspberry Pi OS (ARM64) | Limited | No bottles; packages compile from source |
23
+ | Raspberry Pi OS (ARM32) | Minimal | Tier 3 support; requires manual Ruby installation |
24
+ | Windows (Native) | Not Supported | Use WSL for Homebrew on Windows |
25
+ | Git Bash | Not Supported | Use WSL for Homebrew on Windows |
26
+
27
+ ## Dependencies
28
+
29
+ ### macOS (Homebrew)
30
+ - **Required:**
31
+ - `/bin/bash` - Pre-installed with macOS
32
+ - `curl` - Pre-installed with macOS
33
+ - **Optional:** None
34
+ - **Auto-installed:**
35
+ - Xcode Command Line Tools (includes compilers, git, and build tools) - Installed automatically by the Homebrew installer if not already present
36
+
37
+ ### Ubuntu (APT/Snap)
38
+ - **Required:**
39
+ - `build-essential` - Install via `sudo apt-get install -y build-essential`
40
+ - `procps` - Install via `sudo apt-get install -y procps`
41
+ - `curl` - Install via `sudo apt-get install -y curl`
42
+ - `file` - Install via `sudo apt-get install -y file`
43
+ - `git` - Install via `sudo apt-get install -y git`
44
+ - `/bin/bash` - Pre-installed on Ubuntu
45
+ - `sudo` privileges
46
+ - **Optional:** None
47
+ - **Auto-installed:**
48
+ - `tar` - Installed as dependency of build-essential
49
+
50
+ ### Raspberry Pi OS (APT/Snap)
51
+ - **Required (64-bit aarch64):**
52
+ - `build-essential` - Install via `sudo apt-get install -y build-essential`
53
+ - `procps` - Install via `sudo apt-get install -y procps`
54
+ - `curl` - Install via `sudo apt-get install -y curl`
55
+ - `file` - Install via `sudo apt-get install -y file`
56
+ - `git` - Install via `sudo apt-get install -y git`
57
+ - `/bin/bash` - Pre-installed on Raspberry Pi OS
58
+ - `sudo` privileges
59
+ - **Required (32-bit armv7l):**
60
+ - All of the above, PLUS:
61
+ - `ruby` - Install via `sudo apt-get install -y ruby`
62
+ - `ruby-dev` - Install via `sudo apt-get install -y ruby-dev`
63
+ - **Optional:**
64
+ - Swap space (recommended for systems with limited RAM to avoid out-of-memory errors during package compilation) - Configure via `sudo fallocate -l 2G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile`
65
+ - **Auto-installed:**
66
+ - `tar` - Installed as dependency of build-essential
67
+
68
+ ### Amazon Linux (DNF/YUM)
69
+ - **Required:**
70
+ - Development Tools group - Install via `sudo dnf groupinstall -y "Development Tools"` (AL2023) or `sudo yum groupinstall -y "Development Tools"` (AL2)
71
+ - `procps-ng` - Install via `sudo dnf install -y procps-ng` (AL2023) or `procps` via `sudo yum install -y procps` (AL2)
72
+ - `curl` - Install via `sudo dnf install -y curl` (AL2023) or `sudo yum install -y curl` (AL2)
73
+ - `file` - Install via `sudo dnf install -y file` (AL2023) or `sudo yum install -y file` (AL2)
74
+ - `git` - Install via `sudo dnf install -y git` (AL2023) or `sudo yum install -y git` (AL2)
75
+ - `/bin/bash` - Pre-installed on Amazon Linux
76
+ - `sudo` privileges
77
+ - **Optional:** None
78
+ - **Auto-installed:**
79
+ - `gcc`, `g++`, `make` and various compiler dependencies - Installed via Development Tools group
80
+
81
+ ### Windows (Chocolatey/winget)
82
+ - **Required:** Installation not supported on native Windows
83
+ - **Optional:** None
84
+ - **Auto-installed:** None
85
+ - **Note:** Homebrew does not run natively on Windows. Use Windows Subsystem for Linux (WSL) with Ubuntu to run Homebrew. See WSL installation instructions in the Platform-Specific Installation section below.
86
+
87
+ ### Git Bash (Manual/Portable)
88
+ - **Required:** Installation not supported in Git Bash
89
+ - **Optional:** None
90
+ - **Auto-installed:** None
91
+ - **Note:** Git Bash does not provide a full Linux userspace required by Homebrew. Use Windows Subsystem for Linux (WSL) with Ubuntu to run Homebrew. See WSL installation instructions in the Platform-Specific Installation section below.
92
+
93
+ ## Prerequisites
94
+
95
+ Before installing Homebrew on any platform, ensure:
96
+
97
+ 1. **Internet connectivity** - Required to download the installer and packages
98
+ 2. **Command-line access** - Terminal (macOS), bash shell (Linux), or WSL terminal (Windows)
99
+ 3. **Administrative privileges** - Required for initial installation (sudo access on Linux)
100
+ 4. **Sufficient disk space** - At least 5 GB free (Homebrew itself plus cached downloads)
101
+
102
+ ## Platform-Specific Installation
103
+
104
+ ### macOS (Homebrew)
105
+
106
+ #### Prerequisites
107
+
108
+ - macOS 14 (Sonoma) or later for full support (macOS 10.15-13 may work but are unsupported)
109
+ - Apple Silicon (M1/M2/M3/M4) or 64-bit Intel processor
110
+ - Command Line Tools for Xcode (installed automatically if not present)
111
+ - Bash shell available (default on macOS)
112
+
113
+ Run this command to pre-install the Command Line Tools (optional, as the Homebrew installer handles this automatically):
114
+
115
+ ```bash
116
+ xcode-select --install
117
+ ```
118
+
119
+ #### Installation Steps
120
+
121
+ Run the following command in Terminal to install Homebrew non-interactively:
122
+
123
+ ```bash
124
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
125
+ ```
126
+
127
+ The `NONINTERACTIVE=1` environment variable tells the installer to run without prompting for confirmation, making it suitable for automation and scripts. The installer will:
128
+
129
+ 1. Download Homebrew to `/opt/homebrew` (Apple Silicon) or `/usr/local` (Intel)
130
+ 2. Install the Command Line Tools for Xcode if not already present
131
+ 3. Configure the Homebrew environment
132
+
133
+ **Post-Installation PATH Configuration**:
134
+
135
+ After installation, add Homebrew to your shell PATH. The exact command depends on your processor:
136
+
137
+ **For Apple Silicon Macs (M1/M2/M3/M4):**
138
+
139
+ ```bash
140
+ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
141
+ eval "$(/opt/homebrew/bin/brew shellenv)"
142
+ ```
143
+
144
+ **For Intel Macs:**
145
+
146
+ ```bash
147
+ echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zshrc
148
+ eval "$(/usr/local/bin/brew shellenv)"
149
+ ```
150
+
151
+ **Note**: The above commands assume you are using zsh (the default shell on modern macOS). If you use bash, replace `~/.zshrc` with `~/.bash_profile`.
152
+
153
+ #### Verification
154
+
155
+ Confirm Homebrew is installed and configured correctly:
156
+
157
+ ```bash
158
+ brew --version
159
+ ```
160
+
161
+ Expected output (version numbers may vary):
162
+
163
+ ```
164
+ Homebrew 4.4.15
165
+ ```
166
+
167
+ Run the diagnostic command to check for issues:
168
+
169
+ ```bash
170
+ brew doctor
171
+ ```
172
+
173
+ A healthy installation displays:
174
+
175
+ ```
176
+ Your system is ready to brew.
177
+ ```
178
+
179
+ Test installing a package:
180
+
181
+ ```bash
182
+ brew install --quiet wget
183
+ wget --version
184
+ ```
185
+
186
+ #### Troubleshooting
187
+
188
+ **Problem**: `brew: command not found` after installation
189
+
190
+ **Solution**: The PATH was not configured correctly. Run the shellenv command for your processor:
191
+
192
+ ```bash
193
+ # Apple Silicon
194
+ eval "$(/opt/homebrew/bin/brew shellenv)"
195
+
196
+ # Intel
197
+ eval "$(/usr/local/bin/brew shellenv)"
198
+ ```
199
+
200
+ Then add it to your shell configuration file as shown in the Installation Steps.
201
+
202
+ **Problem**: Xcode Command Line Tools installation hangs or fails
203
+
204
+ **Solution**: Install the Command Line Tools manually before running the Homebrew installer:
205
+
206
+ ```bash
207
+ xcode-select --install
208
+ ```
209
+
210
+ Wait for the installation dialog to complete, then re-run the Homebrew installation command.
211
+
212
+ **Problem**: Permission errors during installation
213
+
214
+ **Solution**: Ensure you own the Homebrew directories:
215
+
216
+ ```bash
217
+ # Apple Silicon
218
+ sudo chown -R $(whoami) /opt/homebrew
219
+
220
+ # Intel
221
+ sudo chown -R $(whoami) /usr/local/Homebrew
222
+ ```
223
+
224
+ **Problem**: `brew update` fails with git errors
225
+
226
+ **Solution**: Reset the Homebrew repository:
227
+
228
+ ```bash
229
+ brew update-reset
230
+ ```
231
+
232
+ ---
233
+
234
+ ### Ubuntu/Debian (APT)
235
+
236
+ #### Prerequisites
237
+
238
+ - Ubuntu 20.04 LTS or later, or Debian 10 (Buster) or later (64-bit x86_64)
239
+ - sudo privileges
240
+ - curl and git installed
241
+
242
+ Install the required build dependencies before installing Homebrew:
243
+
244
+ ```bash
245
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
246
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential procps curl file git
247
+ ```
248
+
249
+ This command installs:
250
+ - `build-essential`: Compilers and build tools (gcc, g++, make)
251
+ - `procps`: Process utilities required by Homebrew
252
+ - `curl`: For downloading the installer
253
+ - `file`: File type detection utility
254
+ - `git`: Version control system used by Homebrew
255
+
256
+ #### Installation Steps
257
+
258
+ Run the following command to install Homebrew non-interactively:
259
+
260
+ ```bash
261
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
262
+ ```
263
+
264
+ The installer creates the `/home/linuxbrew/.linuxbrew` directory and installs Homebrew there. This location is used (rather than a user home directory) because it enables the use of pre-compiled binary packages (bottles).
265
+
266
+ **Post-Installation PATH Configuration**:
267
+
268
+ Add Homebrew to your shell PATH:
269
+
270
+ ```bash
271
+ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc
272
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
273
+ ```
274
+
275
+ For zsh users, replace `~/.bashrc` with `~/.zshrc`.
276
+
277
+ #### Verification
278
+
279
+ Confirm Homebrew is installed correctly:
280
+
281
+ ```bash
282
+ brew --version
283
+ ```
284
+
285
+ Expected output (version numbers may vary):
286
+
287
+ ```
288
+ Homebrew 4.4.15
289
+ ```
290
+
291
+ Run diagnostics:
292
+
293
+ ```bash
294
+ brew doctor
295
+ ```
296
+
297
+ Expected output for a healthy installation:
298
+
299
+ ```
300
+ Your system is ready to brew.
301
+ ```
302
+
303
+ Test installing a package:
304
+
305
+ ```bash
306
+ brew install --quiet hello
307
+ hello
308
+ ```
309
+
310
+ Expected output:
311
+
312
+ ```
313
+ Hello, world!
314
+ ```
315
+
316
+ #### Troubleshooting
317
+
318
+ **Problem**: `brew: command not found` after installation
319
+
320
+ **Solution**: The PATH was not configured. Run:
321
+
322
+ ```bash
323
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
324
+ ```
325
+
326
+ Then add it to your shell configuration file.
327
+
328
+ **Problem**: `Error: Failure while executing; tar` during package installation
329
+
330
+ **Solution**: Ensure all build dependencies are installed:
331
+
332
+ ```bash
333
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential procps curl file git
334
+ ```
335
+
336
+ **Problem**: Compilation errors when installing packages
337
+
338
+ **Solution**: Install the GCC compiler provided by Homebrew:
339
+
340
+ ```bash
341
+ brew install --quiet gcc
342
+ ```
343
+
344
+ **Problem**: Slow package installation (compiling from source instead of using bottles)
345
+
346
+ **Solution**: Verify your system meets the bottle requirements. Bottles are only available for x86_64 architecture. Check your architecture:
347
+
348
+ ```bash
349
+ uname -m
350
+ ```
351
+
352
+ If output is `x86_64`, bottles should work. If output is `aarch64` or `armv7l`, see the Raspberry Pi section.
353
+
354
+ ---
355
+
356
+ ### Raspberry Pi OS (APT)
357
+
358
+ #### Prerequisites
359
+
360
+ - Raspberry Pi OS Bookworm or Bullseye (64-bit recommended)
361
+ - Raspberry Pi 3B+ or later (64-bit capable hardware recommended)
362
+ - At least 2 GB RAM (4 GB recommended)
363
+ - sudo privileges
364
+
365
+ **Important Architecture Considerations**:
366
+
367
+ | Architecture | Command `uname -m` | Support Level | Binary Packages |
368
+ |--------------|-------------------|---------------|-----------------|
369
+ | 64-bit | `aarch64` | Tier 3 | No bottles available |
370
+ | 32-bit | `armv7l` | Tier 3 | No bottles; requires manual Ruby |
371
+
372
+ Homebrew on ARM Linux is a Tier 3 platform, meaning:
373
+ - It is supported on a best-effort basis
374
+ - No pre-compiled binary packages (bottles) are available
375
+ - All packages must be compiled from source
376
+ - Installation takes significantly longer than on x86_64 platforms
377
+
378
+ Verify your architecture:
379
+
380
+ ```bash
381
+ uname -m
382
+ ```
383
+
384
+ Install the required build dependencies:
385
+
386
+ ```bash
387
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
388
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential procps curl file git
389
+ ```
390
+
391
+ #### Installation Steps
392
+
393
+ **For 64-bit Raspberry Pi OS (aarch64):**
394
+
395
+ Run the following command to install Homebrew:
396
+
397
+ ```bash
398
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
399
+ ```
400
+
401
+ **Post-Installation PATH Configuration**:
402
+
403
+ ```bash
404
+ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc
405
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
406
+ ```
407
+
408
+ **For 32-bit Raspberry Pi OS (armv7l):**
409
+
410
+ Homebrew on 32-bit ARM requires manual Ruby installation because Homebrew does not distribute a Portable Ruby for this architecture.
411
+
412
+ First, install Ruby from the system package manager:
413
+
414
+ ```bash
415
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y ruby ruby-dev
416
+ ```
417
+
418
+ Then install Homebrew:
419
+
420
+ ```bash
421
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
422
+ ```
423
+
424
+ Configure PATH:
425
+
426
+ ```bash
427
+ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc
428
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
429
+ ```
430
+
431
+ **Note**: Package installation on Raspberry Pi will be slow because all packages compile from source. Consider using the native `apt` package manager for common tools when possible.
432
+
433
+ #### Verification
434
+
435
+ Confirm Homebrew is installed:
436
+
437
+ ```bash
438
+ brew --version
439
+ ```
440
+
441
+ Expected output (version numbers may vary):
442
+
443
+ ```
444
+ Homebrew 4.4.15
445
+ ```
446
+
447
+ Run diagnostics (expect some warnings about unsupported platform):
448
+
449
+ ```bash
450
+ brew doctor
451
+ ```
452
+
453
+ Test installing a package (this will compile from source and may take several minutes):
454
+
455
+ ```bash
456
+ brew install --quiet hello
457
+ hello
458
+ ```
459
+
460
+ #### Troubleshooting
461
+
462
+ **Problem**: `Error: No Homebrew ruby available for aarch64 processors!`
463
+
464
+ **Solution**: Install system Ruby before running the Homebrew installer:
465
+
466
+ ```bash
467
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y ruby ruby-dev
468
+ ```
469
+
470
+ Then re-run the Homebrew installation command.
471
+
472
+ **Problem**: Package installation extremely slow
473
+
474
+ **Solution**: This is expected behavior on ARM platforms because packages compile from source. For frequently-used tools, consider using the native `apt` package manager:
475
+
476
+ ```bash
477
+ # Instead of: brew install wget
478
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y wget
479
+ ```
480
+
481
+ **Problem**: Compilation fails with out-of-memory errors
482
+
483
+ **Solution**: Add swap space to your Raspberry Pi:
484
+
485
+ ```bash
486
+ sudo fallocate -l 2G /swapfile
487
+ sudo chmod 600 /swapfile
488
+ sudo mkswap /swapfile
489
+ sudo swapon /swapfile
490
+ echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
491
+ ```
492
+
493
+ **Problem**: `brew doctor` shows many warnings
494
+
495
+ **Solution**: Warnings about unsupported platform and missing bottles are expected on Raspberry Pi. Focus on actual errors rather than warnings.
496
+
497
+ ---
498
+
499
+ ### Amazon Linux (DNF/YUM)
500
+
501
+ #### Prerequisites
502
+
503
+ - Amazon Linux 2023 (AL2023) or Amazon Linux 2 (AL2)
504
+ - 64-bit x86_64 architecture
505
+ - sudo privileges
506
+ - EC2 instance or compatible environment
507
+
508
+ **Note**: Amazon Linux 2023 uses DNF as the default package manager. Amazon Linux 2 uses YUM. The commands below use DNF; for AL2, substitute `dnf` with `yum`.
509
+
510
+ Install the required development tools and dependencies:
511
+
512
+ ```bash
513
+ # For Amazon Linux 2023
514
+ sudo dnf groupinstall -y "Development Tools"
515
+ sudo dnf install -y procps-ng curl file git
516
+
517
+ # For Amazon Linux 2
518
+ sudo yum groupinstall -y "Development Tools"
519
+ sudo yum install -y procps curl file git
520
+ ```
521
+
522
+ #### Installation Steps
523
+
524
+ Run the following command to install Homebrew non-interactively:
525
+
526
+ ```bash
527
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
528
+ ```
529
+
530
+ The installer creates the `/home/linuxbrew/.linuxbrew` directory and installs Homebrew there.
531
+
532
+ **Post-Installation PATH Configuration**:
533
+
534
+ Add Homebrew to your shell PATH:
535
+
536
+ ```bash
537
+ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc
538
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
539
+ ```
540
+
541
+ #### Verification
542
+
543
+ Confirm Homebrew is installed correctly:
544
+
545
+ ```bash
546
+ brew --version
547
+ ```
548
+
549
+ Expected output (version numbers may vary):
550
+
551
+ ```
552
+ Homebrew 4.4.15
553
+ ```
554
+
555
+ Run diagnostics:
556
+
557
+ ```bash
558
+ brew doctor
559
+ ```
560
+
561
+ Expected output for a healthy installation:
562
+
563
+ ```
564
+ Your system is ready to brew.
565
+ ```
566
+
567
+ Test installing a package:
568
+
569
+ ```bash
570
+ brew install --quiet hello
571
+ hello
572
+ ```
573
+
574
+ Expected output:
575
+
576
+ ```
577
+ Hello, world!
578
+ ```
579
+
580
+ #### Troubleshooting
581
+
582
+ **Problem**: `brew: command not found` after installation
583
+
584
+ **Solution**: The PATH was not configured. Run:
585
+
586
+ ```bash
587
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
588
+ ```
589
+
590
+ Then add the line to your `~/.bashrc`.
591
+
592
+ **Problem**: Missing development tools error
593
+
594
+ **Solution**: Install the development tools group:
595
+
596
+ ```bash
597
+ # Amazon Linux 2023
598
+ sudo dnf groupinstall -y "Development Tools"
599
+
600
+ # Amazon Linux 2
601
+ sudo yum groupinstall -y "Development Tools"
602
+ ```
603
+
604
+ **Problem**: GCC version too old
605
+
606
+ **Solution**: Install Homebrew's GCC:
607
+
608
+ ```bash
609
+ brew install --quiet gcc
610
+ ```
611
+
612
+ **Problem**: Locale warnings during installation
613
+
614
+ **Solution**: Set the locale before running the installer:
615
+
616
+ ```bash
617
+ export LC_ALL=en_US.UTF-8
618
+ export LANG=en_US.UTF-8
619
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
620
+ ```
621
+
622
+ ---
623
+
624
+ ### Windows (Chocolatey/winget)
625
+
626
+ #### Platform Note
627
+
628
+ **Homebrew does not run natively on Windows.** The Homebrew project officially supports only macOS and Linux.
629
+
630
+ To use Homebrew on Windows, install Windows Subsystem for Linux (WSL) and run Homebrew within the Linux environment. See the WSL (Ubuntu) section below for complete instructions.
631
+
632
+ **Alternative package managers for native Windows:**
633
+
634
+ For native Windows package management, use one of these tools instead:
635
+
636
+ - **winget**: Microsoft's built-in package manager (Windows 10/11)
637
+ - **Chocolatey**: Third-party community package manager
638
+
639
+ These are documented in other installation guides within this project.
640
+
641
+ ---
642
+
643
+ ### WSL (Ubuntu)
644
+
645
+ #### Prerequisites
646
+
647
+ - Windows 10 version 2004 (build 19041) or higher, or Windows 11
648
+ - WSL 2 enabled (WSL 1 has known issues with Homebrew)
649
+ - Ubuntu distribution installed in WSL
650
+ - sudo privileges within WSL
651
+
652
+ **Step 1: Install WSL and Ubuntu**
653
+
654
+ Run this command in an Administrator PowerShell to install WSL with Ubuntu:
655
+
656
+ ```powershell
657
+ wsl --install -d Ubuntu
658
+ ```
659
+
660
+ Restart your computer when prompted. After restart, the Ubuntu setup will launch automatically. Create your UNIX username and password when prompted.
661
+
662
+ **Step 2: Verify WSL Version**
663
+
664
+ Open Ubuntu from the Start menu and verify you are running WSL 2:
665
+
666
+ ```bash
667
+ wsl.exe -l -v
668
+ ```
669
+
670
+ If your Ubuntu distribution shows Version 1, upgrade it to Version 2:
671
+
672
+ ```powershell
673
+ wsl --set-version Ubuntu 2
674
+ ```
675
+
676
+ #### Installation Steps
677
+
678
+ Open your WSL Ubuntu terminal and install the required build dependencies:
679
+
680
+ ```bash
681
+ sudo DEBIAN_FRONTEND=noninteractive apt-get update -y
682
+ sudo DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential procps curl file git
683
+ ```
684
+
685
+ Run the following command to install Homebrew non-interactively:
686
+
687
+ ```bash
688
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
689
+ ```
690
+
691
+ **Post-Installation PATH Configuration**:
692
+
693
+ Add Homebrew to your shell PATH:
694
+
695
+ ```bash
696
+ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc
697
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
698
+ ```
699
+
700
+ #### Verification
701
+
702
+ Confirm Homebrew is installed correctly:
703
+
704
+ ```bash
705
+ brew --version
706
+ ```
707
+
708
+ Expected output (version numbers may vary):
709
+
710
+ ```
711
+ Homebrew 4.4.15
712
+ ```
713
+
714
+ Run diagnostics:
715
+
716
+ ```bash
717
+ brew doctor
718
+ ```
719
+
720
+ Expected output for a healthy installation:
721
+
722
+ ```
723
+ Your system is ready to brew.
724
+ ```
725
+
726
+ Test installing a package:
727
+
728
+ ```bash
729
+ brew install --quiet hello
730
+ hello
731
+ ```
732
+
733
+ Expected output:
734
+
735
+ ```
736
+ Hello, world!
737
+ ```
738
+
739
+ #### Troubleshooting
740
+
741
+ **Problem**: `brew: command not found` after installation
742
+
743
+ **Solution**: The PATH was not configured. Run:
744
+
745
+ ```bash
746
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
747
+ ```
748
+
749
+ Add it to your `~/.bashrc` for persistence.
750
+
751
+ **Problem**: "WSL 1 is not supported" or compatibility warnings
752
+
753
+ **Solution**: Upgrade to WSL 2:
754
+
755
+ ```powershell
756
+ # Run in PowerShell (not WSL)
757
+ wsl --set-version Ubuntu 2
758
+ ```
759
+
760
+ **Problem**: Very slow disk performance
761
+
762
+ **Solution**: Store your files in the Linux filesystem (`/home/username/`) rather than the Windows filesystem (`/mnt/c/`). Accessing Windows files from WSL is significantly slower.
763
+
764
+ **Problem**: `apt-get update` fails with network errors
765
+
766
+ **Solution**: This can indicate WSL networking issues. Restart WSL:
767
+
768
+ ```powershell
769
+ # Run in PowerShell
770
+ wsl --shutdown
771
+ ```
772
+
773
+ Then reopen Ubuntu.
774
+
775
+ **Problem**: Line ending issues (CRLF vs LF)
776
+
777
+ **Solution**: Configure git to use Unix line endings in WSL:
778
+
779
+ ```bash
780
+ git config --global core.autocrlf input
781
+ ```
782
+
783
+ ---
784
+
785
+ ### Git Bash (Manual/Portable)
786
+
787
+ #### Platform Note
788
+
789
+ **Homebrew does not run in Git Bash.** Git Bash is a Windows terminal emulator that provides a bash-like environment but does not include a full Linux userspace required by Homebrew.
790
+
791
+ To use Homebrew on Windows, install Windows Subsystem for Linux (WSL) and run Homebrew within the Linux environment. See the WSL (Ubuntu) section above for complete instructions.
792
+
793
+ **Alternative approaches for Git Bash users:**
794
+
795
+ 1. **Install WSL** - Run a full Linux environment alongside Windows and use Homebrew there
796
+ 2. **Use Chocolatey** - Native Windows package manager that works from any Windows terminal including Git Bash
797
+ 3. **Use winget** - Microsoft's built-in Windows package manager
798
+
799
+ ---
800
+
801
+ ## Post-Installation Configuration
802
+
803
+ After installing Homebrew on any platform, consider these optional but recommended configurations.
804
+
805
+ ### Update Homebrew
806
+
807
+ Update Homebrew to the latest version:
808
+
809
+ ```bash
810
+ brew update
811
+ ```
812
+
813
+ ### Install Recommended Dependencies
814
+
815
+ Homebrew recommends installing its own GCC compiler for maximum compatibility:
816
+
817
+ ```bash
818
+ brew install --quiet gcc
819
+ ```
820
+
821
+ ### Configure Homebrew Analytics
822
+
823
+ Homebrew collects anonymous usage analytics by default. To disable analytics:
824
+
825
+ ```bash
826
+ brew analytics off
827
+ ```
828
+
829
+ ### Configure Homebrew Auto-Update
830
+
831
+ By default, Homebrew automatically checks for updates before each `brew install` command. To disable auto-update:
832
+
833
+ ```bash
834
+ echo 'export HOMEBREW_NO_AUTO_UPDATE=1' >> ~/.bashrc
835
+ source ~/.bashrc
836
+ ```
837
+
838
+ ### Common Homebrew Commands
839
+
840
+ | Command | Description |
841
+ |---------|-------------|
842
+ | `brew install <package>` | Install a package |
843
+ | `brew uninstall <package>` | Remove a package |
844
+ | `brew upgrade` | Upgrade all installed packages |
845
+ | `brew upgrade <package>` | Upgrade a specific package |
846
+ | `brew list` | List installed packages |
847
+ | `brew search <term>` | Search for packages |
848
+ | `brew info <package>` | Show package information |
849
+ | `brew doctor` | Check for system issues |
850
+ | `brew cleanup` | Remove old versions and cache |
851
+ | `brew update` | Update Homebrew itself |
852
+
853
+ ---
854
+
855
+ ## Common Issues
856
+
857
+ ### Issue: Homebrew Is Slow
858
+
859
+ **Symptoms**: `brew install` or `brew update` takes a very long time
860
+
861
+ **Solutions**:
862
+
863
+ - On ARM platforms (Raspberry Pi), slowness is expected because packages compile from source
864
+ - Check your internet connection
865
+ - Disable auto-update if running many commands:
866
+
867
+ ```bash
868
+ export HOMEBREW_NO_AUTO_UPDATE=1
869
+ ```
870
+
871
+ - Clean up old cached files:
872
+
873
+ ```bash
874
+ brew cleanup --prune=all
875
+ ```
876
+
877
+ ### Issue: Bottles Not Available
878
+
879
+ **Symptoms**: Packages compile from source instead of downloading pre-built bottles
880
+
881
+ **Solutions**:
882
+
883
+ - Bottles are only available for officially supported platforms (macOS Intel/Apple Silicon, Linux x86_64)
884
+ - On ARM Linux, bottles are not available; compilation from source is expected
885
+ - Verify your architecture with `uname -m`
886
+
887
+ ### Issue: Permission Errors
888
+
889
+ **Symptoms**: `Permission denied` errors during installation or package operations
890
+
891
+ **Solutions**:
892
+
893
+ - Do not run `brew` with sudo (except during initial setup on some Linux systems)
894
+ - Fix ownership of Homebrew directories:
895
+
896
+ ```bash
897
+ # macOS Apple Silicon
898
+ sudo chown -R $(whoami) /opt/homebrew
899
+
900
+ # macOS Intel
901
+ sudo chown -R $(whoami) /usr/local/Homebrew
902
+
903
+ # Linux
904
+ sudo chown -R $(whoami) /home/linuxbrew/.linuxbrew
905
+ ```
906
+
907
+ ### Issue: PATH Not Configured
908
+
909
+ **Symptoms**: `brew: command not found` after installation
910
+
911
+ **Solutions**:
912
+
913
+ Run the appropriate shellenv command for your platform:
914
+
915
+ ```bash
916
+ # macOS Apple Silicon
917
+ eval "$(/opt/homebrew/bin/brew shellenv)"
918
+
919
+ # macOS Intel
920
+ eval "$(/usr/local/bin/brew shellenv)"
921
+
922
+ # Linux/WSL
923
+ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
924
+ ```
925
+
926
+ Add the command to your shell configuration file (`~/.bashrc`, `~/.zshrc`, or `~/.bash_profile`).
927
+
928
+ ### Issue: Conflicting Package Versions
929
+
930
+ **Symptoms**: System packages conflict with Homebrew packages
931
+
932
+ **Solutions**:
933
+
934
+ Homebrew packages take precedence over system packages when Homebrew is in your PATH. If you need to use a system package instead:
935
+
936
+ ```bash
937
+ # Temporarily use system version
938
+ /usr/bin/git --version
939
+
940
+ # Or remove Homebrew from PATH for current session
941
+ export PATH=$(echo $PATH | sed 's|/home/linuxbrew/.linuxbrew/bin:||')
942
+ ```
943
+
944
+ ### Issue: Disk Space Full
945
+
946
+ **Symptoms**: Installation fails with "No space left on device"
947
+
948
+ **Solutions**:
949
+
950
+ Remove cached downloads and old package versions:
951
+
952
+ ```bash
953
+ brew cleanup --prune=all
954
+ ```
955
+
956
+ Check disk usage by Homebrew:
957
+
958
+ ```bash
959
+ brew --cache
960
+ du -sh $(brew --cache)
961
+ ```
962
+
963
+ ---
964
+
965
+ ## Uninstalling Homebrew
966
+
967
+ To completely remove Homebrew from your system, run:
968
+
969
+ ```bash
970
+ NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
971
+ ```
972
+
973
+ The `NONINTERACTIVE=1` flag runs the uninstaller without prompting for confirmation.
974
+
975
+ After uninstallation, remove the shellenv line from your shell configuration file (`~/.bashrc`, `~/.zshrc`, or `~/.bash_profile`).
976
+
977
+ ---
978
+
979
+ ## References
980
+
981
+ - [Homebrew Official Website](https://brew.sh/)
982
+ - [Homebrew Installation Documentation](https://docs.brew.sh/Installation)
983
+ - [Homebrew on Linux Documentation](https://docs.brew.sh/Homebrew-on-Linux)
984
+ - [Homebrew FAQ](https://docs.brew.sh/FAQ)
985
+ - [Homebrew Installer GitHub Repository](https://github.com/Homebrew/install)
986
+ - [Homebrew Core GitHub Repository](https://github.com/Homebrew/homebrew-core)
987
+ - [WSL Installation Guide](https://learn.microsoft.com/en-us/windows/wsl/install)
988
+ - [AWS SAM Homebrew Installation Guide](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-homebrew.html)