<% # 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/.{rb,sh}`. # - For `.rb` files, edit the `_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`
`brew` \[`--verbose`\|`-v`\] \[\] \[\] ... ## 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` Install . 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` Uninstall . ### `list` List all installed formulae. ### `search` \[\|`/``/`\] Perform a substring search of cask tokens and formula names for . If is flanked by slashes, it is interpreted as a regular expression. The search for 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-` or `brew-``.rb`, which can be invoked like `brew` . 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: ## SPECIFYING FORMULAE Many Homebrew commands accept one or more 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 arguments. These can be specified the same way as the 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: Homebrew API: `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** : **Homebrew/homebrew-core** : **Homebrew/homebrew-cask** :