You are missing something. Both Fink and MacPorts push the user
towards using an alternative directory structure (/sw for Fink, /opt)
rather than use /usr/local. Some people like this alternative path
structure as it can be easy to clean out, etc.
However, using either, when a package wasn't available, I often would
build from source under /usr/local and end up with two directory
structures, one for packages and one built from source. A pain.
Both systems required mucking with you PATH, etc. to maintain this
alternative software repository.
Both systems are ports of other platforms' (Fink is Debian apt style,
MacPorts is FreeBSD ports style) software packaging systems and don't
feel quite right on a Mac to me. Homebrew was a fresh approach to the
problem that also is a simplification and realizes the existing intent
of /usr/local in the *nix architecture. As such it also realizes
that sudo/root to install packages is usually unnecessary and is not a
I preferred MacPorts over Fink for a long time. My biggest gripe with
it was that packages were way behind the times. The community wasn't
there. Homebrew's biggest advantage is probably that it is very easy
to submit/update a package for a software library via being on github.
Fork, update Homebrew, pull request, and you are done. Use your fork
instead of the canonical Homebrew repository if you have custom needs,
The easiness of getting the pieces of software you need into the
system via Github makes the system stay grow rabidly and also keeps it