mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
Revert "docs: use short links."
This reverts commit e63a2ee8de12f0f938f6a95cdb9763dbe0187b4a. Closes #3832.
This commit is contained in:
parent
d05b8522d5
commit
190e665bb1
@ -2,14 +2,14 @@
|
|||||||
|
|
||||||
Some formulae should not go in
|
Some formulae should not go in
|
||||||
[homebrew/core](https://github.com/Homebrew/homebrew-core). But there are
|
[homebrew/core](https://github.com/Homebrew/homebrew-core). But there are
|
||||||
additional [Interesting Taps and Forks](Interesting-Taps-and-Forks) and anyone can start their
|
additional [Interesting Taps and Forks](Interesting-Taps-and-Forks.md) and anyone can start their
|
||||||
own!
|
own!
|
||||||
|
|
||||||
### Dupes in `homebrew/core`
|
### Dupes in `homebrew/core`
|
||||||
We now accept stuff that comes with macOS as long as it uses `keg_only :provided_by_macos` to be keg-only by default.
|
We now accept stuff that comes with macOS as long as it uses `keg_only :provided_by_macos` to be keg-only by default.
|
||||||
|
|
||||||
### Versioned formulae in `homebrew/core`
|
### Versioned formulae in `homebrew/core`
|
||||||
We now accept versioned formulae as long as they [meet the requirements](Versions).
|
We now accept versioned formulae as long as they [meet the requirements](Versions.md).
|
||||||
|
|
||||||
### We don’t like tools that upgrade themselves
|
### We don’t like tools that upgrade themselves
|
||||||
Software that can upgrade itself does not integrate well with Homebrew's own
|
Software that can upgrade itself does not integrate well with Homebrew's own
|
||||||
@ -36,7 +36,7 @@ the upstream project. Tarballs are preferred to Git checkouts, and
|
|||||||
tarballs should include the version in the filename whenever possible.
|
tarballs should include the version in the filename whenever possible.
|
||||||
|
|
||||||
We don’t accept software without a tagged version because they regularly break
|
We don’t accept software without a tagged version because they regularly break
|
||||||
due to upstream changes and we can’t provide [bottles](Bottles) for them.
|
due to upstream changes and we can’t provide [bottles](Bottles.md) for them.
|
||||||
|
|
||||||
### Bindings
|
### Bindings
|
||||||
First check that there is not already a binding available via
|
First check that there is not already a binding available via
|
||||||
@ -62,7 +62,7 @@ get maintained and partly because we have to draw the line somewhere.
|
|||||||
We frown on authors submitting their own work unless it is very popular.
|
We frown on authors submitting their own work unless it is very popular.
|
||||||
|
|
||||||
Don’t forget Homebrew is all Git underneath!
|
Don’t forget Homebrew is all Git underneath!
|
||||||
[Maintain your own tap](How-to-Create-and-Maintain-a-Tap) if you have to!
|
[Maintain your own tap](How-to-Create-and-Maintain-a-Tap.md) if you have to!
|
||||||
|
|
||||||
There may be exceptions to these rules in the main repository; we may
|
There may be exceptions to these rules in the main repository; we may
|
||||||
include things that don't meet these criteria or reject things that do.
|
include things that don't meet these criteria or reject things that do.
|
||||||
|
@ -8,7 +8,7 @@ If a bottle is available and usable it will be downloaded and poured automatical
|
|||||||
Bottles will not be used if the user requests it (see above), if the formula requests it (with `pour_bottle?`), if any options are specified during installation (bottles are all compiled with default options), if the bottle is not up to date (e.g. lacking a checksum) or if the bottle's `cellar` is not `:any` nor equal to the current `HOMEBREW_CELLAR`.
|
Bottles will not be used if the user requests it (see above), if the formula requests it (with `pour_bottle?`), if any options are specified during installation (bottles are all compiled with default options), if the bottle is not up to date (e.g. lacking a checksum) or if the bottle's `cellar` is not `:any` nor equal to the current `HOMEBREW_CELLAR`.
|
||||||
|
|
||||||
## Creation
|
## Creation
|
||||||
Bottles are created using the [Brew Test Bot](Brew-Test-Bot). This happens mostly when people submit pull requests to Homebrew and the `bottle do` block is updated by maintainers when they `brew pull --bottle` the contents of a pull request. For the Homebrew organisations' taps they are uploaded to and downloaded from [Bintray](https://bintray.com/homebrew).
|
Bottles are created using the [Brew Test Bot](Brew-Test-Bot.md). This happens mostly when people submit pull requests to Homebrew and the `bottle do` block is updated by maintainers when they `brew pull --bottle` the contents of a pull request. For the Homebrew organisations' taps they are uploaded to and downloaded from [Bintray](https://bintray.com/homebrew).
|
||||||
|
|
||||||
By default, bottles will be built for the oldest CPU supported by the OS/architecture you're building for. (That's Core 2 for 64-bit OSs, Core for 32-bit.) This ensures that bottles are compatible with all computers you might distribute them to. If you *really* want your bottles to be optimized for something else, you can pass the `--bottle-arch=` option to build for another architecture - for example, `brew install foo --bottle-arch=penryn`. Just remember that if you build for a newer architecture some of your users might get binaries they can't run and that would be sad!
|
By default, bottles will be built for the oldest CPU supported by the OS/architecture you're building for. (That's Core 2 for 64-bit OSs, Core for 32-bit.) This ensures that bottles are compatible with all computers you might distribute them to. If you *really* want your bottles to be optimized for something else, you can pass the `--bottle-arch=` option to build for another architecture - for example, `brew install foo --bottle-arch=penryn`. Just remember that if you build for a newer architecture some of your users might get binaries they can't run and that would be sad!
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ If a build has run and passed on `brew test-bot` then it can be used to quickly
|
|||||||
There are two types of Jenkins jobs you will interact with:
|
There are two types of Jenkins jobs you will interact with:
|
||||||
|
|
||||||
## [Homebrew Core Pull Requests](https://jenkins.brew.sh/job/Homebrew%20Core/)
|
## [Homebrew Core Pull Requests](https://jenkins.brew.sh/job/Homebrew%20Core/)
|
||||||
This job automatically builds any pull requests submitted to Homebrew/homebrew-core. On success or failure it updates the pull request status (see more details on the [main Brew Test Bot documentation page](Brew-Test-Bot)). On a successful build it automatically uploads bottles.
|
This job automatically builds any pull requests submitted to Homebrew/homebrew-core. On success or failure it updates the pull request status (see more details on the [main Brew Test Bot documentation page](Brew-Test-Bot.md)). On a successful build it automatically uploads bottles.
|
||||||
|
|
||||||
## [Homebrew Testing](https://jenkins.brew.sh/job/Homebrew%20Testing/)
|
## [Homebrew Testing](https://jenkins.brew.sh/job/Homebrew%20Testing/)
|
||||||
This job is manually triggered to run [`brew test-bot`](https://github.com/Homebrew/homebrew-test-bot/blob/master/cmd/brew-test-bot.rb) with user-specified parameters. On a successful build it automatically uploads bottles.
|
This job is manually triggered to run [`brew test-bot`](https://github.com/Homebrew/homebrew-test-bot/blob/master/cmd/brew-test-bot.rb) with user-specified parameters. On a successful build it automatically uploads bottles.
|
||||||
|
@ -8,4 +8,4 @@ As Homebrew became primarily a binary package manager, most users were fulfillin
|
|||||||
|
|
||||||
## Today
|
## Today
|
||||||
|
|
||||||
If you wish to build against custom non-Homebrew dependencies that are provided by Homebrew (e.g. a non-Homebrew, non-macOS `ruby`) then you must [create and maintain your own tap](How-to-Create-and-Maintain-a-Tap) as these formulae will not be accepted in Homebrew/homebrew-core. Once you have done that you can specify `env :std` in the formula which will allow a e.g. `which ruby` to access your existing `PATH` variable and allow compilation to link against this Ruby.
|
If you wish to build against custom non-Homebrew dependencies that are provided by Homebrew (e.g. a non-Homebrew, non-macOS `ruby`) then you must [create and maintain your own tap](How-to-Create-and-Maintain-a-Tap.md) as these formulae will not be accepted in Homebrew/homebrew-core. Once you have done that you can specify `env :std` in the formula which will allow a e.g. `which ruby` to access your existing `PATH` variable and allow compilation to link against this Ruby.
|
||||||
|
@ -121,7 +121,7 @@ To list all files that would be deleted:
|
|||||||
|
|
||||||
Don't follow the advice here but fix by using
|
Don't follow the advice here but fix by using
|
||||||
`Language::Python.setup_install_args` in the formula as described in
|
`Language::Python.setup_install_args` in the formula as described in
|
||||||
[Python for Formula Authors](Python-for-Formula-Authors).
|
[Python for Formula Authors](Python-for-Formula-Authors.md).
|
||||||
|
|
||||||
### Upgrading macOS
|
### Upgrading macOS
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ Note they are largely untested, and as always, be careful about running untested
|
|||||||
|
|
||||||
### brew-livecheck
|
### brew-livecheck
|
||||||
Check if there is a new upstream version of a formula.
|
Check if there is a new upstream version of a formula.
|
||||||
See the [`README`](https://github.com/Homebrew/homebrew-livecheck/blob/master/README) for more info and usage.
|
See the [`README`](https://github.com/Homebrew/homebrew-livecheck/blob/master/README.md) for more info and usage.
|
||||||
|
|
||||||
Install using:
|
Install using:
|
||||||
|
|
||||||
|
@ -76,11 +76,11 @@ the launchctl PATH for _all users_. For earlier versions of macOS, see
|
|||||||
[this page](https://developer.apple.com/legacy/library/qa/qa1067/_index.html).
|
[this page](https://developer.apple.com/legacy/library/qa/qa1067/_index.html).
|
||||||
|
|
||||||
## How do I contribute to Homebrew?
|
## How do I contribute to Homebrew?
|
||||||
Read [CONTRIBUTING.md](https://github.com/Homebrew/brew/blob/master/CONTRIBUTING).
|
Read [CONTRIBUTING.md](https://github.com/Homebrew/brew/blob/master/CONTRIBUTING.md).
|
||||||
|
|
||||||
## Why do you compile everything?
|
## Why do you compile everything?
|
||||||
Homebrew provides pre-compiled versions for many formulae. These
|
Homebrew provides pre-compiled versions for many formulae. These
|
||||||
pre-compiled versions are referred to as [bottles](Bottles) and are available
|
pre-compiled versions are referred to as [bottles](Bottles.md) and are available
|
||||||
at <https://bintray.com/homebrew/bottles>.
|
at <https://bintray.com/homebrew/bottles>.
|
||||||
|
|
||||||
If available, bottled binaries will be used by default except under the
|
If available, bottled binaries will be used by default except under the
|
||||||
@ -163,7 +163,7 @@ creating a separate user account especially for use of Homebrew.
|
|||||||
|
|
||||||
## Why isn’t a particular command documented?
|
## Why isn’t a particular command documented?
|
||||||
|
|
||||||
If it’s not in `man brew`, it’s probably an external command. These are documented [here](External-Commands).
|
If it’s not in `man brew`, it’s probably an external command. These are documented [here](External-Commands.md).
|
||||||
|
|
||||||
## Why haven’t you pulled my pull request?
|
## Why haven’t you pulled my pull request?
|
||||||
If it’s been a while, bump it with a “bump” comment. Sometimes we miss requests and there are plenty of them. Maybe we were thinking on something. It will encourage consideration. In the meantime if you could rebase the pull request so that it can be cherry-picked more easily we will love you for a long time.
|
If it’s been a while, bump it with a “bump” comment. Sometimes we miss requests and there are plenty of them. Maybe we were thinking on something. It will encourage consideration. In the meantime if you could rebase the pull request so that it can be cherry-picked more easily we will love you for a long time.
|
||||||
@ -179,7 +179,7 @@ install <formula>`. If you encounter any issues, run the command with the
|
|||||||
into a debugging shell.
|
into a debugging shell.
|
||||||
|
|
||||||
If you want your new formula to be part of `homebrew/core` or want
|
If you want your new formula to be part of `homebrew/core` or want
|
||||||
to learn more about writing formulae, then please read the [Formula Cookbook](Formula-Cookbook).
|
to learn more about writing formulae, then please read the [Formula Cookbook](Formula-Cookbook.md).
|
||||||
|
|
||||||
## Can I install my own stuff to `/usr/local`?
|
## Can I install my own stuff to `/usr/local`?
|
||||||
Yes, `brew` is designed to not get in your way so you can use it how you
|
Yes, `brew` is designed to not get in your way so you can use it how you
|
||||||
|
@ -29,7 +29,7 @@ Make sure you run `brew update` before you start. This turns your Homebrew insta
|
|||||||
|
|
||||||
Before submitting a new formula make sure your package:
|
Before submitting a new formula make sure your package:
|
||||||
|
|
||||||
* meets all our [Acceptable Formulae](Acceptable-Formulae) requirements
|
* meets all our [Acceptable Formulae](Acceptable-Formulae.md) requirements
|
||||||
* isn't already in Homebrew (check `brew search <formula>`)
|
* isn't already in Homebrew (check `brew search <formula>`)
|
||||||
* isn't in another official [Homebrew tap](https://github.com/Homebrew)
|
* isn't in another official [Homebrew tap](https://github.com/Homebrew)
|
||||||
* isn't already waiting to be merged (check the [issue tracker](https://github.com/Homebrew/homebrew-core/pulls))
|
* isn't already waiting to be merged (check the [issue tracker](https://github.com/Homebrew/homebrew-core/pulls))
|
||||||
@ -37,7 +37,7 @@ Before submitting a new formula make sure your package:
|
|||||||
* has a stable, tagged version (i.e. not just a GitHub repository with no versions)
|
* has a stable, tagged version (i.e. not just a GitHub repository with no versions)
|
||||||
* passes all `brew audit --new-formula <formula>` tests.
|
* passes all `brew audit --new-formula <formula>` tests.
|
||||||
|
|
||||||
Before submitting a new formula make sure you read over our [contribution guidelines](https://github.com/Homebrew/brew/blob/master/CONTRIBUTING).
|
Before submitting a new formula make sure you read over our [contribution guidelines](https://github.com/Homebrew/brew/blob/master/CONTRIBUTING.md).
|
||||||
|
|
||||||
### Grab the URL
|
### Grab the URL
|
||||||
|
|
||||||
@ -251,7 +251,7 @@ Check the top of the e.g. `./configure` output. Some configure scripts do not re
|
|||||||
|
|
||||||
### Add a test to the formula
|
### Add a test to the formula
|
||||||
|
|
||||||
Add a valid test to the [`test do`](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#test-class_method) block of the formula. This will be run by `brew test foo` and the [Brew Test Bot](Brew-Test-Bot).
|
Add a valid test to the [`test do`](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#test-class_method) block of the formula. This will be run by `brew test foo` and the [Brew Test Bot](Brew-Test-Bot.md).
|
||||||
|
|
||||||
The
|
The
|
||||||
[`test do`](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#test-class_method)
|
[`test do`](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#test-class_method)
|
||||||
@ -534,7 +534,7 @@ end
|
|||||||
|
|
||||||
### Compiler selection
|
### Compiler selection
|
||||||
|
|
||||||
Sometimes a package fails to build when using a certain compiler. Since recent [Xcode versions](Xcode) no longer include a GCC compiler we cannot simply force the use of GCC. Instead, the correct way to declare this is the [`fails_with` DSL method](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#fails_with-class_method). A properly constructed [`fails_with`](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#fails_with-class_method) block documents the latest compiler build version known to cause compilation to fail, and the cause of the failure. For example:
|
Sometimes a package fails to build when using a certain compiler. Since recent [Xcode versions](Xcode.md) no longer include a GCC compiler we cannot simply force the use of GCC. Instead, the correct way to declare this is the [`fails_with` DSL method](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#fails_with-class_method). A properly constructed [`fails_with`](http://www.rubydoc.info/github/Homebrew/brew/master/Formula#fails_with-class_method) block documents the latest compiler build version known to cause compilation to fail, and the cause of the failure. For example:
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
fails_with :clang do
|
fails_with :clang do
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Python
|
# Python
|
||||||
|
|
||||||
This page describes how Python is handled in Homebrew for users. See [Python for Formula Authors](Python-for-Formula-Authors) for advice on writing formulae to install packages written in Python.
|
This page describes how Python is handled in Homebrew for users. See [Python for Formula Authors](Python-for-Formula-Authors.md) for advice on writing formulae to install packages written in Python.
|
||||||
|
|
||||||
Homebrew should work with any [CPython](https://stackoverflow.com/questions/2324208/is-there-any-difference-between-cpython-and-python) and defaults to the macOS system Python.
|
Homebrew should work with any [CPython](https://stackoverflow.com/questions/2324208/is-there-any-difference-between-cpython-and-python) and defaults to the macOS system Python.
|
||||||
|
|
||||||
@ -66,7 +66,7 @@ Some formulae provide Python bindings. Sometimes a `--with-python` or `--with-py
|
|||||||
|
|
||||||
Homebrew builds bindings against the first `python` (and `python-config`) in your `PATH`. (Check with `which python`).
|
Homebrew builds bindings against the first `python` (and `python-config`) in your `PATH`. (Check with `which python`).
|
||||||
|
|
||||||
**Warning!** Python may crash (see [Common Issues](Common-Issues)) if you `import <module>` from a brewed Python if you ran `brew install <formula_with_python_bindings>` against the system Python. If you decide to switch to the brewed Python, then reinstall all formulae with Python bindings (e.g. `pyside`, `wxwidgets`, `pygtk`, `pygobject`, `opencv`, `vtk` and `boost-python`).
|
**Warning!** Python may crash (see [Common Issues](Common-Issues.md)) if you `import <module>` from a brewed Python if you ran `brew install <formula_with_python_bindings>` against the system Python. If you decide to switch to the brewed Python, then reinstall all formulae with Python bindings (e.g. `pyside`, `wxwidgets`, `pygtk`, `pygobject`, `opencv`, `vtk` and `boost-python`).
|
||||||
|
|
||||||
## Policy for non-brewed Python bindings
|
## Policy for non-brewed Python bindings
|
||||||
These should be installed via `pip install <package>`. To discover, you can use `pip search` or <https://pypi.python.org/pypi>. (**Note:** System Python does not provide `pip`. Follow the [pip documentation](https://pip.readthedocs.io/en/stable/installing/#install-pip) to install it for your system Python if you would like it.)
|
These should be installed via `pip install <package>`. To discover, you can use `pip search` or <https://pypi.python.org/pypi>. (**Note:** System Python does not provide `pip`. Follow the [pip documentation](https://pip.readthedocs.io/en/stable/installing/#install-pip) to install it for your system Python if you would like it.)
|
||||||
|
@ -34,7 +34,7 @@ To make a new branch and submit it for review, create a GitHub pull request with
|
|||||||
1. Check out the `master` branch with `git checkout master`.
|
1. Check out the `master` branch with `git checkout master`.
|
||||||
2. Retrieve new changes to the `master` branch with `brew update`.
|
2. Retrieve new changes to the `master` branch with `brew update`.
|
||||||
3. Create a new branch from the latest `master` branch with `git checkout -b <YOUR_BRANCH_NAME> origin/master`.
|
3. Create a new branch from the latest `master` branch with `git checkout -b <YOUR_BRANCH_NAME> origin/master`.
|
||||||
4. Make your changes. For formulae, use `brew edit` or your favorite text editor, following all the guidelines in the [Formula Cookbook](Formula-Cookbook).
|
4. Make your changes. For formulae, use `brew edit` or your favorite text editor, following all the guidelines in the [Formula Cookbook](Formula-Cookbook.md).
|
||||||
* If there's a `bottle do` block in the formula, don't remove or change it; we'll update it when we pull your PR.
|
* If there's a `bottle do` block in the formula, don't remove or change it; we'll update it when we pull your PR.
|
||||||
5. Test your changes by doing the following, and ensure they all pass without issue. For changed formulae, make sure you do the `brew audit` step while your changed formula is installed.
|
5. Test your changes by doing the following, and ensure they all pass without issue. For changed formulae, make sure you do the `brew audit` step while your changed formula is installed.
|
||||||
* `brew tests`
|
* `brew tests`
|
||||||
|
@ -27,7 +27,7 @@ If it’s on GitHub, users can install any of your formulae with
|
|||||||
file here.
|
file here.
|
||||||
|
|
||||||
If they want to get your tap without installing any formula at the same time,
|
If they want to get your tap without installing any formula at the same time,
|
||||||
users can add it with the [`brew tap` command](Taps).
|
users can add it with the [`brew tap` command](Taps.md).
|
||||||
|
|
||||||
If it’s on GitHub, they can use `brew tap user/repo`, where `user` is your
|
If it’s on GitHub, they can use `brew tap user/repo`, where `user` is your
|
||||||
GitHub username and `homebrew-repo` your repository.
|
GitHub username and `homebrew-repo` your repository.
|
||||||
@ -51,7 +51,7 @@ Once your tap is installed, Homebrew will update it each time a user runs
|
|||||||
|
|
||||||
## External commands
|
## External commands
|
||||||
You can provide your tap users with custom `brew` commands by adding them in a
|
You can provide your tap users with custom `brew` commands by adding them in a
|
||||||
`cmd` subdirectory. [Read more on external commands](External-Commands).
|
`cmd` subdirectory. [Read more on external commands](External-Commands.md).
|
||||||
|
|
||||||
See [homebrew/aliases](https://github.com/Homebrew/homebrew-aliases) for an
|
See [homebrew/aliases](https://github.com/Homebrew/homebrew-aliases) for an
|
||||||
example of a tap with external commands.
|
example of a tap with external commands.
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## What does "keg-only" mean?
|
## What does "keg-only" mean?
|
||||||
|
|
||||||
The [FAQ](FAQ) briefly explains this.
|
The [FAQ](FAQ.md) briefly explains this.
|
||||||
|
|
||||||
As an example:
|
As an example:
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ The suggested and easiest way to install Homebrew is on the
|
|||||||
[homepage](https://brew.sh).
|
[homepage](https://brew.sh).
|
||||||
|
|
||||||
The standard script installs Homebrew to `/usr/local` so that
|
The standard script installs Homebrew to `/usr/local` so that
|
||||||
[you don’t need sudo](FAQ) when you
|
[you don’t need sudo](FAQ.md) when you
|
||||||
`brew install`. It is a careful script; it can be run even if you have stuff
|
`brew install`. It is a careful script; it can be run even if you have stuff
|
||||||
installed to `/usr/local` already. It tells you exactly what it will do before
|
installed to `/usr/local` already. It tells you exactly what it will do before
|
||||||
it does it too. And you have to confirm everything it will do before it starts.
|
it does it too. And you have to confirm everything it will do before it starts.
|
||||||
@ -39,12 +39,12 @@ mkdir homebrew && curl -L https://github.com/Homebrew/brew/tarball/master | tar
|
|||||||
Create a Homebrew installation wherever you extract the tarball. Whichever `brew` command is called is where the packages will be installed. You can use this as you see fit, e.g. a system set of libs in `/usr/local` and tweaked formulae for development in `~/homebrew`.
|
Create a Homebrew installation wherever you extract the tarball. Whichever `brew` command is called is where the packages will be installed. You can use this as you see fit, e.g. a system set of libs in `/usr/local` and tweaked formulae for development in `~/homebrew`.
|
||||||
|
|
||||||
## Uninstallation
|
## Uninstallation
|
||||||
Uninstallation is documented in the [FAQ](FAQ).
|
Uninstallation is documented in the [FAQ](FAQ.md).
|
||||||
|
|
||||||
<a name="1"><sup>1</sup></a> Not all formulae have CPU or OS requirements, but
|
<a name="1"><sup>1</sup></a> Not all formulae have CPU or OS requirements, but
|
||||||
you can assume you will have trouble if you don’t conform. Also, you can find
|
you can assume you will have trouble if you don’t conform. Also, you can find
|
||||||
PowerPC and Tiger branches from other users in the fork network. See
|
PowerPC and Tiger branches from other users in the fork network. See
|
||||||
[Interesting Taps and Forks](Interesting-Taps-and-Forks).
|
[Interesting Taps and Forks](Interesting-Taps-and-Forks.md).
|
||||||
|
|
||||||
<a name="2"><sup>2</sup></a> 10.10 or higher is recommended. 10.5–10.9 are
|
<a name="2"><sup>2</sup></a> 10.10 or higher is recommended. 10.5–10.9 are
|
||||||
supported on a best-effort basis. For 10.4 see
|
supported on a best-effort basis. For 10.4 see
|
||||||
|
@ -5,7 +5,7 @@ access** to Homebrew’s repository and help merge the contributions of
|
|||||||
others. You may find what is written here interesting, but it’s
|
others. You may find what is written here interesting, but it’s
|
||||||
definitely not a beginner’s guide.
|
definitely not a beginner’s guide.
|
||||||
|
|
||||||
Maybe you were looking for the [Formula Cookbook](Formula-Cookbook)?
|
Maybe you were looking for the [Formula Cookbook](Formula-Cookbook.md)?
|
||||||
|
|
||||||
## Quick checklist
|
## Quick checklist
|
||||||
|
|
||||||
@ -45,7 +45,7 @@ Add other names as aliases as symlinks in `Aliases` in the tap root. Ensure the
|
|||||||
name referenced on the homepage is one of these, as it may be different and have
|
name referenced on the homepage is one of these, as it may be different and have
|
||||||
underscores and hyphens and so on.
|
underscores and hyphens and so on.
|
||||||
|
|
||||||
We now accept versioned formulae as long as they [meet the requirements](Versions).
|
We now accept versioned formulae as long as they [meet the requirements](Versions.md).
|
||||||
|
|
||||||
### Merging, rebasing, cherry-picking
|
### Merging, rebasing, cherry-picking
|
||||||
Merging should be done in the `Homebrew/brew` repository to preserve history & GPG commit signing,
|
Merging should be done in the `Homebrew/brew` repository to preserve history & GPG commit signing,
|
||||||
@ -64,7 +64,7 @@ the commits. Our main branch history should be useful to other people,
|
|||||||
not confusing.
|
not confusing.
|
||||||
|
|
||||||
### Testing
|
### Testing
|
||||||
We need to at least check that it builds. Use the [Brew Test Bot](Brew-Test-Bot) for this.
|
We need to at least check that it builds. Use the [Brew Test Bot](Brew-Test-Bot.md) for this.
|
||||||
|
|
||||||
Verify the formula works if possible. If you can’t tell (e.g. if it’s a
|
Verify the formula works if possible. If you can’t tell (e.g. if it’s a
|
||||||
library) trust the original contributor, it worked for them, so chances are it
|
library) trust the original contributor, it worked for them, so chances are it
|
||||||
|
@ -59,6 +59,6 @@ If they accept, follow a few steps to get them set up:
|
|||||||
- Invite them to the [`homebrew` private maintainers 1Password](https://homebrew.1password.com/signin)
|
- Invite them to the [`homebrew` private maintainers 1Password](https://homebrew.1password.com/signin)
|
||||||
- Invite them to [Google Analytics](https://analytics.google.com/analytics/web/?authuser=1#management/Settings/a76679469w115400090p120682403/%3Fm.page%3DAccountUsers/)
|
- Invite them to [Google Analytics](https://analytics.google.com/analytics/web/?authuser=1#management/Settings/a76679469w115400090p120682403/%3Fm.page%3DAccountUsers/)
|
||||||
|
|
||||||
After a month-long trial period with no problems make them [owners on the Homebrew GitHub organisation](https://github.com/orgs/Homebrew/people) and add them to [Homebrew's README](https://github.com/Homebrew/brew/edit/master/README). If there are problems, ask them to step down as a maintainer and revoke their access to the above.
|
After a month-long trial period with no problems make them [owners on the Homebrew GitHub organisation](https://github.com/orgs/Homebrew/people) and add them to [Homebrew's README](https://github.com/Homebrew/brew/edit/master/README.md). If there are problems, ask them to step down as a maintainer and revoke their access to the above.
|
||||||
|
|
||||||
Now sit back, relax and let the new maintainers handle more of our contributions.
|
Now sit back, relax and let the new maintainers handle more of our contributions.
|
||||||
|
@ -82,7 +82,7 @@ In your formula's `install` method, do any installation steps which need to be d
|
|||||||
system "npm", "install", *Language::Node.local_npm_install_args
|
system "npm", "install", *Language::Node.local_npm_install_args
|
||||||
```
|
```
|
||||||
|
|
||||||
This will install all of your Node modules dependencies to your local build path. You can now continue with your build steps and take care of the installation into the Homebrew `prefix` on your own, following the [general Homebrew formula instructions](Formula-Cookbook).
|
This will install all of your Node modules dependencies to your local build path. You can now continue with your build steps and take care of the installation into the Homebrew `prefix` on your own, following the [general Homebrew formula instructions](Formula-Cookbook.md).
|
||||||
|
|
||||||
## Example
|
## Example
|
||||||
|
|
||||||
|
@ -1,46 +1,46 @@
|
|||||||
# Documentation
|
# Documentation
|
||||||
|
|
||||||
## Users
|
## Users
|
||||||
- [`brew` man-page (command documentation)](Manpage)
|
- [`brew` man-page (command documentation)](Manpage.md)
|
||||||
- [Troubleshooting](Troubleshooting)
|
- [Troubleshooting](Troubleshooting.md)
|
||||||
- [Installation](Installation)
|
- [Installation](Installation.md)
|
||||||
- [Frequently Asked Questions](FAQ)
|
- [Frequently Asked Questions](FAQ.md)
|
||||||
- [Common Issues](Common-Issues)
|
- [Common Issues](Common-Issues.md)
|
||||||
|
|
||||||
- [Tips and Tricks](Tips-N'-Tricks)
|
- [Tips and Tricks](Tips-N'-Tricks.md)
|
||||||
- [Bottles (binary packages)](Bottles)
|
- [Bottles (binary packages)](Bottles.md)
|
||||||
- [Taps (third-party repositories)](Taps)
|
- [Taps (third-party repositories)](Taps.md)
|
||||||
- [Interesting Taps and Forks](Interesting-Taps-and-Forks)
|
- [Interesting Taps and Forks](Interesting-Taps-and-Forks.md)
|
||||||
- [Anonymous Aggregate User Behaviour Analytics](Analytics)
|
- [Anonymous Aggregate User Behaviour Analytics](Analytics.md)
|
||||||
|
|
||||||
- [Querying `brew`](Querying-Brew)
|
- [Querying `brew`](Querying-Brew.md)
|
||||||
- [C++ Standard Libraries](C++-Standard-Libraries)
|
- [C++ Standard Libraries](C++-Standard-Libraries.md)
|
||||||
- [MD5 and SHA-1 Deprecation](Checksum_Deprecation)
|
- [MD5 and SHA-1 Deprecation](Checksum_Deprecation.md)
|
||||||
- [Custom GCC and Cross Compilers](Custom-GCC-and-cross-compilers)
|
- [Custom GCC and Cross Compilers](Custom-GCC-and-cross-compilers.md)
|
||||||
- [External Commands](External-Commands)
|
- [External Commands](External-Commands.md)
|
||||||
- [Ruby Gems, Python Eggs and Perl Modules](Gems,-Eggs-and-Perl-Modules)
|
- [Ruby Gems, Python Eggs and Perl Modules](Gems,-Eggs-and-Perl-Modules.md)
|
||||||
- [Python](Homebrew-and-Python)
|
- [Python](Homebrew-and-Python.md)
|
||||||
- [How To Build Software Outside Homebrew With Homebrew `keg_only` dependencies](How-to-build-software-outside-Homebrew-with-Homebrew-keg-only-dependencies)
|
- [How To Build Software Outside Homebrew With Homebrew `keg_only` dependencies](How-to-build-software-outside-Homebrew-with-Homebrew-keg-only-dependencies.md)
|
||||||
- [Xcode](Xcode)
|
- [Xcode](Xcode.md)
|
||||||
- [Kickstarter Supporters](Kickstarter-Supporters)
|
- [Kickstarter Supporters](Kickstarter-Supporters.md)
|
||||||
|
|
||||||
## Contributors
|
## Contributors
|
||||||
- [How To Open A Pull Request (and get it merged)](How-To-Open-a-Homebrew-Pull-Request)
|
- [How To Open A Pull Request (and get it merged)](How-To-Open-a-Homebrew-Pull-Request.md)
|
||||||
- [Formula Cookbook](Formula-Cookbook)
|
- [Formula Cookbook](Formula-Cookbook.md)
|
||||||
- [Acceptable Formulae](Acceptable-Formulae)
|
- [Acceptable Formulae](Acceptable-Formulae.md)
|
||||||
- [Formulae Versions](Versions)
|
- [Formulae Versions](Versions.md)
|
||||||
- [Node for Formula Authors](Node-for-Formula-Authors)
|
- [Node for Formula Authors](Node-for-Formula-Authors.md)
|
||||||
- [Python for Formula Authors](Python-for-Formula-Authors)
|
- [Python for Formula Authors](Python-for-Formula-Authors.md)
|
||||||
- [Migrating A Formula To A Tap](Migrating-A-Formula-To-A-Tap)
|
- [Migrating A Formula To A Tap](Migrating-A-Formula-To-A-Tap.md)
|
||||||
- [Rename A Formula](Rename-A-Formula)
|
- [Rename A Formula](Rename-A-Formula.md)
|
||||||
- [Building Against Non-Homebrew Dependencies](Building-Against-Non-Homebrew-Dependencies)
|
- [Building Against Non-Homebrew Dependencies](Building-Against-Non-Homebrew-Dependencies.md)
|
||||||
- [How To Create (And Maintain) A Tap](How-to-Create-and-Maintain-a-Tap)
|
- [How To Create (And Maintain) A Tap](How-to-Create-and-Maintain-a-Tap.md)
|
||||||
- [Brew Test Bot](Brew-Test-Bot)
|
- [Brew Test Bot](Brew-Test-Bot.md)
|
||||||
- [Prose Style Guidelines](Prose-Style-Guidelines)
|
- [Prose Style Guidelines](Prose-Style-Guidelines.md)
|
||||||
|
|
||||||
## Maintainers
|
## Maintainers
|
||||||
- [New Maintainer Checklist](New-Maintainer-Checklist)
|
- [New Maintainer Checklist](New-Maintainer-Checklist.md)
|
||||||
- [Maintainers: Avoiding Burnout](Maintainers-Avoiding-Burnout)
|
- [Maintainers: Avoiding Burnout](Maintainers-Avoiding-Burnout.md)
|
||||||
- [Maintainer Guidelines](Maintainer-Guidelines)
|
- [Maintainer Guidelines](Maintainer-Guidelines.md)
|
||||||
- [Brew Test Bot For Maintainers](Brew-Test-Bot-For-Core-Contributors)
|
- [Brew Test Bot For Maintainers](Brew-Test-Bot-For-Core-Contributors.md)
|
||||||
- [Common Issues for Maintainers](Common-Issues-for-Core-Contributors)
|
- [Common Issues for Maintainers](Common-Issues-for-Core-Contributors.md)
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
## Installing previous versions of formulae
|
## Installing previous versions of formulae
|
||||||
|
|
||||||
The supported method of installing specific versions of
|
The supported method of installing specific versions of
|
||||||
some formulae is to see if there is a versioned formula (e.g. `gcc@6`) available. If the version you’re looking for isn’t available, consider [opening a pull request](How-To-Open-a-Homebrew-Pull-Request)!
|
some formulae is to see if there is a versioned formula (e.g. `gcc@6`) available. If the version you’re looking for isn’t available, consider [opening a pull request](How-To-Open-a-Homebrew-Pull-Request.md)!
|
||||||
|
|
||||||
### Installing directly from pull requests
|
### Installing directly from pull requests
|
||||||
You can [browse pull requests](https://github.com/Homebrew/homebrew-core/pulls)
|
You can [browse pull requests](https://github.com/Homebrew/homebrew-core/pulls)
|
||||||
|
@ -12,7 +12,7 @@ Follow these steps to fix common problems:
|
|||||||
* Run `brew doctor` and fix all the warnings (**outdated Xcode/CLT and unbrewed dylibs are very likely to cause problems**).
|
* Run `brew doctor` and fix all the warnings (**outdated Xcode/CLT and unbrewed dylibs are very likely to cause problems**).
|
||||||
* Check that **Command Line Tools for Xcode (CLT)** and **Xcode** are up to date.
|
* Check that **Command Line Tools for Xcode (CLT)** and **Xcode** are up to date.
|
||||||
* If commands fail with permissions errors, check the permissions of `/usr/local`'s subdirectories. If you’re unsure what to do, you can run `cd /usr/local && sudo chown -R $(whoami) bin etc include lib sbin share var Frameworks`.
|
* If commands fail with permissions errors, check the permissions of `/usr/local`'s subdirectories. If you’re unsure what to do, you can run `cd /usr/local && sudo chown -R $(whoami) bin etc include lib sbin share var Frameworks`.
|
||||||
* Read through the [Common Issues](Common-Issues).
|
* Read through the [Common Issues](Common-Issues.md).
|
||||||
|
|
||||||
## Check to see if the issue has been reported
|
## Check to see if the issue has been reported
|
||||||
|
|
||||||
|
@ -18,6 +18,6 @@ Versioned formulae we include in [homebrew/core](https://github.com/homebrew/hom
|
|||||||
* Versioned formulae should be as similar as possible and sensible to the unversioned formulae. Creating or updating a versioned formula should be a chance to ask questions of the unversioned formula e.g. can some unused or useless options be removed or made default?
|
* Versioned formulae should be as similar as possible and sensible to the unversioned formulae. Creating or updating a versioned formula should be a chance to ask questions of the unversioned formula e.g. can some unused or useless options be removed or made default?
|
||||||
* No more than five versions of a formula (including the non-versioned one) will be supported at any given time, regardless of usage. When removing formulae that violate this we will aim to do so based on usage and support status rather than age.
|
* No more than five versions of a formula (including the non-versioned one) will be supported at any given time, regardless of usage. When removing formulae that violate this we will aim to do so based on usage and support status rather than age.
|
||||||
|
|
||||||
Homebrew's versions are not intended to be used for any old versions you personally require for your project. You should create your own [tap](How-to-Create-and-Maintain-a-Tap) for formulae you or your organisation wish to control the versioning of or those that do not meet the above standards. Software that has regular API or ABI breaking releases still needs to meet all the above requirements; that a `brew upgrade` has broken something for you is not an argument for us to add and maintain a formula for you.
|
Homebrew's versions are not intended to be used for any old versions you personally require for your project. You should create your own [tap](How-to-Create-and-Maintain-a-Tap.md) for formulae you or your organisation wish to control the versioning of or those that do not meet the above standards. Software that has regular API or ABI breaking releases still needs to meet all the above requirements; that a `brew upgrade` has broken something for you is not an argument for us to add and maintain a formula for you.
|
||||||
|
|
||||||
We may temporarily add versioned formulae for our own needs that do not meet these standards in [homebrew/core](https://github.com/homebrew/homebrew-core). The presence of a versioned formula there does not imply it will be maintained indefinitely or that we are willing to accept any more versions that do not meet the requirements above.
|
We may temporarily add versioned formulae for our own needs that do not meet these standards in [homebrew/core](https://github.com/homebrew/homebrew-core). The presence of a versioned formula there does not imply it will be maintained indefinitely or that we are willing to accept any more versions that do not meet the requirements above.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user