Brief introduction

Homebrew is a community-driven package manager for macOS (and Linux) that simplifies installing, updating, and removing software. Originally developed by Max Howell, it’s distributed under an open-source license so anyone can view or modify the source code. Its goal is to make software management straightforward for people at all skill levels.

Architecture and choice of language

  • Built primarily in the Ruby programming language, Homebrew uses concise, high-level scripts to express package recipes.
  • The codebase favors clarity and predictable behavior, following design principles that reduce surprises for both newcomers and experienced users.
  • Formulae (package definitions) act like a small domain-specific language, enabling maintainable instructions for building software from source.

How packages are provided

  • Many packages are distributed as "bottles" — precompiled binaries that speed up installation.
  • Alternatively, Homebrew can compile software from source using its formulae, managing dependencies, fetching sources, and running configuration and build steps.
  • The combination of source-based formulae and binary bottles gives users flexibility between speed and customization.

Installation location and filesystem permissions

Homebrew installs itself under a user-writable prefix (commonly /usr/local on macOS). Because it operates within this prefix, it purposely avoids writing files outside that directory tree.

  • After installation, Homebrew maintains a git repository inside its prefix so updates and rollbacks are straightforward.
  • Homebrew will not function correctly if the prefix is owned and locked by root-only permissions; you may need to adjust directory ownership or group settings so the installer and maintenance commands can create and modify files.
  • Ownership changes typically require administrative privileges; the installer often expects directories to be writable by the installing user or an appropriate administrative group.

Custom installation locations and file linking

You can choose a different installation path if you prefer not to use the system default. Homebrew confines its files to its chosen prefix and then creates symbolic links from that prefix into locations like /usr/local/bin so installed programs are available on your PATH.

  • Homebrew’s restriction to its prefix makes it easy to remove or relocate the entire installation.
  • The formulae are simple Ruby scripts, which keeps the packaging format approachable for contributors of varying experience.

Target audience and ecosystem

Homebrew is well suited for developers and power users who want control over their development environment without invasive changes to the system. Its accessibility has led to complementary projects and extensions (for example, GUI installers or additional repositories) that expand its functionality.

  • Because the project is open-source, forks and derivative projects can be created and maintained independently.
  • Its straightforward scripting model makes Homebrew a practical choice for both new users learning package management and advanced users who need to tweak build options.

If you need a different approach or platform-specific tool, there are several alternatives and companion projects available that serve overlapping use cases for installing and managing software.

Technical

Title
Homebrew
Requirements
  • Mac
Language
No language has been specified.
Available languages
License
  • Free
Latest update
2023-01-31
Author
Max Howell
Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This App
Login To Rate This App

User Reviews

Be the first to post a review of Homebrew!