Homebrew is a free and open source package management system for Mac OS X users.
In other words Homebrew is a tool that helps you manage the installation of other open source software on your Mac.
You can find the official Homebrew installation tutorial here.
Here are some key features of "Homebrew":
Zero configuration installation:
· Copy the contents of this directory to /usr/local. Homebrew is now ready for use.
Or… install anywhere:
· You can actually stick this directory anywhere. Like ~/.local or /opt or /lol if you like. You can even move this directory somewhere else later. Homebrew never changes any files outside of its prefix.
The GoboLinux approach:
· Packages are installed into their own prefix (eg. /usr/local/Cellar/wget) and then symlinked into the Homebrew prefix (eg. /usr/local).
· This way packages can be managed with existing command line tools. You can uninstall with rm -rf, list with find, query with du. It also means you can easily install multiple versions of software or libraries and switch on demand.
· Of course you don't have to do anything by hand, we also provide a convenient and fully-featured four-letter tool called brew.
You don't have to sudo:
· It's up to you. We recommend not--see the relevant later section.
Easy package creation:
· Packages are just Ruby scripts. Generate a template with: brew create http://foo.com/tarball-0.8.9.tgz
· Homebrew will automatically open it for you to tweak with TextMate or $EDITOR. Or edit an existing formula: brew edit foo
DIY package installation:
· MacPorts doesn't support the beta version? Need an older version? Need custom compile flags? The Homebrew tool-chain is carefully segregated so you can build stuff by hand but still end up with package management.
Optimization:
· We optimize for (Snow) Leopard Intel, binaries are stripped, compile flags are tuned to your exact Mac model. Slow software sucks.
Making the most of OS X:
· A touch of RubyCocoa, a cheeky sysctl query or two and a smattering of FSEvent monitoring. In these manic days of cross-platform development, it's sometimes a welcome relieve to use something that is better because it isn't too generalized.
No duplication:
· MacPorts is an autarky -- you get a duplicate copy of zlib, OpenSSL, Python, etc. Homebrew isn't, and as a result everything you install has less dependencies and builds significantly faster.
· Homebrew can integrate with Ruby gems, CPAN and Python EasyInstall. These tools exist already and do the job great. We don't duplicate packaging effort, we just improve on it by making these tools install with more management options.
Fork with Git:
· The formula are all on git, so just fork to add new packages, or add extra remotes to get packages from more exotic maintainers.
Surfing the cutting edge:
· If the package provides a git://, svn://, cvs:// or hg:// url you can choose to install that instead and then update as often as you like.
Requirements:
· Apple Xcode 3.1 or later (gcc 4.2 or later)