
Today the Homebrew maintainers elected a new PLC, TSC and project lead. Documentation is to follow detailing exactly the responsibilities for each of these roles but adjust these to reflect the current state until that point.
332 lines
11 KiB
Plaintext
332 lines
11 KiB
Plaintext
<%
|
|
# To make changes to this man page:
|
|
#
|
|
# - For changes to a specific command (appears in the `COMMANDS` section):
|
|
# - Edit the top comment in `Library/Homebrew/cmd/<command>.{rb,sh}`.
|
|
# - Make sure to use the line prefix `#:` for the comments to be recognized as
|
|
# documentation. If in doubt, compare with already documented commands.
|
|
# - For other changes: Edit this file.
|
|
#
|
|
# When done, regenerate the man page and its HTML version by running `brew man`.
|
|
%>
|
|
brew(1) -- The missing package manager for macOS
|
|
================================================
|
|
|
|
## SYNOPSIS
|
|
|
|
`brew` `--version`<br>
|
|
`brew` <command> [`--verbose`|`-v`] [<options>] [<formula>] ...
|
|
|
|
## DESCRIPTION
|
|
|
|
Homebrew is the easiest and most flexible way to install the UNIX tools Apple
|
|
didn't include with macOS.
|
|
|
|
## ESSENTIAL COMMANDS
|
|
|
|
For the full command list, see the [COMMANDS](#commands) section.
|
|
|
|
With `--verbose` or `-v`, many commands print extra debugging information. Note that
|
|
these flags should only appear after a command.
|
|
|
|
### `install` <formula>:
|
|
|
|
Install <formula>.
|
|
|
|
### `uninstall` <formula>:
|
|
|
|
Uninstall <formula>.
|
|
|
|
### `list`:
|
|
|
|
List all installed formulae.
|
|
|
|
### `search` (<text>|`/`<text>`/`):
|
|
Perform a substring search of cask tokens and formula names for <text>. If <text>
|
|
is surrounded with slashes, then it is interpreted as a regular expression.
|
|
The search for <text> is extended online to `homebrew/core` and `homebrew/cask`.
|
|
If no search term is given, all locally available formulae are listed.
|
|
|
|
## COMMANDS
|
|
|
|
<%= commands %>
|
|
|
|
## DEVELOPER COMMANDS
|
|
|
|
<%= developer_commands %>
|
|
|
|
## GLOBAL OPTIONS
|
|
|
|
<%= global_options %>
|
|
|
|
## OFFICIAL EXTERNAL COMMANDS
|
|
|
|
### `bundle` <subcommand>:
|
|
|
|
Bundler for non-Ruby dependencies from Homebrew, Homebrew Cask and the Mac App Store. See `brew bundle --help`.
|
|
|
|
**Homebrew/homebrew-bundle**: <https://github.com/Homebrew/homebrew-bundle>
|
|
|
|
### `cask` <subcommand>:
|
|
|
|
Install macOS applications distributed as binaries. See brew-cask(1).
|
|
|
|
**Homebrew/homebrew-cask**: <https://github.com/Homebrew/homebrew-cask>
|
|
|
|
### `services` <subcommand>:
|
|
|
|
Manage background services with macOS' `launchctl`(1) daemon manager. See `brew services --help`.
|
|
|
|
**Homebrew/homebrew-services**: <https://github.com/Homebrew/homebrew-services>
|
|
|
|
## CUSTOM EXTERNAL COMMANDS
|
|
|
|
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.
|
|
|
|
Instructions for creating your own commands can be found in the docs:
|
|
<https://docs.brew.sh/External-Commands>
|
|
|
|
## 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:
|
|
Sometimes a formula from a tapped repository may conflict with one in
|
|
`homebrew/core`.
|
|
You can still access these formulae by using a special syntax, e.g.
|
|
`homebrew/dupes/vim` or `homebrew/versions/node4`.
|
|
|
|
* An arbitrary file or URL:
|
|
Homebrew can install formulae via URL, e.g.
|
|
`https://raw.githubusercontent.com/Homebrew/homebrew-core/master/Formula/git.rb`,
|
|
or from a local path. It could point to either a formula file or a bottle.
|
|
In the case of a URL, the downloaded file will be cached for later use.
|
|
|
|
## ENVIRONMENT
|
|
|
|
Note that environment variables must have a value set to be detected. For example,
|
|
`export HOMEBREW_NO_INSECURE_REDIRECT=1` rather than just
|
|
`export HOMEBREW_NO_INSECURE_REDIRECT`.
|
|
|
|
* `HOMEBREW_ARTIFACT_DOMAIN`:
|
|
If set, instructs Homebrew to prefix all download URLs, including those for bottles,
|
|
with this variable. For example, `HOMEBREW_ARTIFACT_DOMAIN=http://localhost:8080`
|
|
will cause a formula with the URL `https://example.com/foo.tar.gz` to instead
|
|
download from `http://localhost:8080/example.com/foo.tar.gz`.
|
|
|
|
* `HOMEBREW_AUTO_UPDATE_SECS`:
|
|
If set, Homebrew will only check for autoupdates once per this seconds interval.
|
|
|
|
*Default:* `60`.
|
|
|
|
* `HOMEBREW_AWS_ACCESS_KEY_ID`, `HOMEBREW_AWS_SECRET_ACCESS_KEY`:
|
|
When using the `S3` download strategy, Homebrew will look in
|
|
these variables for access credentials (see
|
|
<https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html#cli-environment>
|
|
to retrieve these access credentials from AWS). If they are not set,
|
|
the `S3` download strategy will download with a public (unsigned) URL.
|
|
|
|
* `HOMEBREW_BOTTLE_DOMAIN`:
|
|
By default, Homebrew uses `https://homebrew.bintray.com/` as its download
|
|
mirror for bottles. If set, instructs Homebrew to instead use the specified
|
|
URL. For example, `HOMEBREW_BOTTLE_DOMAIN=http://localhost:8080` will
|
|
cause all bottles to download from the prefix `http://localhost:8080/`.
|
|
|
|
* `HOMEBREW_BROWSER`:
|
|
If set, Homebrew uses this setting as the browser when opening project
|
|
homepages, instead of the OS default browser.
|
|
|
|
* `HOMEBREW_CACHE`:
|
|
If set, instructs Homebrew to use the specified directory as the download cache.
|
|
|
|
*Default:* `~/Library/Caches/Homebrew`.
|
|
|
|
* `HOMEBREW_CURLRC`:
|
|
If set, Homebrew will not pass `-q` when invoking `curl`(1) (which disables
|
|
the use of `curlrc`).
|
|
|
|
* `HOMEBREW_CURL_VERBOSE`:
|
|
If set, Homebrew will pass `--verbose` when invoking `curl`(1).
|
|
|
|
* `HOMEBREW_DEBUG`:
|
|
If set, any commands that can emit debugging information will do so.
|
|
|
|
* `HOMEBREW_DEVELOPER`:
|
|
If set, Homebrew will tweak behaviour to be more relevant for Homebrew
|
|
developers (active or budding), e.g. turning warnings into errors.
|
|
|
|
* `HOMEBREW_EDITOR`:
|
|
If set, Homebrew will use this editor when editing a single formula, or
|
|
several formulae in the same directory.
|
|
|
|
*Note:* `brew edit` will open all of Homebrew as discontinuous files and
|
|
directories. TextMate can handle this correctly in project mode, but many
|
|
editors will do strange things in this case.
|
|
|
|
* `HOMEBREW_FORCE_BREWED_CURL`:
|
|
If set, Homebrew will always use a Homebrew-installed `curl` rather than the
|
|
system version. Automatically set if the system version of `curl` is too old.
|
|
|
|
* `HOMEBREW_FORCE_VENDOR_RUBY`:
|
|
If set, Homebrew will always use its vendored, relocatable Ruby version
|
|
even if the system version of Ruby is new enough.
|
|
|
|
* `HOMEBREW_FORCE_BREWED_GIT`:
|
|
If set, Homebrew will always use a Homebrew-installed `git` rather than the
|
|
system version. Automatically set if the system version of `git` is too old.
|
|
|
|
* `HOMEBREW_GITHUB_API_TOKEN`:
|
|
A personal access token for the GitHub API, used by Homebrew for features
|
|
such as `brew search`. You can create one at <https://github.com/settings/tokens>.
|
|
If set, GitHub will allow you a greater number of API requests. For more
|
|
information, see: <https://developer.github.com/v3/#rate-limiting>
|
|
|
|
*Note:* Homebrew doesn't require permissions for any of the scopes.
|
|
|
|
* `HOMEBREW_INSTALL_BADGE`:
|
|
Text printed before the installation summary of each successful build.
|
|
|
|
*Default:* the beer emoji.
|
|
|
|
* `HOMEBREW_LOGS`:
|
|
If set, Homebrew will use the specified directory to store log files.
|
|
|
|
* `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.
|
|
|
|
* `HOMEBREW_NO_ANALYTICS`:
|
|
If set, Homebrew will not send analytics. See: <https://docs.brew.sh/Analytics>
|
|
|
|
* `HOMEBREW_NO_AUTO_UPDATE`:
|
|
If set, Homebrew will not auto-update before running `brew install`,
|
|
`brew upgrade` or `brew tap`.
|
|
|
|
* `HOMEBREW_NO_BOTTLE_SOURCE_FALLBACK`:
|
|
If set, Homebrew will fail on the failure of installation from a bottle
|
|
rather than falling back to building from source.
|
|
|
|
* `HOMEBREW_NO_COLOR`:
|
|
If set, Homebrew will not print text with colour added.
|
|
|
|
* `HOMEBREW_NO_EMOJI`:
|
|
If set, Homebrew will not print the `HOMEBREW_INSTALL_BADGE` on a
|
|
successful build.
|
|
|
|
*Note:* Homebrew will only try to print emoji on OS X Lion or newer.
|
|
|
|
* `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, some GNU & GNOME based
|
|
formulae to fail to download.
|
|
|
|
* `HOMEBREW_NO_GITHUB_API`:
|
|
If set, Homebrew will not use the GitHub API, e.g. for searches or
|
|
fetching relevant issues on a failed install.
|
|
|
|
* `HOMEBREW_NO_INSTALL_CLEANUP`:
|
|
If set, `brew install`, `brew upgrade` and `brew reinstall` will never
|
|
automatically cleanup the installed/upgraded/reinstalled formulae or all
|
|
formulae every 30 days.
|
|
|
|
* `HOMEBREW_PRY`:
|
|
If set, Homebrew will use Pry for the `brew irb` command.
|
|
|
|
* `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.
|
|
|
|
* `HOMEBREW_TEMP`:
|
|
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
|
|
Homebrew prefix are on different volumes, as macOS has trouble moving
|
|
symlinks across volumes when the target does not yet exist.
|
|
|
|
This issue typically occurs when using FileVault or custom SSD configurations.
|
|
|
|
* `HOMEBREW_UPDATE_TO_TAG`:
|
|
If set, instructs Homebrew to always use the latest stable tag (even if
|
|
developer commands have been run).
|
|
|
|
* `HOMEBREW_VERBOSE`:
|
|
If set, Homebrew always assumes `--verbose` when running commands.
|
|
|
|
* `http_proxy`:
|
|
Sets the HTTP proxy to be used by `curl`, `git` and `svn` when downloading
|
|
through Homebrew.
|
|
|
|
* `https_proxy`:
|
|
Sets the HTTPS proxy to be used by `curl`, `git` and `svn` when downloading
|
|
through Homebrew.
|
|
|
|
* `all_proxy`:
|
|
Sets the SOCKS5 proxy to be used by `curl`, `git` and `svn` when downloading
|
|
through Homebrew.
|
|
|
|
* `ftp_proxy`:
|
|
Sets the FTP proxy to be used by `curl`, `git` and `svn` when downloading
|
|
through Homebrew.
|
|
|
|
* `no_proxy`:
|
|
Sets the comma-separated list of hostnames and domain names that should be excluded
|
|
from proxying by `curl`, `git` and `svn` when downloading through Homebrew.
|
|
|
|
## USING HOMEBREW BEHIND A PROXY
|
|
|
|
Set the `http_proxy`, `https_proxy`, `all_proxy`, `ftp_proxy` and/or `no_proxy`
|
|
environment variables documented above.
|
|
|
|
For example, to use an unauthenticated HTTP or SOCKS5 proxy:
|
|
|
|
export http_proxy=http://$HOST:$PORT
|
|
|
|
export all_proxy=socks5://$HOST:$PORT
|
|
|
|
And for an authenticated HTTP proxy:
|
|
|
|
export http_proxy=http://$USER:$PASSWORD@$HOST:$PORT
|
|
|
|
## SEE ALSO
|
|
|
|
Homebrew Documentation: <https://docs.brew.sh>
|
|
|
|
`brew-cask`(1), `git`(1), `git-log`(1)
|
|
|
|
## AUTHORS
|
|
|
|
<%= lead.concat("\n") %>
|
|
|
|
<%= plc.concat("\n") %>
|
|
|
|
<%= tsc.concat("\n") %>
|
|
|
|
<%= linux.concat("\n") %>
|
|
|
|
<%= maintainers.concat("\n") %>
|
|
|
|
<%= alumni.concat("\n") %>
|
|
|
|
## BUGS
|
|
|
|
See our issues on GitHub:
|
|
|
|
* **Homebrew/brew**:
|
|
<https://github.com/Homebrew/brew/issues>
|
|
|
|
* **Homebrew/homebrew-core**:
|
|
<https://github.com/Homebrew/homebrew-core/issues>
|