MacPorts, Fink and Homebrew

If you want to install Unix tools on your Mac, there are three package managers to choose from: MacPorts, Fink and Homebrew. All three do the same basic job — install command-line software — but they go about it differently.

Homebrew

Homebrew is the newest of the three and the one most people use today. It installs packages into /usr/local (or /opt/homebrew on Apple Silicon) and tries to use libraries already provided by macOS rather than building everything from scratch. This makes installs faster and lighter.

brew install wget

Homebrew also has Cask for installing graphical applications, which the others do not offer.

MacPorts

MacPorts compiles everything from source and installs into its own /opt/local directory. It does not rely on anything macOS provides, so every package brings all of its dependencies along. This means longer install times and more disk space, but it also means fewer surprises when macOS changes something in an update.

sudo port install wget

MacPorts requires sudo for installs. Homebrew does not.

Fink

Fink is based on Debian's apt package manager. It was the first serious package manager for macOS and uses a familiar apt-get workflow. However, its package collection has fallen behind the other two, and development has slowed down.

fink install wget

How they compare

FeatureHomebrewMacPortsFink
Install location/opt/homebrew/opt/local/sw
Uses macOS librariesYesNo (self-contained)Partially
Requires sudoNoYesYes
GUI app supportYes (Cask)NoNo
Package countLarge and growingLargeSmaller
Install speedFastSlower (compiles more)Moderate

Which one to pick

Homebrew. It has the largest community, the most packages, installs quickly, and does not need sudo. Unless you have a specific reason to use MacPorts (for example, you need fully self-contained builds), Homebrew is the right choice for most people.


Enjoyed this post?

Well, you could share the post with others, follow me with RSS Feeds and/or send me a comment via email.


Tags

Category:

Year: