Homebrew is a package manager for your Mac, and one of my favorite tools! It’s such an essential tool. Homebrew complements your Mac by allowing you to install a vast number of packages (programs), commanding more power to your fingertips!
You will never live without it again.
Installing Homebrew
It’s as simple as entering the text below in your Terminal.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Yes. You are done. That is all. You are now ready to start sipping down all those taps!
What’s on tap? Search all those brews at Braumeister or on your terminal brew search
or brew search formula
.
How Homebrew Works 🍺
Homebrew does all the heavy lifting and installs packages to their own directory and then symlinks their files into /usr/local
. Doing so provides the flexibility of installing programs that otherwise you’d never have on your Mac, or would take a lot of time and/or work to install. It also takes away the fuzz of trying to manage different program versions, specially those conflicting with system dependent versions; for instance, installing Python3 when your system depends on Python2. It also keeps your fingers on your keyboard, which is one thing I always insist on! It’s elegant, simple, and fast.
This is why Homebrew is the easiest and most flexible way of installing UNIX tools (and much more) from source on Macs. It’s all Git and Ruby underneath, so you can hack away if you know Ruby and create your own formulas!
Cellar
Homebrew installs to the Cellar (/usr/local/Cellar/
) and then symlinks installations into /usr/local
. Basically, this is where your packages are located.
Taps
Git repositories where formulae reside, the main being homebrew-core. You will find other popular taps, like homebrew-science , that extend formulae to specific industries.
Cask
This is one my favorite features of Homebrew! Though I only realized this existed over a year after I started using Homebrew, this extension of Homebrew really brings it together for the Mac! Not only can you effortlessly install third-party source packages but Homebrew-Cask extends this feasibility of installing and managing GUI macOS applications such as Google Chrome , Firefox , Amazon Music , Atom , and much more.
Summary
The table below, grabbed directly from the Homebrew terminology page, summarizes their terminology.
Term | Description | Example |
---|---|---|
Formula | The package definition | /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/foo.rb |
Keg | The installation prefix of a Formula | /usr/local/Cellar/foo/0.1 |
opt prefix | A symlink to the active version of a Keg | /usr/local/opt/foo |
Cellar | All Kegs are installed here | /usr/local/Cellar |
Tap | A Git repository of Formulae and/or commands | /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core |
Bottle | Pre-built Keg used instead of building from source | qt-4.8.4.mavericks.bottle.tar.gz |
Cask | An extension of homebrew to install macOS native apps | /Applications/MacDown.app/Contents/SharedSupport/bin/macdown |
Brew Bundle | An extension of homebrew to describe dependencies | brew 'myservice', restart_service: true |
There you have it, with a simple command you get your package installed and all it’s dependencies resolved (installed). Easy. No fuzz. Now go enjoy working on that project you were on, and maybe grab a beer while you’re at it 🍻 (if you’re of legal age)!
Developer | Bioinformatician – Decoding the world, one line at a time.
Highly motivated developer predominantly working in Linux and developing software tools. All about open source software and fascinated by working with multitudes of technologies and languages. Striving to make a positive impact in this world.