This external command allows you to switch between installed versions of
a formula. If you have multiple versions of a formula in your cellar, the
standard "brew link" command will refuse to run.
This new command "brew switch" tries to unlink all versions of the brew
from the prefix, then links the specific requested version.
When an "install -d formula" fails, and the user gets dropped into an
interactive shell, set the HOMEBREW_DEBUG_INSTALL env var to the name
for the formula that failed. Also set variable if the user requests an
interactive install in the first place.
Note that this may be different than the formula being installed, since
it may have been a dep that failed.
Also remove todo in utils; users can now look for HOMEBREW_DEBUG_INSTALL
in their prompt command, and adjust their prompts accordingly.
Includes: generator script, ronn source, manpage output
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Man page updates.
* Generator command is now an external command with additional options
* Added more brew commands
* Tweaks and reformats
If the user has, for instance, a non-system "xml2-config" in the path
ahead of the system and Homebrew folders, ./configure scripts which
look for and use this config script will get confused.
This command looks for Cocoa Applications (.app bundles) in the prefix
of all installed formulae. If any are found, they are linked into
"~/Applications", the system-defined location for per-user apps.
A formula using svn can now provide a spec:
:revisions => {...revision numbers...}
that contains a mapping of revision numbers to use
for externals.
The name of the external is keyed to the revision to
use for that external.
The symbol :trunk should be used to specify the reivsion
of the main repo.
An example from the Ffmpeg formula:
head 'svn://svn.ffmpeg.org/ffmpeg/trunk',
:revisions => { :trunk => 22916, 'libswscale' => 31045 }
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Now makes use of `svn up` to make cache act like
a cache. Externals without a revision specified
are now checked out at HEAD, whereas before they
were ignored. Escaping arguments to backticks.
Making sure main repo is checked out before the
externals.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Homebrew will now look for external commands that are +x on PATH, named
as "brew-<cmd>" or "brew-<cmd>.rb"
* Shell scripts are exec'd with some HOMEBREW variables set in the ENV.
* Ruby scripts are require'd directly.
See: http://wiki.github.com/mxcl/homebrew/external-commands
If a formula name is passed to "brew --cellar", output the location of that
brew in the Cellar (which will be "brew --prefix (formula)" without a version
sub-folder.)
This allows for:
rm -rf `brew --cellar node`
for deleting all versions of node, installed or not.
Report "Expected <supplied digest>, got <file's digest>"
when verify_download_integrity sees a mismatch. (It had
been, confusingly, reporting "Expected <file's digest>".)
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
If the user has linked the keg-only gettext, then a large number
of formulae which don't have "depends_on 'gettext'" will pick it
up anyway. Knowing this about the user's setup may help diagnose
bug reports.