brew/Library/Homebrew/manpages/brew.1.md.erb

332 lines
11 KiB
Plaintext
Raw Normal View History

<%
# 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
================================================
2016-04-08 16:28:35 +02:00
## 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.
2018-12-03 21:23:06 -05:00
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 %>
2016-04-08 16:28:35 +02:00
2016-09-05 21:46:40 +01:00
## DEVELOPER COMMANDS
<%= developer_commands %>
2016-09-05 21:46:40 +01:00
## 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
2016-04-08 16:28:35 +02: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.
Instructions for creating your own commands can be found in the docs:
<https://docs.brew.sh/External-Commands>
2016-04-08 16:28:35 +02: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:
Sometimes a formula from a tapped repository may conflict with one in
`homebrew/core`.
2016-04-08 16:28:35 +02:00
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:
2016-04-08 16:28:35 +02:00
Homebrew can install formulae via URL, e.g.
2018-12-03 21:23:06 -05:00
`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.
2016-04-08 16:28:35 +02:00
## ENVIRONMENT
2018-12-03 21:23:06 -05:00
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`:
2018-12-03 21:23:06 -05:00
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`.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_AWS_ACCESS_KEY_ID`, `HOMEBREW_AWS_SECRET_ACCESS_KEY`:
2016-04-08 16:28:35 +02:00
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,
2018-12-03 21:23:06 -05:00
the `S3` download strategy will download with a public (unsigned) URL.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_BOTTLE_DOMAIN`:
By default, Homebrew uses `https://homebrew.bintray.com/` as its download
2018-12-03 21:23:06 -05:00
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/`.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_BROWSER`:
2018-12-03 21:23:06 -05:00
If set, Homebrew uses this setting as the browser when opening project
homepages, instead of the OS default browser.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_CACHE`:
2018-12-03 21:23:06 -05:00
If set, instructs Homebrew to use the specified directory as the download cache.
2016-04-08 16:28:35 +02:00
*Default:* `~/Library/Caches/Homebrew`.
2016-04-08 16:28:35 +02:00
2018-04-08 15:51:58 -07:00
* `HOMEBREW_CURLRC`:
If set, Homebrew will not pass `-q` when invoking `curl`(1) (which disables
the use of `curlrc`).
2016-04-08 16:28:35 +02:00
* `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
2018-12-03 21:23:06 -05:00
developers (active or budding), e.g. turning warnings into errors.
2016-04-08 16:28:35 +02:00
* `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
2016-04-08 16:28:35 +02:00
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.
2016-08-10 20:06:14 +01:00
* `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.
2016-08-10 20:06:14 +01:00
* `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.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_GITHUB_API_TOKEN`:
2018-12-03 21:23:06 -05:00
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>
2016-04-08 16:28:35 +02:00
*Note:* Homebrew doesn't require permissions for any of the scopes.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_INSTALL_BADGE`:
Text printed before the installation summary of each successful build.
2018-12-03 21:23:06 -05:00
*Default:* the beer emoji.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_LOGS`:
2018-12-03 21:23:06 -05:00
If set, Homebrew will use the specified directory to store log files.
2016-04-08 16:28:35 +02: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.
* `HOMEBREW_NO_ANALYTICS`:
If set, Homebrew will not send analytics. See: <https://docs.brew.sh/Analytics>
* `HOMEBREW_NO_AUTO_UPDATE`:
2016-08-27 15:57:09 +01:00
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.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_NO_EMOJI`:
If set, Homebrew will not print the `HOMEBREW_INSTALL_BADGE` on a
successful build.
2018-12-03 21:23:06 -05:00
*Note:* Homebrew will only try to print emoji on OS X Lion or newer.
2016-04-08 16:28:35 +02: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, some GNU & GNOME based
formulae to fail to download.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_NO_GITHUB_API`:
2018-12-03 21:23:06 -05:00
If set, Homebrew will not use the GitHub API, e.g. for searches or
2016-04-08 16:28:35 +02:00
fetching relevant issues on a failed install.
* `HOMEBREW_NO_INSTALL_CLEANUP`:
If set, `brew install`, `brew upgrade` and `brew reinstall` will never
automatically remove the previously installed version(s) of the
installed/upgraded formulae.
* `HOMEBREW_PRY`:
2018-12-03 21:23:06 -05:00
If set, Homebrew will use Pry for the `brew irb` command.
2016-04-08 16:28:35 +02: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.
* `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
2018-12-03 21:23:06 -05:00
Homebrew prefix are on different volumes, as macOS has trouble moving
2016-04-08 16:28:35 +02:00
symlinks across volumes when the target does not yet exist.
2018-12-03 21:23:06 -05:00
This issue typically occurs when using FileVault or custom SSD configurations.
2016-04-08 16:28:35 +02:00
* `HOMEBREW_UPDATE_TO_TAG`:
If set, instructs Homebrew to always use the latest stable tag (even if
developer commands have been run).
2016-04-08 16:28:35 +02:00
* `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.
2016-04-08 16:28:35 +02:00
2018-02-01 18:11:29 +08:00
* `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.
2016-04-08 16:28:35 +02:00
2017-12-19 10:59:04 +02:00
* `no_proxy`:
2018-12-03 21:23:06 -05:00
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.
2017-12-19 10:59:04 +02:00
## USING HOMEBREW BEHIND A PROXY
2017-12-19 10:59:04 +02:00
2018-12-03 21:23:06 -05:00
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:
2016-04-08 16:28:35 +02:00
export http_proxy=http://$HOST:$PORT
2016-04-08 16:28:35 +02:00
export all_proxy=socks5://$HOST:$PORT
2018-02-01 18:11:29 +08:00
And for an authenticated HTTP proxy:
2016-04-08 16:28:35 +02:00
export http_proxy=http://$USER:$PASSWORD@$HOST:$PORT
2016-04-08 16:28:35 +02:00
## SEE ALSO
Homebrew Documentation: <https://docs.brew.sh>
2016-04-08 16:28:35 +02:00
`brew-cask`(1), `git`(1), `git-log`(1)
2016-04-08 16:28:35 +02:00
## AUTHORS
2016-09-20 11:50:02 +02:00
<%= lead_maintainer.concat("\n") %>
<%= leadership.concat("\n") %>
2018-01-18 15:45:51 +00:00
<%= brew_maintainers.concat("\n") %>
<%= linux_maintainers.concat("\n") %>
2018-01-18 15:45:51 +00:00
<%= core_maintainers.concat("\n") %>
2016-04-08 16:28:35 +02:00
2016-09-20 11:50:02 +02:00
<%= former_maintainers.concat("\n") %>
2016-04-08 16:28:35 +02:00
## BUGS
See our issues on GitHub:
* **Homebrew/brew**:
<https://github.com/Homebrew/brew/issues>
2016-04-08 16:28:35 +02:00
* **Homebrew/homebrew-core**:
<https://github.com/Homebrew/homebrew-core/issues>