What is Homebrew

Aug 20, 2024

Mike McQuaid

Homebrew is a popular open-source package manager, primarily used on macOS (but also on Linux).

Here we will spell out the basics of package managers and share details about Homebrew in particular. 

What is a package manager?

A package is software that you can install, remove, and upgrade on your system.

Package managers, broadly-speaking, fall into two categories:

  1. The first is an system package manager that installs software into a specific location on your OS e.g. Homebrew on macOS, Apt on Ubuntu, DNF on Fedora

  2. The second is a language-specific package manager that provides dependencies or applications for or written in a particular programming language e.g. RubyGems for Ruby, NPM for NodeJS, or pip for Python 

What is Homebrew?

Homebrew is a system package manager for macOS. This means it's a tool that you can use to install all of the software that you need on your Mac, whether that's command line tools (e.g. curl, wget), desktop applications (e.g. Google Chrome, 1Password), or developer dependencies (e.g. the PostgreSQL or MySQL databases). 

Glossary of Homebrew

  • Homebrew - the open-source package manager which fetches, installs, upgrades and uninstalls packages (formulae or casks) on your machine.

  • brew - the executable used to run Homebrew (or Workbrew).

  • Formula - build instructions for packages installed by Homebrew that are built from the source code.

  • Cask - packages in Homebrew that install binaries from elsewhere (i.e. not open-source software built by Homebrew). These are most commonly used for installing desktop applications. You can use it to install things like 1Password, Google Chrome or Visual Studio Code, or many other Mac desktop apps. 

  • Taps - collections of formulae, casks or commands run by Homebrew or third parties.

  • Homebrew/homebrew-core - the official formulae tap with bottles for Homebrew. Only includes open-source software.

  • Homebrew/homebrew-cask - the official cask tap for Homebrew.

Key benefits of Homebrew

Standardization

Homebrew’s formulae allow many users to install the same software in a standardized way. Homebrew/homebrew-core (and some other taps) provide “bottles”, pre-compiled binaries, which means users don’t have to wait for a potentially lengthy build from source-code on their machine. 

Curation 

One key benefit of Homebrew is its curation. To be included or updated in Homebrew’s official package Taps (Homebrew/homebrew-core or Homebrew/homebrew-cask) there is a minimum standard and a human review process. This is similar to the approach used by Ubuntu’s main repositories or the Apple App Store. In contrast, package managers like NPM allow anyone to publish or update a package without any human review.

Up-to-date 

Homebrew is a “rolling release package manager”, which means that the Homebrew maintainers keep all packages in official repositories as up-to-date as possible at all times. This is in contrast to other package managers that maintain a specific version of a package and support it for a longer periods of time. When a user runs brew upgrade Homebrew will replace the older version on your machine with the newer version. 

Manages dependencies 

Some packages have no “dependencies”, meaning you can install one package and you’re done. Other packages will have dependencies. For example, CMake is freestanding, but many, many packages depend on it. If you install a package that requires CMake, Homebrew will automatically install it for you first. 

When a new version of the package is released, you can run brew upgrade and it will replace the version on your machine with the newer version. If you want to get rid of something, you're going to run brew uninstall, and it will remove the package from your system, whether it's a cask or a formula. 

If you want to keep install, upgrade, uninstall and view the packages installed not just on your machine but all the machines in your team, organization or company: try Workbrew today, the best way to use Homebrew at work.

never miss a post

Subscribe to receive the latest blog updates directly to your inbox.

Join the Workbrew Crew

Revolutionize software delivery.

We’re looking for folks to join our Go-to-Market and Operations functions. Check out our current job openings to learn more about our remote-first culture and values.

Secure software delivery at work.

Supercharge Homebrew to increase developer productivity, reduce IT workload, and improve your security posture.

Secure software delivery at work.

Supercharge Homebrew to increase developer productivity, reduce IT workload, and improve your security posture.

Secure software delivery at work.

Supercharge Homebrew to increase developer productivity, reduce IT workload, and improve your security posture.

Secure software delivery at work.

Supercharge Homebrew to increase developer productivity, reduce IT workload, and improve your security posture.