One undeniable sign of progress among Linux distributions is the proliferation of easy-to-use, graphical package management applications. Tools like yum, Synaptic, and CNR are the rule these days rather than the exception. Mac OS X has free software fans, and a well-maintained collection of software at MacPorts, but for a long time those fans have been limited to the command line for finding, installing, and updating the offerings. Now a new utility called Porticus has arrived to present a slick GUI interface to the MacPorts collection, and it could make some converts.
Porticus is the work of Richard Laing, who says he set out to develop "a simple Mac-like application that allowed normal non-command-line users a painless way to install the open source packages provided by MacPorts."
MacPorts is a community-driven software portal, maintaining OS X source trees for more than 4,000 open source packages. Traditionally, using MacPorts to install a package required the command-line tool port, run inside OS X's Terminal application. Port would download the source code to the selected package, configure it, and compile it with Apple's built-in Xcode development environment.
At its core, Porticus is a wrapper around port. When you use Porticus to install a package, you can watch the output of the port process in a status window. For compilation and installation, port is not particularly difficult to use, but where is does fall short is in package collection. The only command-line options are
list (which dumps out the entire MacPorts library) and
search (which allows simple string-matching searches of package names).
Porticus' bigger innovation is its package browser. Using it, you can browse through the entire MacPorts collection, grouped by application category. Details are available for every package, including dependencies, current version number, and a paragraph-long description. Most MacPorts packages are compiled for either Intel or PowerPC Mac architectures, but some can be compiled in Universal Binary format. When this is an option for a particular package, Porticus allows you to specify whether you want the Univerval variant instead of single-architecture default.
Before installing Porticus, you need to have both working MacPorts and Xcode installations. Xcode is provided by Apple, and is installed with the OS X installation disc -- you can install it after initial OS installation is complete, so if you skipped it when you first set up your Mac, don't fret.
MacPorts is available from MacPorts.org. The site maintains the ports collection for the two most recent releases of OS X -- right now, that means 10.4 (a.k.a. Tiger) and 10.5 (a.k.a. Leopard). Leopard is quite new, so for the time being 10.3 ("Panther") builds are available, too -- but don't expect that to last forever. Grab the latest .DMG package appropriate to your version of OS X from the downloads page, mount the disk image, and run the installer.
Next, head over to the Porticus download page and download the newest release. The latest release is 1.0, which requires MacPorts 1.4 or greater. MacPorts itself is at 1.6, so this dependency should not be an issue. When you have completed the Porticus download, mount the disk image and drag the Porticus icon into your Applications folder.
The first time you run Porticus, it will probably ask you if you want it to check for self-updates. I set this to "No," just for my own convenience. Whenever you launch Porticus, though, it is a good idea to select Ports -> Reload Ports from the menu to ensure that you have the latest list of updates. Once you have done that, installing software is as easy as scrolling through the hierarchical list of packages, selecting the one you want, and clicking the Install button.
You can also use Porticus to uninstall packages and to find and install package updates. Because port is designed to download, compile, and install one package at a time, so is Porticus. If you have several selections to install, you must perform them sequentially.
More to come
I found Porticus remarkably easy to use. In fact, the only caveats I would make are peripheral. First, there is no help built in to the application, and little on the project Web site. That is unlikely to be a huge practical problem, since Porticus is so simple. If you do have trouble using Porticus, you are most likely having a problem with MacPorts itself, and the MacPorts documentation is the best place to look for answers.
Second, Porticus is only available in English and French localizations -- a deficit Laing is aware of; in fact he is soliciting help from interested users. If you want to spread MacPorts and Porticus to your corner of the world, step up and ask.
Laing says he has plans to expand the app's functionality. The next release will add support for local repositories in addition to the main MacPorts catalog, and future versions will build support for installing multiple selections at once. Considering how popular point-and-click package management is on Linux, it is a safe bet that it will be a winner on OS X as well.