2010-06-15 11:53:46 -07:00
brew(1) -- The missing package manager for OS X
===============================================
2010-06-03 22:29:20 -07:00
## SYNOPSIS
2014-01-11 20:25:49 +00:00
`brew` --version< br >
2012-11-23 11:48:10 -08:00
`brew` command [--verbose|-v] [options] [formula] ...
2010-06-03 22:29:20 -07:00
## DESCRIPTION
Homebrew is the easiest and most flexible way to install the UNIX tools Apple
didn't include with OS X.
2011-05-30 21:34:42 -07:00
## ESSENTIAL COMMANDS
For the full command list, see the COMMANDS section.
2013-01-27 19:46:29 +00:00
With `--verbose` or `-v` , many commands print extra debugging information.
Note that these flags should only appear after a command.
2012-11-23 11:48:10 -08:00
2011-05-30 21:34:42 -07:00
* `install` < formula > :
Install < formula > .
* `remove` < formula > :
Uninstall < formula > .
* `update` :
Fetch the newest version of Homebrew from GitHub using `git` (1).
* `list` :
List all installed formulae.
2013-01-29 23:34:55 +01:00
* `search` < text > |/< text > /:
2011-05-30 21:34:42 -07:00
Perform a substring search of formula names for < text > . If < text > is
surrounded with slashes, then it is interpreted as a regular expression.
2013-01-29 23:34:55 +01:00
The search for < text > is extended online to some popular taps.
If no search term is given, all locally available formulae are listed.
2011-05-30 21:34:42 -07:00
2010-06-03 22:29:20 -07:00
## COMMANDS
2015-07-09 12:31:17 +01:00
* `audit` [--strict] [--online] [< formulae > ]:
2011-05-31 12:20:06 -07:00
Check < formulae > for Homebrew coding style violations. This should be
run before submitting a new formula.
If no < formulae > are provided, all of them are checked.
2014-12-27 16:51:43 +00:00
If `--strict` is passed, additional checks are run. This should be used
when creating for new formulae.
2015-07-09 12:31:17 +01:00
If `--online` is passed, additional slower checks that require a network
connection are run. This should be used when creating for new formulae.
2011-05-31 12:20:06 -07:00
`audit` exits with a non-zero status if any errors are found. This is useful,
for instance, for implementing pre-commit hooks.
* `cat` < formula > :
Display the source to < formula > .
2015-04-11 16:37:47 +01:00
* `cleanup [--force] [--prune=<days>] [-ns]` [< formulae > ]:
2011-05-31 12:20:06 -07:00
For all installed or specific formulae, remove any older versions from the
cellar. By default, does not remove out-of-date keg-only brews, as other
2012-03-06 20:12:42 +00:00
software may link directly to specific versions. In addition old downloads from
the Homebrew download-cache are deleted.
2011-05-31 12:20:06 -07:00
If `--force` is passed, remove out-of-date keg-only brews as well.
2015-04-11 16:37:47 +01:00
If `--prune=<days>` is specified, remove all cache files older than < days > .
2011-11-07 22:46:36 -06:00
If `-n` is passed, show what would be removed, but do not actually remove anything.
2012-03-06 20:12:42 +00:00
If `-s` is passed, scrubs the cache, removing downloads for even the latest
versions of formula. Note downloads for any installed formula will still not be
deleted. If you want to delete those too: `rm -rf $(brew --cache)`
2015-06-26 15:19:27 +08:00
* `command` < cmd > :
Display the path to the file which is used when invoking `brew <cmd>` .
2015-07-09 19:50:53 +08:00
* `commands [--quiet [--include-aliases]]` :
2013-09-14 16:58:26 -07:00
Show a list of built-in and external commands.
2015-07-09 19:50:53 +08:00
If `--quiet` is passed, list only the names of commands without the header.
With `--include-aliases` , the aliases of internal commands will be included.
2014-04-26 23:31:39 -07:00
* `config` :
Show Homebrew and system configuration useful for debugging. If you file
a bug report, you will likely be asked for this information if you do not
provide it.
2013-08-02 05:10:24 +07:00
* `create <URL> [--autotools|--cmake] [--no-fetch] [--set-name <name>] [--set-version <version>]` :
2013-07-09 20:12:53 -05:00
Generate a formula for the downloadable file at < URL > and open it in the editor.
Homebrew will attempt to automatically derive the formula name
2011-10-12 02:20:07 -05:00
and version, but if it fails, you'll have to make your own template. The wget
2013-08-20 15:37:31 +02:00
formula serves as a simple example. For a complete cheat-sheet, have a look at
2013-11-18 00:08:10 -06:00
`$(brew --repository)/Library/Contributions/example-formula.rb`
2011-10-12 02:20:07 -05:00
If `--autotools` is passed, create a basic template for an Autotools-style build.
If `--cmake` is passed, create a basic template for a CMake-style build.
2011-05-31 12:20:06 -07:00
If `--no-fetch` is passed, Homebrew will not download < URL > to the cache and
2013-01-26 13:02:21 +00:00
will thus not add the SHA-1 to the formula for you.
2011-05-31 12:20:06 -07:00
2012-11-13 16:50:19 -06:00
The options `--set-name` and `--set-version` each take an argument and allow
you to explicitly set the name and version of the package you are creating.
2015-04-27 11:58:52 +08:00
* `deps [--1] [-n] [--union] [--tree] [--all] [--installed] [--skip-build] [--skip-optional]` < formulae > :
2014-04-07 13:16:08 -05:00
Show dependencies for < formulae > . When given multiple formula arguments,
show the intersection of dependencies for < formulae > , except when passed
`--tree` , `--all` , or `--installed` .
2011-05-31 12:20:06 -07:00
If `--1` is passed, only show dependencies one level down, instead of
recursing.
2011-10-12 02:20:07 -05:00
If `-n` is passed, show dependencies in topological order.
2014-05-06 21:10:50 -05:00
If `--union` is passed, show the union of dependencies for < formulae > ,
instead of the intersection.
2011-11-27 22:40:59 -06:00
If `--tree` is passed, show dependencies as a tree.
2011-10-12 02:20:07 -05:00
If `--all` is passed, show dependencies for all formulae.
2011-06-15 09:02:18 -07:00
2013-04-03 11:21:17 -05:00
If `--installed` is passed, show dependencies for all installed formulae.
2015-04-27 11:58:52 +08:00
By default, `deps` shows dependencies for < formulae > . To skip the `:build`
type dependencies, pass `--skip-build` . Similarly, pass `--skip-optional`
to skip `:optional` dependencies.
2014-03-15 12:55:14 -05:00
* `diy [--name=<name>] [--version=<version>]` :
2011-10-12 02:23:29 -05:00
Automatically determine the installation prefix for non-Homebrew software.
Using the output from this command, you can install your own software into
the Cellar and then link it into Homebrew's prefix with `brew link` .
2014-03-15 12:55:14 -05:00
The options `--name=<name>` and `--version=<version>` each take an argument
and allow you to explicitly set the name and version of the package you are
installing.
2011-10-12 02:23:29 -05:00
2011-05-31 12:20:06 -07:00
* `doctor` :
2011-10-12 02:20:07 -05:00
Check your system for potential problems. Doctor exits with a non-zero status
if any problems are found.
2011-05-31 12:20:06 -07:00
* `edit` :
2011-12-16 14:27:58 -08:00
Open all of Homebrew for editing.
2011-05-31 12:20:06 -07:00
* `edit` < formula > :
2013-07-09 20:12:53 -05:00
Open < formula > in the editor.
2011-05-31 12:20:06 -07:00
2014-06-03 20:19:48 -07:00
* `fetch [--force] [-v] [--devel|--HEAD] [--deps] [--build-from-source|--force-bottle]` < formulae > :
2011-05-31 12:20:06 -07:00
Download the source packages for the given < formulae > .
2013-01-26 13:02:21 +00:00
For tarballs, also print SHA1 and SHA-256 checksums.
2011-05-31 12:20:06 -07:00
2014-06-03 20:19:48 -07:00
If `--HEAD` or `--devel` is passed, fetch that version instead of the
stable version.
2015-06-07 11:49:41 -07:00
If `-v` is passed, do a verbose VCS checkout, if the URL represents a CVS.
2015-03-28 23:56:14 -04:00
This is useful for seeing if an existing VCS cache has been updated.
2011-05-31 12:20:06 -07:00
If `--force` is passed, remove a previously cached version and re-fetch.
If `--deps` is passed, also download dependencies for any listed < formulae > .
2013-07-12 15:24:39 +01:00
If `--build-from-source` is passed, download the source rather than a
bottle.
2014-03-04 18:27:11 -08:00
If `--force-bottle` is passed, download a bottle if it exists for the current
version of OS X, even if it would not be used during installation.
2011-05-31 12:20:06 -07:00
* `home` :
Open Homebrew's own homepage in a browser.
* `home` < formula > :
Open < formula > 's homepage in a browser.
2014-03-10 15:05:51 -05:00
* `info` < formula > :
2011-05-31 12:20:06 -07:00
Display information about < formula > .
* `info --github` < formula > :
Open a browser to the GitHub History page for formula < formula > .
To view formula history locally: `brew log -p <formula>` .
2014-05-18 15:33:31 -07:00
* `info --json=<version>` (--all|--installed|< formulae > ):
Print a JSON representation of < formulae > . Currently the only accepted value
2014-03-02 17:16:30 -06:00
for < version > is `v1` .
2014-05-16 08:47:09 -07:00
Pass `--all` to get information on all formulae, or `--installed` to get
information on all installed formulae.
2014-10-26 14:54:36 +00:00
See the docs for examples of using the JSON:
< https: / / github . com / Homebrew / homebrew / blob / master / share / doc / homebrew / Querying-Brew . md >
2014-05-16 11:14:58 -07:00
2015-07-05 20:07:08 -07:00
* `install [--debug] [--env=<std|super>] [--ignore-dependencies] [--only-dependencies] [--cc=<compiler>] [--build-from-source|--force-bottle] [--devel|--HEAD]` < formula > :
2010-11-06 14:18:15 -07:00
Install < formula > .
2010-06-03 22:29:20 -07:00
2012-03-25 15:54:38 -05:00
< formula > is usually the name of the formula to install, but it can be specified
several different ways. See [SPECIFYING FORMULAE][].
2010-10-30 12:30:22 -07:00
2013-04-13 14:17:17 -05:00
If `--debug` is passed and brewing fails, open an interactive debugging
2014-09-18 14:16:07 -05:00
session with access to IRB or a shell inside the temporary build directory.
2013-04-13 14:17:17 -05:00
If `--env=std` is passed, use the standard build environment instead of superenv.
If `--env=super` is passed, use superenv even if the formula specifies the
standard build environment.
2010-06-03 22:29:20 -07:00
2010-06-15 11:53:46 -07:00
If `--ignore-dependencies` is passed, skip installing any dependencies of
2010-08-11 21:10:51 -07:00
any kind. If they are not already present, the formula will probably fail
to install.
2010-06-15 11:53:46 -07:00
2013-12-16 16:37:59 -08:00
If `--only-dependencies` is passed, install the dependencies with specified
options but do not install the specified formula.
2013-11-03 11:45:26 -06:00
If `--cc=<compiler>` is passed, attempt to compile using < compiler > .
< compiler > should be the name of the compiler's executable, for instance
2014-07-24 08:44:19 +01:00
`gcc-4.2` for Apple's GCC 4.2, or `gcc-4.9` for a Homebrew-provided GCC
4.9.
2011-06-16 20:50:40 -07:00
2011-08-24 21:13:34 -05:00
If `--build-from-source` is passed, compile from source even if a bottle
is provided for < formula > .
2015-07-05 20:07:08 -07:00
If `--force-bottle` is passed, install from a bottle if it exists
for the current version of OS X, even if custom options are given.
2011-11-28 14:37:16 -06:00
If `--devel` is passed, and < formula > defines it, install the development version.
2010-07-09 12:13:17 -07:00
If `--HEAD` is passed, and < formula > defines it, install the HEAD version,
2011-11-28 14:37:16 -06:00
aka master, trunk, unstable.
2010-07-09 12:13:17 -07:00
2010-10-13 06:43:04 -07:00
To install a newer version of HEAD use
2013-02-07 16:34:38 -08:00
`brew rm <foo> && brew install --HEAD <foo>` .
2010-10-13 06:43:04 -07:00
2010-06-03 22:29:20 -07:00
* `install --interactive [--git]` < formula > :
2010-11-06 14:18:15 -07:00
Download and patch < formula > , then open a shell. This allows the user to
run `./configure --help` and otherwise determine how to turn the software
package into a Homebrew formula.
2010-06-03 22:29:20 -07:00
If `--git` is passed, Homebrew will create a Git repository, useful for
creating patches to the software.
2015-06-26 20:25:15 +01:00
* `irb [--examples]` :
2015-04-27 11:58:52 +08:00
Enter the interactive Homebrew Ruby shell.
2015-06-26 20:25:15 +01:00
If `--examples` is passed, several examples will be shown.
2015-04-27 11:58:52 +08:00
2013-11-16 14:10:23 -06:00
* `leaves` :
Show installed formulae that are not dependencies of another installed formula.
2013-04-13 14:10:08 -05:00
* `ln` , `link [--overwrite] [--dry-run] [--force]` < formula > :
2010-11-06 14:18:15 -07:00
Symlink all of < formula > 's installed files into the Homebrew prefix. This
2015-06-07 11:49:41 -07:00
is done automatically when you install formulae but can be useful for DIY
2011-06-05 21:29:52 -07:00
installations.
2010-06-03 22:29:20 -07:00
2012-10-20 20:54:11 -05:00
If `--overwrite` is passed, Homebrew will delete files which already exist in
2012-06-17 16:54:20 -05:00
the prefix while linking.
If `--dry-run` or `-n` is passed, Homebrew will list all files which would
2012-10-20 20:54:11 -05:00
be linked or which would be deleted by `brew link --overwrite` , but will not
actually link or delete any files.
2012-06-17 16:54:20 -05:00
2013-04-13 14:10:08 -05:00
If `--force` is passed, Homebrew will allow keg-only formulae to be linked.
2015-02-17 21:05:24 -05:00
* `linkapps [--local]` [< formulae > ]:
2014-12-18 15:13:04 +08:00
Find installed formulae that have compiled `.app` -style "application"
2013-09-07 12:52:55 -05:00
packages for OS X, and symlink those apps into `/Applications` , allowing
for easier access.
2013-10-29 21:07:21 -07:00
2014-12-18 15:13:04 +08:00
If no < formulae > are provided, all of them will have their .apps symlinked.
2013-09-07 12:52:55 -05:00
If provided, `--local` will move them into the user's `~/Applications`
2015-05-14 00:15:41 -04:00
directory instead of the system directory. It may need to be created, first.
2013-09-07 12:52:55 -05:00
2015-06-21 16:44:15 +08:00
* `ls, list [--full-name]`
List all installed formulae. If `--full-name` is passed, print formulae with
full-qualified names.
2011-09-08 21:06:50 -05:00
2015-06-21 16:44:15 +08:00
* `ls, list --unbrewed`
List all files in the Homebrew prefix not installed by Homebrew.
2011-10-12 02:20:07 -05:00
2015-06-21 16:44:15 +08:00
* `ls, list [--versions [--multiple]] [--pinned]` [< formulae > ]:
List the installed files for < formulae > . Combined with `--verbose` , recursively
list the contents of all subdirectories in each < formula > 's keg.
2011-04-18 21:11:08 -07:00
2011-09-08 21:06:50 -05:00
If `--versions` is passed, show the version number for installed formulae,
2014-04-27 10:57:46 -07:00
or only the specified formulae if < formulae > are given. With `--multiple` ,
only show formulae with multiple versions installed.
2010-06-03 22:29:20 -07:00
2013-03-11 16:41:08 +01:00
If `--pinned` is passed, show the versions of pinned formulae, or only the
specified (pinned) formulae if < formulae > are given.
2013-04-13 14:17:17 -05:00
See also `pin` , `unpin` .
2013-03-11 16:41:08 +01:00
2010-11-06 14:18:15 -07:00
* `log [git-log-options]` < formula > ...:
Show the git log for the given formulae. Options that `git-log` (1)
2010-10-04 17:12:34 -07:00
recognizes can be passed before the formula list.
2012-01-05 21:44:24 -06:00
* `missing` [< formulae > ]:
2011-10-12 02:25:18 -05:00
Check the given < formulae > for missing dependencies.
If no < formulae > are given, check all installed brews.
2011-09-11 16:23:39 -05:00
* `options [--compact] [--all] [--installed]` < formula > :
2010-11-07 07:36:34 -08:00
Display install options specific to < formula > .
2011-02-04 16:56:46 -08:00
If `--compact` is passed, show all options on a single line separated by
spaces.
2011-03-21 13:14:06 -07:00
If `--all` is passed, show options for all formulae.
2011-09-11 16:23:39 -05:00
If `--installed` is passed, show options for all installed formulae.
2011-03-21 13:14:06 -07:00
2014-07-06 11:41:03 -04:00
* `outdated [--quiet | --verbose | --json=v1 ]` :
2014-11-21 01:05:53 -06:00
Show formulae that have an updated version available.
2011-09-01 22:49:04 -05:00
2014-11-21 01:05:53 -06:00
By default, version information is displayed in interactive shells, and
suppressed otherwise.
2014-11-19 09:43:41 -05:00
2014-11-21 01:05:53 -06:00
If `--quiet` is passed, list only the names of outdated brews (takes
precedence over `--verbose` ).
If `--verbose` is passed, display detailed version information.
2011-04-13 13:48:09 -07:00
2014-07-06 11:41:03 -04:00
If `--json=<version>` is passed, the output will be in JSON format. The only
valid version is `v1` .
2013-03-11 16:41:08 +01:00
* `pin` < formulae > :
Pin the specified < formulae > , preventing them from being upgraded when
2015-05-06 16:23:09 +08:00
issuing the `brew upgrade --all` command. See also `unpin` .
2013-03-11 16:41:08 +01:00
2011-05-31 12:20:06 -07:00
* `prune` :
Remove dead symlinks from the Homebrew prefix. This is generally not
needed, but can be useful when doing DIY installations.
2014-01-11 20:26:08 +00:00
* `reinstall` < formula > :
Uninstall then install < formula >
2011-05-31 12:20:06 -07:00
* `rm` , `remove` , `uninstall [--force]` < formula > :
Uninstall < formula > .
If `--force` is passed, and there are multiple versions of < formula >
installed, delete all installed versions.
2013-01-29 23:34:55 +01:00
* `search` , `-S` :
Display all locally available formulae for brewing (including tapped ones).
No online search is performed if called without arguments.
2014-05-26 12:16:08 -05:00
* `search` , `-S` < text > |/< text > /:
2011-05-31 12:20:06 -07:00
Perform a substring search of formula names for < text > . If < text > is
surrounded with slashes, then it is interpreted as a regular expression.
2013-01-29 23:34:55 +01:00
The search for < text > is extended online to some popular taps.
2011-05-31 12:20:06 -07:00
2013-08-14 22:14:35 -07:00
* `search --debian` |`--fedora` |`--fink` |`--macports` |`--opensuse` |`--ubuntu` < text > :
2013-08-05 15:05:02 -07:00
Search for < text > in the given package manager's list.
2010-11-07 07:36:34 -08:00
2013-04-09 16:47:00 -05:00
* `sh [--env=std]` :
2013-04-09 14:16:10 -04:00
Instantiate a Homebrew build environment. Uses our years-battle-hardened
Homebrew build logic to help your `./configure && make && make install`
2015-02-23 20:26:27 +01:00
or even your `gem install` succeed. Especially handy if you run Homebrew
2013-04-09 14:16:10 -04:00
in a Xcode-only configuration since it adds tools like make to your PATH
which otherwise build-systems would not find.
2015-04-27 11:58:52 +08:00
* `switch` < name > < version > :
Symlink all of the specific < version > of < name > 's install to Homebrew prefix.
2015-06-14 14:34:31 +01:00
* `tap` [--full] [< user / repo > ] [< URL > ]:
Tap a formula repository or list existing taps. This command can be invoked
in three ways.
2012-03-18 16:02:31 -05:00
2015-06-14 14:34:31 +01:00
+ `tap` without arguments displays existing taps.
2012-03-18 16:02:31 -05:00
2015-06-14 14:34:31 +01:00
+ `tap <user/repo>` taps a formula repository from GitHub using HTTPS.
Since so many taps are hosted on GitHub, this command is a shortcut for
`tap user/repo https://github.com/#{user}/homebrew-#{repo}` .
+ `tap <user/repo> <URL>` taps a formula repository from anywhere, using
any transport protocol that `git` handles. The one-argument form of `tap`
simplifies but also limits. This two-argument command makes no
assumptions, so taps can be cloned from places other than GitHub and
2015-06-14 18:36:16 +01:00
using protocols other than HTTPS, e.g., SSH, GIT, HTTP, FTP(S), RSYNC.
2015-06-14 14:34:31 +01:00
By default, the repository is cloned as a shallow copy (`--depth=1` ), but
if `--full` is passed, a full clone will be used.
2015-04-01 20:31:17 +08:00
2012-08-07 13:26:57 -04:00
* `tap --repair` :
2015-05-09 11:03:33 +08:00
Migrate tapped formulae from symlink-based to directory-based structure.
2012-08-07 13:26:57 -04:00
2015-06-08 19:17:29 +08:00
* `tap-info` < tap > :
Display information about < tap > .
* `tap-info --json=<version>` (--installed|< taps > ):
Print a JSON representation of < taps > . Currently the only accepted value
for < version > is `v1` .
Pass `--installed` to get information on installed taps.
See the docs for examples of using the JSON:
< https: / / github . com / Homebrew / homebrew / blob / master / share / doc / homebrew / Querying-Brew . md >
2015-07-27 18:56:04 +08:00
* `tap-pin` < tap > :
Pin < tap > , prioritizing its formulae over core when formula names are supplied
by the user. See also `tap-unpin` .
* `tap-unpin` < tap > :
Unpin < tap > so its formulae are no longer prioritized. See also `tap-pin` .
2014-09-18 14:16:07 -05:00
* `test` [--devel|--HEAD] [--debug] < formula > :
2010-11-07 07:36:34 -08:00
A few formulae provide a test method. `brew test <formula>` runs this
test method. There is no standard output or return code, but it should
generally indicate to the user if something is wrong with the installed
2014-06-03 20:25:26 -07:00
formula.
2014-09-18 14:16:07 -05:00
To test the development or head version of a formula, use `--devel` or
`--HEAD` .
If `--debug` is passed and the test fails, an interactive debugger will be
launched with access to IRB or a shell inside the temporary test directory.
2010-11-07 07:36:34 -08:00
Example: `brew install jruby && brew test jruby`
2011-05-31 12:20:06 -07:00
* `unlink` < formula > :
2013-08-14 22:24:38 -07:00
Remove symlinks for < formula > from the Homebrew prefix. This can be useful
for temporarily disabling a formula:
`brew unlink foo && commands && brew link foo` .
2010-11-07 07:36:34 -08:00
2015-02-17 21:05:24 -05:00
* `unlinkapps [--local]` [< formulae > ]:
2013-10-29 21:07:21 -07:00
Removes links created by `brew linkapps` .
2014-12-18 15:13:04 +08:00
If no < formulae > are provided, all linked app will be removed.
2014-05-17 17:12:40 -05:00
* `unpack [--git|--patch] [--destdir=<path>]` < formulae > :
Unpack the source files for < formulae > into subdirectories of the current
working directory. If `--destdir=<path>` is given, the subdirectories will
be created in the directory named by `<path>` instead.
If `--patch` is passed, patches for < formulae > will be applied to the
unpacked source.
If `--git` is passed, a Git repository will be initalized in the unpacked
source. This is useful for creating patches for the software.
2013-03-11 16:41:08 +01:00
* `unpin` < formulae > :
2015-05-06 16:19:07 +08:00
Unpin < formulae > , allowing them to be upgraded by `brew upgrade --all` . See also
2013-04-13 14:17:17 -05:00
`pin` .
2013-03-11 16:41:08 +01:00
2012-03-18 16:02:31 -05:00
* `untap` < tap > :
Remove a tapped repository.
2011-09-20 02:25:50 +01:00
* `update [--rebase]` :
Fetch the newest version of Homebrew and all formulae from GitHub using
`git` (1).
2011-09-19 20:47:25 -05:00
If `--rebase` is specified then `git pull --rebase` is used.
2010-11-06 14:18:15 -07:00
2015-06-04 11:24:32 +01:00
* `upgrade [install-options]` [< formulae > ]:
2013-04-13 14:17:17 -05:00
Upgrade outdated, unpinned brews.
Options for the `install` command are also valid here.
2011-09-01 22:49:41 -05:00
2013-03-11 16:41:08 +01:00
If < formulae > are given, upgrade only the specified brews (but do so even
2013-04-13 14:17:17 -05:00
if they are pinned; see `pin` , `unpin` ).
2011-09-01 22:49:41 -05:00
2015-09-02 20:56:04 +08:00
* `uses [--installed] [--recursive] [--skip-build] [--skip-optional] [--devel|--HEAD]` < formulae > :
2014-04-07 13:16:08 -05:00
Show the formulae that specify < formulae > as a dependency. When given
multiple formula arguments, show the intersection of formulae that use
< formulae > .
2012-11-13 16:50:19 -06:00
Use `--recursive` to resolve more than one level of dependencies.
2010-11-06 14:18:15 -07:00
2011-10-12 02:20:07 -05:00
If `--installed` is passed, only list installed formulae.
2011-05-31 12:20:06 -07:00
2015-09-02 20:56:04 +08:00
By default, `uses` shows all formulae that specify < formulae > as a dependency.
To skip the `:build` type dependencies, pass `--skip-build` . Similarly, pass
`--skip-optional` to skip `:optional` dependencies.
2013-11-10 10:33:56 -08:00
By default, `uses` shows usages of `formula` by stable builds. To find
cases where `formula` is used by development or HEAD build, pass
`--devel` or `--HEAD` .
2011-05-31 12:20:06 -07:00
* `--cache` :
2013-06-20 16:53:19 -05:00
Display Homebrew's download cache. See also `HOMEBREW_CACHE` .
2011-05-31 12:20:06 -07:00
* `--cache` < formula > :
2012-02-24 19:49:03 -06:00
Display the file or directory used to cache < formula > .
2010-11-06 14:18:15 -07:00
* `--cellar` :
2015-05-06 10:35:35 -07:00
Display Homebrew's Cellar path. *Default:* `$(brew --prefix)/Cellar` , or if
that directory doesn't exist, `$(brew --repository)/Cellar` .
2010-11-06 14:18:15 -07:00
2010-12-26 10:31:10 -08:00
* `--cellar` < formula > :
2010-11-06 14:18:15 -07:00
Display the location in the cellar where < formula > would be installed,
2012-02-24 19:49:03 -06:00
without any sort of versioned directory as the last path.
2010-11-06 14:18:15 -07:00
2013-04-13 14:17:48 -05:00
* `--env` :
Show a summary of the Homebrew build environment.
2011-05-31 12:20:06 -07:00
* `--prefix` :
Display Homebrew's install path. *Default:* `/usr/local`
* `--prefix` < formula > :
Display the location in the cellar where < formula > is or would be installed.
2010-11-06 14:18:15 -07:00
* `--repository` :
2012-02-24 19:49:03 -06:00
Display where Homebrew's `.git` directory is located. For standard installs,
the `prefix` and `repository` are the same directory.
2010-11-06 14:18:15 -07:00
2012-07-23 14:27:50 -07:00
* `--version` :
2011-05-31 12:20:06 -07:00
Print the version number of brew to standard error and exit.
2010-07-29 09:24:38 -07:00
## EXTERNAL COMMANDS
2011-09-19 18:20:52 -05:00
Homebrew, like `git` (1), supports external commands. These are executable
scripts that reside somewhere in the PATH, named `brew-<cmdname>` or
`brew-<cmdname>.rb` , which can be invoked like `brew cmdname` . This allows you
to create your own commands without modifying Homebrew's internals.
2010-07-29 09:24:38 -07:00
2014-11-16 21:57:08 -06:00
Instructions for creating your own commands can be found in the docs:
2014-10-26 14:54:36 +00:00
< https: / / github . com / Homebrew / homebrew / blob / master / share / doc / homebrew / External-Commands . md >
2011-09-19 18:20:52 -05:00
2012-03-25 15:54:38 -05:00
## SPECIFYING FORMULAE
Many Homebrew commands accept one or more < formula > arguments. These arguments
can take several different forms:
* The name of a formula:
e.g. `git` , `node` , `wget` .
* The fully-qualified name of a tapped formula:
2013-12-14 18:13:11 +00:00
Sometimes a formula from a tapped repository may conflict with one in Homebrew/homebrew.
2012-03-25 15:54:38 -05:00
You can still access these formulae by using a special syntax, e.g.
`homebrew/dupes/vim` or `homebrew/versions/node4` .
* An arbitrary URL:
Homebrew can install formulae via URL, e.g.
2013-12-14 18:13:11 +00:00
`https://raw.github.com/Homebrew/homebrew/master/Library/Formula/git.rb` .
2012-03-25 15:54:38 -05:00
The formula file will be cached for later use.
2010-06-03 22:29:20 -07:00
## ENVIRONMENT
2013-09-24 01:34:28 -07:00
* AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY:
When using the S3 download strategy, Homebrew will look in
these variables for access credentials (see
2015-01-04 04:27:16 +01:00
< https: // docs . aws . amazon . com / cli / latest / userguide / cli-chap-getting-started . html #cli -environment >
2013-09-24 01:34:28 -07:00
to retrieve these access credentials from AWS). If they are not set,
the S3 download strategy will download with a public
(unsigned) URL.
2013-01-06 17:32:23 -08:00
* BROWSER:
If set, and `HOMEBREW_BROWSER` is not, use `BROWSER` as the web browser
when opening project homepages.
* EDITOR:
2013-07-09 20:12:53 -05:00
If set, and `HOMEBREW_EDITOR` and `VISUAL` are not, use `EDITOR` as the text editor.
2013-01-06 17:32:23 -08:00
2012-08-10 11:33:41 -07:00
* GIT:
When using Git, Homebrew will use `GIT` if set,
a Homebrew-built Git if installed, or the system-provided binary.
Set this to force Homebrew to use a particular git binary.
2015-07-03 22:59:30 +08:00
* HOMEBREW\_BOTTLE\_DOMAIN:
If set, instructs Homebrew to use the given URL as a download mirror for bottles.
* HOMEBREW\_BROWSER:
2013-01-06 17:32:23 -08:00
If set, uses this setting as the browser when opening project homepages,
instead of the OS default browser.
2012-08-10 11:33:41 -07:00
2011-08-25 00:08:30 -05:00
* HOMEBREW\_BUILD\_FROM\_SOURCE:
If set, instructs Homebrew to compile from source even when a formula
provides a bottle.
2011-06-07 13:37:59 -07:00
* HOMEBREW\_CACHE:
2013-01-06 17:32:23 -08:00
If set, instructs Homebrew to use the given directory as the download cache.
2011-06-07 13:37:59 -07:00
2013-06-20 16:53:19 -05:00
*Default:* `~/Library/Caches/Homebrew` if it exists; otherwise,
`/Library/Caches/Homebrew` .
2011-06-07 13:37:59 -07:00
2011-12-07 19:09:00 -06:00
* HOMEBREW\_CURL\_VERBOSE:
If set, Homebrew will pass `--verbose` when invoking `curl` (1).
2010-06-03 22:29:20 -07:00
* HOMEBREW\_DEBUG:
2013-04-30 13:46:57 -07:00
If set, any commands that can emit debugging information will do so.
2010-06-03 22:29:20 -07:00
2010-08-16 09:22:14 -07:00
* HOMEBREW\_DEBUG\_INSTALL:
2010-08-20 10:06:06 -07:00
When `brew install -d` or `brew install -i` drops into a shell,
2010-08-16 09:22:14 -07:00
`HOMEBREW_DEBUG_INSTALL` will be set to the name of the formula being
2010-08-20 10:06:06 -07:00
brewed.
* HOMEBREW\_DEBUG\_PREFIX:
When `brew install -d` or `brew install -i` drops into a shell,
2010-11-06 14:18:15 -07:00
`HOMEBREW_DEBUG_PREFIX` will be set to the target prefix in the Cellar
2010-08-20 10:06:06 -07:00
of the formula being brewed.
2010-08-16 09:22:14 -07:00
2012-12-31 17:51:57 +00:00
* HOMEBREW\_DEVELOPER:
If set, Homebrew will print warnings that are only relevant to Homebrew
developers (active or budding).
2010-07-25 10:56:32 -07:00
* HOMEBREW\_EDITOR:
If set, Homebrew will use this editor when editing a single formula, or
2012-02-24 19:49:03 -06:00
several formulae in the same directory.
2010-07-25 10:56:32 -07:00
*NOTE* : `brew edit` will open all of Homebrew as discontinuous files and
2012-02-24 19:49:03 -06:00
directories. TextMate can handle this correctly in project mode, but many
2010-07-25 10:56:32 -07:00
editors will do strange things in this case.
2013-05-18 08:27:22 -04:00
* HOMEBREW\_GITHUB\_API\_TOKEN:
2015-05-05 09:15:22 +01:00
A personal access token for the GitHub API, which you can create at
< https: / / github . com / settings / tokens > . If set, GitHub will allow you a
2013-05-18 08:27:22 -04:00
greater number of API requests. See
2015-01-04 04:27:16 +01:00
< https: // developer . github . com / v3 / #rate -limiting > for more information.
2013-05-23 10:03:08 -05:00
Homebrew uses the GitHub API for features such as `brew search` .
2013-05-18 08:27:22 -04:00
2015-05-14 00:15:41 -04:00
* HOMEBREW\_LOGS:
If set, Homebrew will use the given directory to store log files.
2011-07-26 00:01:22 -05:00
* HOMEBREW\_MAKE\_JOBS:
If set, instructs Homebrew to use the value of `HOMEBREW_MAKE_JOBS` as
the number of parallel jobs to run when building with `make` (1).
*Default:* the number of available CPU cores.
2013-01-19 17:28:55 -06:00
* HOMEBREW\_NO\_EMOJI:
2013-10-11 10:53:50 +02:00
If set, Homebrew will not print the `HOMEBREW_INSTALL_BADGE` on a
successful build.
2013-01-19 17:28:55 -06:00
*Note:* Homebrew will only try to print emoji on Lion or newer.
2015-04-26 03:18:45 +01:00
* HOMEBREW\_NO\_INSECURE\_REDIRECT:
If set, Homebrew will not permit redirects from secure HTTPS
to insecure HTTP.
While ensuring your downloads are fully secure, this is likely
to cause from-source Sourceforge & GNOME based formulae
to fail to download.
Apache formulae are currently unaffected by this variable and
can redirect to plaintext.
2013-10-22 16:18:31 -07:00
* HOMEBREW\_NO\_GITHUB\_API:
If set, Homebrew will not use the GitHub API for e.g searches or
fetching relevant issues on a failed install.
2013-10-11 10:53:50 +02:00
* HOMEBREW\_INSTALL\_BADGE:
Text printed before the installation summary of each successful build.
Defaults to the beer emoji.
2010-07-09 12:13:17 -07:00
* HOMEBREW\_SVN:
When exporting from Subversion, Homebrew will use `HOMEBREW_SVN` if set,
a Homebrew-built Subversion if installed, or the system-provided binary.
Set this to force Homebrew to use a particular svn binary.
2010-05-01 14:06:23 -07:00
* HOMEBREW\_TEMP:
2012-02-24 19:49:03 -06:00
If set, instructs Homebrew to use `HOMEBREW_TEMP` as the temporary directory
for building packages. This may be needed if your system temp directory and
2010-05-01 14:06:23 -07:00
Homebrew Prefix are on different volumes, as OS X has trouble moving
symlinks across volumes when the target does not yet exist.
2010-11-06 14:18:15 -07:00
This issue typically occurs when using FileVault or custom SSD
configurations.
2010-05-01 14:06:23 -07:00
2010-06-03 22:29:20 -07:00
* HOMEBREW\_VERBOSE:
2013-01-06 17:32:23 -08:00
If set, Homebrew always assumes `--verbose` when running commands.
2010-06-03 22:29:20 -07:00
2013-07-09 20:12:53 -05:00
* VISUAL:
If set, and `HOMEBREW_EDITOR` is not, use `VISUAL` as the text editor.
2010-11-01 10:24:57 -07:00
## USING HOMEBREW BEHIND A PROXY
Homebrew uses several commands for downloading files (e.g. curl, git, svn).
Many of these tools can download via a proxy. It's common for these tools
to read proxy parameters from environment variables.
For the majority of cases setting `http_proxy` is enough. You can set this in
your shell profile, or you can use it before a brew command:
http_proxy=http://< host > :< port > brew install foo
If your proxy requires authentication:
http_proxy=http://< user > :< password > @< host > :< port > brew install foo
2010-06-03 22:29:20 -07:00
## SEE ALSO
2014-10-26 14:54:36 +00:00
Homebrew Documentation: < https: / / github . com / Homebrew / homebrew / blob / master / share / doc / homebrew / >
2010-11-06 14:18:15 -07:00
`git` (1), `git-log` (1)
2010-06-03 22:29:20 -07:00
## AUTHORS
2015-08-01 18:39:46 -07:00
Homebrew's current maintainers are Misty De Meo, Adam Vandenberg, Xu Cheng, Mike McQuaid, Baptiste Fontaine, Brett Koonce, Dominyk Tiller, Tim Smith and Alex Dunn.
2014-10-26 15:42:20 +00:00
Homebrew was originally created by Max Howell.
2010-06-03 22:29:20 -07:00
## BUGS
2015-01-04 04:27:16 +01:00
See Issues on GitHub: < https: / / github . com / Homebrew / homebrew / issues >