CLI junkies, this one’s for you.
Mac OS X doesn’t ship with an official package manager in a Unix/Linux sense. And why should it? Apple has a proven track record targeting the casual technology user ready to trade a credit card number for convenience, and this approach earns buckets of money. Thus the recent introduction of the Mac App store should come as no surprise. (And personally as a fan of ‘Internet as change agent’ I love that it will, even marginally, help reduce carbon emissions – Apple already plans to remove boxed software from its retail stores.)
Unlike in the smartphone world, software distribution for both producers and consumers on PCs/Macs has been traditionally been ‘everybody is on their own.’ On Windows there are standard 3rd party conventions, such as NSIS, and Microsoft/Apple-sanctioned ways of packaging software for distribution (.MSI and .PKG respectively). But developers/ISVs are not required to use them, and many don’t. (I’m looking at you, Adobe – your Mac installers are seriously the worst I’ve ever seen! Sometimes devs have reasonable grounds (read: limited time/resources) to employ them, but VISE and other Java-based installers I’ve encountered are unabashedly gross.)
Let’s jump away from the commercial side of computing for a moment and talk open source. Command line junkies (read: me) are into simple, lightweight solutions. We probably won’t ever use the Mac App store, preferring traditional open source package managers. We’re the folks comfortable at the command line and with modifying config files. Debian’s apt, Gentoo’s portage, FreeBSD’s ports, Red Hat’s yum are our bread and butter. The philosophies between us and the App Store’s target audience couldn’t be more different.
Speaking from the command line junkie perspective, I recently made the move from Darwin ports to homebrew. The best experience so far was the first one:
brew install git
It pulled the source and ‘just worked’ with minimal messing with my existing system.
ports, we’ll chat again when
port install git
doesn’t start weirdly compiling perl 5.8 on top of the perl 5.10 already supplied, supported by Apple, and working fine, thank you very much.