| Variable | +Description | +
| HOMEBREW_CACHE | +Where Homebrew caches downloaded tarballs to, typically ~/Library/Caches/Homebrew. |
+
| HOMEBREW_CELLAR | +The location of the Homebrew Cellar, where software is staged, by default /usr/local/Cellar. |
+
| HOMEBREW_LIBRARY_PATH | +The directory containing Homebrew’s own application code. | +
| HOMEBREW_PREFIX | +Where Homebrew installs software to, by default /usr/local. |
+
| HOMEBREW_REPOSITORY | +If installed from a Git clone, the repo directory (i.e., where Homebrew’s .git directory lives). |
+
| Formula | +The package definition | +/usr/local/Library/Formula/foo.rb |
+
|---|---|---|
| Keg | +The installation prefix of a Formula | +/usr/local/Cellar/foo/0.1 |
+
| opt prefix | +A symlink to the active version of a keg | +/usr/local/opt/foo |
+
| Cellar | +All kegs are installed here | +/usr/local/Cellar |
+
| Tap | +An optional repository (git) of Formulae | +/usr/local/Library/Taps |
+
| Bottle | +Pre-built (binary) Keg that can be unpacked | +qt-4.8.4.mountain_lion.bottle.1.tar.gz |
+
Value of :using |
+ Corresponds To | +
|---|---|
:bzr |
+ BazaarDownloadStrategy |
+
:curl |
+ CurlDownloadStrategy |
+
:cvs |
+ CVSDownloadStrategy |
+
:git |
+ GitDownloadStrategy |
+
:hg |
+ MercurialDownloadStrategy |
+
:nounzip |
+ NoUnzipCurlDownloadStrategy |
+
:post |
+ CurlPostDownloadStrategy |
+
:svn |
+ SubversionDownloadStrategy |
+
| Name | +Default | +Example | +
|---|---|---|
HOMEBREW_PREFIX |
+ /usr/local |
+ + |
prefix |
+ #{HOMEBREW_PREFIX}/Cellar/#{name}/#{version} |
+ /usr/local/Cellar/foo/0.1 |
+
opt_prefix |
+ #{HOMEBREW_PREFIX}/opt/#{name} |
+ /usr/local/opt/foo |
+
bin |
+ #{prefix}/bin |
+ /usr/local/Cellar/foo/0.1/bin |
+
doc |
+ #{prefix}/share/doc/foo |
+ /usr/local/Cellar/foo/0.1/share/doc/foo |
+
include |
+ #{prefix}/include |
+ /usr/local/Cellar/foo/0.1/include |
+
info |
+ #{prefix}/share/info |
+ /usr/local/Cellar/foo/0.1/share/info |
+
lib |
+ #{prefix}/lib |
+ /usr/local/Cellar/foo/0.1/lib |
+
libexec |
+ #{prefix}/libexec |
+ /usr/local/Cellar/foo/0.1/libexec |
+
man |
+ #{prefix}/share/man |
+ /usr/local/Cellar/foo/0.1/share/man |
+
man[1-8] |
+ #{prefix}/share/man/man[1-8] |
+ /usr/local/Cellar/foo/0.1/share/man/man[1-8] |
+
sbin |
+ #{prefix}/sbin |
+ /usr/local/Cellar/foo/0.1/sbin |
+
share |
+ #{prefix}/share |
+ /usr/local/Cellar/foo/0.1/share |
+
etc |
+ #{HOMEBREW_PREFIX}/etc |
+ /usr/local/etc |
+
var |
+ #{HOMEBREW_PREFIX}/var |
+ /usr/local/var |
+
buildpath |
+ A temporary dir somewhere on your system | +/private/tmp/[formula-name]-0q2b/[formula-name] |
+
{{ formula name }}-{{ version }}. In the case of Erlang, this requires renaming the file from otp_src_R13B03 to erlang-R13B03.
+
+**New:**
+```bash
+mv the_tarball `brew --cache formula-name`
+```
+
+You can also pre-cache the download by using the command `brew fetch formula` which also displays the SHA1 and SHA256 values. This can be useful for updating formulae to new versions.
+
+
+
+## Using Homebrew behind a proxy
+
+Behind the scenes, Homebrew uses several commands for downloading files (e.g. curl, git, svn). Many of these tools can download via a proxy. It's a common (though not universal) convention for these command-line tools to observe getting the proxy parameters from environment variables (e.g. `http_proxy`). Unfortunately, most tools are inconsistent in their use of these environment parameters (e.g. curl supports `http_proxy`, `HTTPS_PROXY`, `FTP_PROXY`, `GOPHER_PROXY`, `ALL_PROXY`, `NO_PROXY`).
+
+Luckily, for the majority of cases setting `http_proxy` is enough. You can set this environment variable in several ways (search on the internet for details), but the way I prefer is:
+
+```bash
+$ http_proxy=http://