mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
244 lines
6.6 KiB
Plaintext
244 lines
6.6 KiB
Plaintext
<%
|
|
# To make changes to this man page:
|
|
#
|
|
# - For changes to a command under `COMMANDS` or `DEVELOPER COMMANDS` sections):
|
|
# - Find the source file in `Library/Homebrew/[dev-]cmd/<command>.{rb,sh}`.
|
|
# - For `.rb` files, edit the `<command>_args` method.
|
|
# - For `.sh` files, edit the top comment, being sure to use the line prefix
|
|
# `#:` for the comments to be recognized as documentation. If in doubt,
|
|
# compare with already documented commands.
|
|
# - For global options: Edit `Library/Homebrew/cli/parser.rb`.
|
|
# - For environment variables: Edit `Library/Homebrew/env_config.rb`.
|
|
# - For other changes: Edit this file.
|
|
#
|
|
# When done, regenerate the man page and its HTML version by running
|
|
# `brew generate-man-completions`.
|
|
%>
|
|
brew(1) -- The Missing Package Manager for macOS (or Linux)
|
|
===========================================================
|
|
|
|
## 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. It can also install software not packaged for your
|
|
Linux distribution without requiring `sudo`.
|
|
|
|
## TERMINOLOGY
|
|
|
|
**formula**
|
|
|
|
: Homebrew package definition that builds from upstream sources
|
|
|
|
**cask**
|
|
|
|
: Homebrew package definition that installs macOS native applications
|
|
|
|
**prefix**
|
|
|
|
: path in which Homebrew is installed, e.g. `/opt/homebrew` or `/home/linuxbrew/.linuxbrew`
|
|
|
|
**keg**
|
|
|
|
: installation destination directory of a given **formula** version, e.g. `/opt/homebrew/Cellar/foo/0.1`
|
|
|
|
**rack**
|
|
|
|
: directory containing one or more versioned **kegs**, e.g. `/opt/homebrew/Cellar/foo`
|
|
|
|
**keg-only**
|
|
|
|
: a **formula** is *keg-only* if it is not symlinked into Homebrew's prefix
|
|
|
|
**opt prefix**
|
|
|
|
: a symlink to the active version of a **keg**, e.g. `/opt/homebrew/opt/foo`
|
|
|
|
**Cellar**
|
|
|
|
: directory containing one or more named **racks**, e.g. `/opt/homebrew/Cellar`
|
|
|
|
**Caskroom**
|
|
|
|
: directory containing one or more named **casks**, e.g. `/opt/homebrew/Caskroom`
|
|
|
|
**external command**
|
|
|
|
: `brew` subcommand defined outside of the Homebrew/brew GitHub repository
|
|
|
|
**tap**
|
|
|
|
: directory (and usually Git repository) of **formulae**, **casks** and/or **external commands**
|
|
|
|
**bottle**
|
|
|
|
: pre-built **keg** poured into a **rack** of the **Cellar** instead of building from upstream sources
|
|
|
|
## ESSENTIAL COMMANDS
|
|
|
|
For the full command list, see the [COMMANDS](#commands) section.
|
|
|
|
With `--verbose` or `--debug`, many commands print extra debugging information.
|
|
Note that these options should only appear after a command.
|
|
|
|
Some command behaviour can be customised with environment variables; see the [ENVIRONMENT](#environment) section.
|
|
|
|
### `install` <formula>
|
|
|
|
Install <formula>.
|
|
|
|
<formula> is usually the name of the formula to install, but it has other
|
|
syntaxes which are listed in the [SPECIFYING FORMULAE](#specifying-formulae)
|
|
section.
|
|
|
|
### `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 flanked by slashes, 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 provided, all locally available formulae are listed.
|
|
|
|
## COMMANDS
|
|
|
|
<%= commands %>
|
|
|
|
## DEVELOPER COMMANDS
|
|
|
|
<%= developer_commands %>
|
|
|
|
## GLOBAL CASK OPTIONS
|
|
|
|
<%= global_cask_options %>
|
|
|
|
## GLOBAL OPTIONS
|
|
|
|
<%= global_options %>
|
|
|
|
## OFFICIAL EXTERNAL COMMANDS
|
|
|
|
<%= official_external_commands %>
|
|
|
|
## 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:
|
|
Homebrew can install formulae from a local path. It can point to either a
|
|
formula file or a bottle.
|
|
Prefix relative paths with `./` to prevent them from being interpreted as a
|
|
formula or tap name.
|
|
|
|
## SPECIFYING CASKS
|
|
|
|
Many Homebrew Cask commands accept one or more <cask> arguments. These can be
|
|
specified the same way as the <formula> arguments described in
|
|
`SPECIFYING FORMULAE` above.
|
|
|
|
## ENVIRONMENT
|
|
|
|
Note that environment variables must have a value set to be detected. For
|
|
example, run `export HOMEBREW_NO_INSECURE_REDIRECT=1` rather than just
|
|
`export HOMEBREW_NO_INSECURE_REDIRECT`.
|
|
|
|
`HOMEBREW_*` environment variables can also be set in Homebrew's environment
|
|
files:
|
|
|
|
* `/etc/homebrew/brew.env` (system-wide)
|
|
|
|
* `${HOMEBREW_PREFIX}/etc/homebrew/brew.env` (prefix-specific)
|
|
|
|
* `$XDG_CONFIG_HOME/homebrew/brew.env` if `$XDG_CONFIG_HOME` is set or
|
|
`~/.homebrew/brew.env` otherwise (user-specific)
|
|
|
|
User-specific environment files take precedence over prefix-specific files and
|
|
prefix-specific files take precedence over system-wide files (unless
|
|
`$HOMEBREW_SYSTEM_ENV_TAKES_PRIORITY` is set, see below).
|
|
|
|
Note that these files do not support shell variable expansion e.g. `$HOME` or
|
|
command execution e.g. `$(cat file)`.
|
|
|
|
<%= environment_variables %>
|
|
|
|
## 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>
|
|
|
|
Homebrew API: <https://rubydoc.brew.sh>
|
|
|
|
`git`(1), `git-log`(1)
|
|
|
|
## AUTHORS
|
|
|
|
<%= lead.concat("\n") %>
|
|
|
|
<%= plc.concat("\n") %>
|
|
|
|
<%= tsc.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>
|
|
|
|
**Homebrew/homebrew-cask**
|
|
|
|
: <https://github.com/Homebrew/homebrew-cask/issues>
|