Joe Maller.com

MacPorts

The project formerly known as DarwinPorts has spent the past few months transitioning to MacPorts. The project is now hosted on Mac OS Forge, after OpenDarwin decided to shutdown.

Unfortunately, the project appears to be foundering. To be fair, they’ve undertaken several fairly huge architectural challenges including moving from CVS to Subversion, from BugZilla to Trac and of course from OpenDarwin to MacOSForge. All of these moves are non-trivial undertakings especially considering the amount of data they must have.

While there has been a lot of port maintenance activity on the Trac revision log, what worries me is the lack of traffic on the MacPorts developer mailing list and the lack of news on the project site.

Worst of all, there is no obvious dowload link. It wasn’t that the link was just misplaced or buried, they kind of didn’t make one for this release. The 3.5 screens of wiki installation info should be bad joke, especially since a package manager exists to make one’s life easier.

Thankfully, some of the devs know this, and while pointing out why no download link is a problem, also pointed out a far better installation path. Here’s a far better way to get MacPorts up and running:

How to install MacPorts

  1. Download the previous 1.3.1 dmg installer and install
  2. In Terminal, run sudo port selfupdate

That two-step installation should be prominently displayed on the MacPorts site.

Two caveats to the above: Install XCode and the Developer tools, you’ll need the C compilers that install with it. If it doesn’t work after the above, check your PATH and default shell. I’ve had the best luck running bash. If echo $SHELL returns something other than bash, change the default in Terminal preferences (or NetInfoManager). The installer should have added ‘/opt/local/bin:/opt/local/sbin:’ to the $PATH declartion in ~/.profile, if it didn’t, add it yourself.

Why bother with any of this?

If you ever need to install some disparate piece of Unix software, I can’t recommend a port manager like MacPorts strongly enough. Get over the “I built that from code” puffery because unless you’re an old-hand Unix jock it takes way too long to track down and build the zillion required libraries, repeat steps and figure out where everything went. A port manager takes all the guesswork out of the process and makes maintenance of installed software easy (while writing this, MacPorts upgraded dozens of installed components and libraries in the background). I’ve tried Fink previously, but preferred the simplicity of MacPorts. Either one will make your life easier.

Yes there are occasional bad ports, or applications that don’t behave and bugger up the works. These usually get straightened out and can be avoided by trailing the bleeding edge by a few weeks. I will default to a binary installer when they’re available, but for all those other tools, a port manager is essential.