mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
docs: update FAQ and Installation.
Make some miscellaneous updates to stuff I noticed was wrong.
This commit is contained in:
parent
94c0d833c3
commit
58c7d32183
31
docs/FAQ.md
31
docs/FAQ.md
@ -26,7 +26,7 @@ To allow that formulae to update again:
|
|||||||
|
|
||||||
brew unpin <formula>
|
brew unpin <formula>
|
||||||
|
|
||||||
Note that pinned, outdated formulae that are depended on by another formula will be upgraded when required as we do not allow formulae to be built against non-latest versions.
|
Note that pinned, outdated formulae that are depended on by another formula need to be upgraded when required as we do not allow formulae to be built against non-latest versions.
|
||||||
|
|
||||||
## How do I uninstall old versions of a formula?
|
## How do I uninstall old versions of a formula?
|
||||||
By default, Homebrew does not uninstall old versions of a formula, so
|
By default, Homebrew does not uninstall old versions of a formula, so
|
||||||
@ -55,7 +55,7 @@ and run `./uninstall --help` to view more uninstall options.
|
|||||||
## How do I uninstall a formula?
|
## How do I uninstall a formula?
|
||||||
If you do not uninstall all of the versions that Homebrew has installed,
|
If you do not uninstall all of the versions that Homebrew has installed,
|
||||||
Homebrew will continue to attempt to install the newest version it knows
|
Homebrew will continue to attempt to install the newest version it knows
|
||||||
about when you run `brew upgrade --all`. This can be surprising.
|
about when you run `brew upgrade`. This can be surprising.
|
||||||
|
|
||||||
To remove a formula entirely, you may run `brew uninstall formula_name --force`.
|
To remove a formula entirely, you may run `brew uninstall formula_name --force`.
|
||||||
|
|
||||||
@ -125,9 +125,9 @@ Or:
|
|||||||
fix this for Homebrew formulae (although we don’t always test for
|
fix this for Homebrew formulae (although we don’t always test for
|
||||||
it), but you’ll find that many RubyGems and Python setup scripts
|
it), but you’ll find that many RubyGems and Python setup scripts
|
||||||
break which is something outside our control.
|
break which is something outside our control.
|
||||||
3. **It’s safe**<br>Apple has left this directory for us. Which means
|
3. **It’s safe**<br>Apple has assigned this directory for non-system utilities. Which means
|
||||||
there is no `/usr/local` directory by default, so there
|
there is no files in `/usr/local` by default, so there
|
||||||
is no need to worry about messing up existing tools.
|
is no need to worry about messing up existing or system tools.
|
||||||
|
|
||||||
**If you plan to install gems that depend on
|
**If you plan to install gems that depend on
|
||||||
brews then save yourself a bunch of hassle and install to
|
brews then save yourself a bunch of hassle and install to
|
||||||
@ -139,21 +139,16 @@ It is not always straightforward to tell `gem` to look in non-standard directori
|
|||||||
**tl;dr** Sudo is dangerous, and you installed TextMate.app without sudo
|
**tl;dr** Sudo is dangerous, and you installed TextMate.app without sudo
|
||||||
anyway.
|
anyway.
|
||||||
|
|
||||||
Homebrew is designed to work without using sudo. You can decide to use
|
Homebrew refuses to work using sudo.
|
||||||
it but we strongly recommend not to do so. If you have used sudo and run
|
|
||||||
into a bug then this is likely to be the cause. Please don’t file a bug
|
|
||||||
report unless you can reproduce it after reinstalling Homebrew from
|
|
||||||
scratch without using sudo.
|
|
||||||
|
|
||||||
You should only ever sudo a tool you trust. Of course, you can trust
|
You should only ever sudo a tool you trust. Of course, you can trust Homebrew
|
||||||
Homebrew ;) But do you trust the multi-megabyte Makefile that Homebrew
|
;) But do you trust the multi-megabyte Makefile that Homebrew runs? Developers
|
||||||
runs? Developers often understand C++ far better than they understand
|
often understand C++ far better than they understand make syntax. It’s too high
|
||||||
make syntax. It’s too high a risk to sudo such stuff. It could break
|
a risk to sudo such stuff. It could modify (or upload) any files on your
|
||||||
your base system, or alter it subtly.
|
system.And indeed, we’ve seen some build scripts try to modify `/usr` even when
|
||||||
|
the prefix was specified as something else entirely.
|
||||||
|
|
||||||
And indeed, we’ve seen some build scripts try to modify
|
We use the macOS sandbox to stop this but this doesn't work when run as the `root` user (which also has read and write access to almost everything on the system).
|
||||||
`/usr` even when the prefix was specified as something else
|
|
||||||
entirely.
|
|
||||||
|
|
||||||
Did you `chown root /Applications/TextMate.app`? Probably
|
Did you `chown root /Applications/TextMate.app`? Probably
|
||||||
not. So is it that important to `chown root wget`?
|
not. So is it that important to `chown root wget`?
|
||||||
|
@ -11,7 +11,7 @@ it does it too. And you have to confirm everything it will do before it starts.
|
|||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
* An Intel CPU <sup>[1](#1)</sup>
|
* An Intel CPU <sup>[1](#1)</sup>
|
||||||
* OS X 10.10 or higher <sup>[2](#2)</sup>
|
* OS X 10.11 or higher <sup>[2](#2)</sup>
|
||||||
* Command Line Tools (CLT) for Xcode: `xcode-select --install`,
|
* Command Line Tools (CLT) for Xcode: `xcode-select --install`,
|
||||||
[developer.apple.com/downloads](https://developer.apple.com/downloads) or
|
[developer.apple.com/downloads](https://developer.apple.com/downloads) or
|
||||||
[Xcode](https://itunes.apple.com/us/app/xcode/id497799835) <sup>[3](#3)</sup>
|
[Xcode](https://itunes.apple.com/us/app/xcode/id497799835) <sup>[3](#3)</sup>
|
||||||
@ -24,6 +24,7 @@ Just extract (or `git clone`) Homebrew wherever you want. Just
|
|||||||
avoid:
|
avoid:
|
||||||
|
|
||||||
* Directories with names that contain spaces. Homebrew itself can handle spaces, but many build scripts cannot.
|
* Directories with names that contain spaces. Homebrew itself can handle spaces, but many build scripts cannot.
|
||||||
|
* `/tmp` subdirectories because Homebrew gets upset
|
||||||
* `/sw` and `/opt/local` because build scripts get confused when Homebrew is there instead of Fink or MacPorts, respectively.
|
* `/sw` and `/opt/local` because build scripts get confused when Homebrew is there instead of Fink or MacPorts, respectively.
|
||||||
|
|
||||||
However do yourself a favor and install to `/usr/local`. Some things may
|
However do yourself a favor and install to `/usr/local`. Some things may
|
||||||
@ -46,7 +47,7 @@ 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.md).
|
[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.11 or higher is recommended. 10.5–10.10 are
|
||||||
supported on a best-effort basis. For 10.4 see
|
supported on a best-effort basis. For 10.4 see
|
||||||
[Tigerbrew](https://github.com/mistydemeo/tigerbrew).
|
[Tigerbrew](https://github.com/mistydemeo/tigerbrew).
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user