SeePorts

SeePorts is my first main project I have been working on for Mac OS X. It is a graphical interface for the MacPorts system. I begun development in December 2006, however due to an heavy term at university, I have had little time to work on it. I intend this to be a free addon which will enable all features of the underlying command line based system to be used by those . I have seen other GUIs (graphical user interfaces) for the MacPorts system, but can be overpriced, slow and basically down-right ugly.

This page is meant to be an introduction to some of the features I currently envision. Not all of these work and all are still definitely a work in progress. When I get to the point where I am happy to release an early version, you'll find it here.

The Main Window

The main window is the center of the application. It is designed to list the ports currently installed on the computer, and allow for the user to quickly manage their ports.

It currently loads the list on launch of the application, however I plan to have an option to have a persistent storage of the ports using Core Data. This needs to be thought about carefully as it effectively creates an additional database of ports, which could become out of sync; for example if the Port system is updated by the command line utility. The GUI needs to be able to sense when this change occurs and update its own database.

I also think there are three levels of possible persistent storage, one that stores every port's information, one that stores all the information of the installed ports, and the option of no storage, relying on gathering the port information as it's required. This last option will take time to gather the information every time the app is launched, but will mean the information is correct all the time. The first option will take a long time on the first launch, but will be a lot faster for each one thereafter. The second one is a good middle ground and will be the one I use, although an option for the other two could be made when the app launches, to have it user adjustable.

The Inspector

The Port Inspector is designed to feel familiar to any Mac user. It displays all the information about the selected port and can be used from any list of ports, for example the main or search windows.

As well as the information shown in the screenshot, it will display when the last port was updated, what other versions are installed but deactivated and options to choose which one to have active.

Searching & Installing

SeePorts will include several methods to install a port, one of these is by searching the available ports, choosing the one required and then clicking the install button. The current state of this feature is unstable. It will search the directory of ports, however some searches crash the application.

Another method of installing in mind is a directory searcher, with a list of all possible ports to install and using a browser to browser through the categories.