Skip to content
Mike McQuaid edited this page Feb 21, 2014 · 10 revisions

A list of things that would be neat to have in Homebrew. Feel free to fork Homebrew and add one yourself!

This is an unofficial list. Don’t expect work you do to always be pulled in.

Multiple Version Support

  • Add support for installing multiple versions of a formula.
  • When you install for the first time, it installs as per normal.
  • If a second install is attempted, it says 'already installed' if the version is the same
  • If the version is different (i.e. after an update of Homebrew), it should unlink the old version, and install/link the new version
  • A new brew switch [formula] command be added. It'll list the available versions for the formula, and ask for numeric input (which correspond to versions). The command will unlink the currently linked version, and link the selected version.
  • Homebrew doesn't know which formula is currently linked when multiple ones exist. Code needs to be added to make it aware. Maybe symlink a 'current' dir to the current links formula folder.
  • Similar function of the brew switch command be applied to the brew uninstall command (prompt which one be uninstall if multiple versions exist). If uninstalling the currently linked one, it'll link to the latest version.

Note, that there is already the tap homebrew/versions with certain (older) versions of some formulae.


Completed Wishlist Items

The following items from this page have been completed:

✔ Install Tests

Done: Formulae may define a test do ... end block, which can be run with brew test foo. Note: This is a post-install test (“sanity check”)—not a pre-install test (“installable check”).

✔ Aliases

Done: Aliases have been supported for a while. They're implemented as relative symlinks from Library/Alias to Library/Formula.

✔ Multiple OS integration

Done: Split out (some) code that's tied to Mac intoos/mac.rb. Done: Add support for other OSes (example: os/linux.rb)