Trisha Shetty (Editor)

Homebrew (package management software)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Original author(s)
  
Max Howell

Written in
  
Ruby

Development status
  
Active

Operating system
  
macOS

Homebrew (package management software)

Initial release
  
2009; 8 years ago (2009)

Repository
  
github.com/Homebrew/homebrew

Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple's macOS operating system. Originally written by Max Howell, the package manager has gained popularity in the Ruby on Rails community and earned praise for its extensibility. Homebrew has been recommended for its ease of use as well as its integration into the command line.

Contents

Homebrew has made extensive use of GitHub in order to expand the support of several packages through user contributions. In 2010, Homebrew was the third-most-forked repository on GitHub. In 2012, Homebrew had the largest number of new contributors on GitHub. In 2013, Homebrew had both the largest number of contributors and issues closed of any project on GitHub.

Homebrew has spawned several sub-projects such as Linuxbrew, which is a Linux port, Homebrew Cask, which builds upon Homebrew and focuses on the installation of GUI applications, and "taps" dedicated to specific areas or programming languages like PHP.

History

Homebrew was written by Max Howell in 2009. In March 2013, Homebrew successfully completed a Kickstarter campaign to raise funds for servers to test and build formulae and managed to raise £14,859. On December 13, 2013, the Homebrew repository migrated from Howell's GitHub account to its own project account. In February 2015, due to downtime at SourceForge which resulted in binaries being unavailable, Homebrew moved their hosting to bintray. As of July 2016, Homebrew is maintained by a team of 12 developers.

Implementation

Homebrew is written in the Ruby programming language and targets the version of Ruby that comes installed with the macOS operating system. It is by default installed into /usr/local and consists of a git repository, allowing the user to update Homebrew by pulling an updated repository from Github. The package manager builds software from source using "formulae", Ruby scripts constructed with Homebrew's DSL for managing dependencies, downloading source files, and configuring and compiling software. Binary packages called "bottles" provide pre-built formulae with default options.

Earlier versions of Homebrew did not honor the default privileges of /usr/local; directory ownership needed to be changed from root with group permissions for the wheel group to the installing user and its primary group (usually "staff"). In 2016, Homebrew migrated the git repository to /usr/local/Homebrew and changed the ownership of the sub-directories instead, such as /usr/local/bin, /usr/local/include and /usr/local/lib.

Data collection

Homebrew collects user behaviour data and reports it to Google Analytics. It is possible to opt out.

References

Homebrew (package management software) Wikipedia


Similar Topics