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
| Feature | Homebrew | MacPorts | Fink |
|---|---|---|---|
| Install location | /opt/homebrew | /opt/local | /sw |
| Uses macOS libraries | Yes | No (self-contained) | Partially |
| Requires sudo | No | Yes | Yes |
| GUI app support | Yes (Cask) | No | No |
| Package count | Large and growing | Large | Smaller |
| Install speed | Fast | Slower (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:
Tags:
Year: