Open Source/GNU Software for MacOS X - Summary

Preface

Since Apple MacOS X is a member of UNIX family and shares many parts and components with other open source operating systems (especially FreeBSD), it is obviously that capabilities and features of MacOS X may be greatly extended with enormous number of free software packages. Apple did not provided "unified" method of installing and maintaining of UNIX-derived software and its components (please do not mix up it with MacOS X native software installed via drag-and-drop file/folder copying). This is probably caused by the assumption that MacOS X already has all UNIX components needed by the majority of users. However, certain tasks require extension or replacement of UNIX parts of MacOS X. This situation created opportunity for several solutions tailored for certain auditory. Below you will find those I have found so far (end of November of 2002).

Fink

Fink is a MacOS X port of package management system APT (Advanced Package Tool), package manager dpkg, and some front-ends for these tools from Debian/GNU Linux. However, this is only a part of Fink does for MacOS X. The greatest feature of Fink is that it creates its own UNIX directory tree (separated from MacOS X) where it keeps all its files (UNIX directory tree in brief described here).

Fink, as well as all UNIX software properly packaged with Fink (except Darwin/MacOS X version of XFree86 windowing system) do not install anything into MacOS X system directories (including "/usr/local") or alter any MacOS X system file(s). Thus, it is completely safe. If something goes wrong, one can just erase entire Fink directory without damaging MacOS X. However, please take into account that Fink tracks only software installed with Fink itself !

In short: Fink is the most complete and powerful set of Open Source software for MacOS X. For further learning, please refer to "Safe and Happy UNIX Hacking with MacOS X".

OSX GNU

OSX GNU is the second largest repository of Open Source software for MacOS X. Unlike Fink, it uses native MacOS X packages (archived with pax). However, each OSX GNU package has an extra item - BOM (Bill of Material) file, which is being installed along with the package and contains list of all components. Later you can use utility called OSXPM (OS X Package Manager) to uninstall OSX GNU software.

DarwinPorts

DarwinPorts is an environment for porting UNIX software to MacOS X. Like Fink and OSX GNU, DarwinPorts tracks package dependencies and information about installed items. Full-featured package management system is not written yet, however, with DarwinPorts one can create snapshot of compiled binaries in order to generate distributable software package (installed by default into "/opt/local"). DarwinPorts is maintained by the group of volunteers, including some key Apple MacOS X developers. At the time I am writing this (end of November 2002), DarwinPorts has only 140 software packages.

SourceForge.net

SourceForge.net is the world-largest repository of open source software for all platforms, including MacOS X. Just search by "MacOS" keyword in order to select and browse catalog of available Mac-related projects. By the way, Fink is hosted on SourceForge.net.

Please note that SourceForge.net itself is a repository (storage + categorized database + advanced tools for developers), and not installable software product.

PS. On the SourceForge.net you can find really interesting MacOS X software - Gimp-Print (large set of open source printer drivers), ESP GhostScript (open source PostScript&PDF Interpreter/RIP), and XonX (XFree86 package, alternative to the one available from Fink and OSX GNU).

Mac OS X Packages by Marc Liyanage

Marc Liyanage was one of the first who have built and tested PHP, MySQL and PostgreSQL MacOS X native packages. PHP module compiled by Marc replaces Apple's one (which has very limited number of extensions), and thus, may downgraded/replaced during Apple Software Update if its alters Web Sharing component(s).

AaronFaby.com Jaguar Downloads

AaronFaby.com as name suggests maintained by Aaron Faby. He provides various MacOS X Jaguar packages (Apache 2, PHP, MySQL, PostgreSQL, Tomcat, etc.), which install components into Finder-visible directory "Library", not into private UNIX directories invisible in the Finder. Others (like Perl) overwrite corresponding "standard" components of MacOS X.

Blakers' Open Source OSX Server

Blakers' Open Source OSX Server site provides vast selection of open source software for MacOS X (albeit smaller compared to Fink and OSX GNU). It seems Mr Blaker (maintainer of this site) simply enjoys tinkering with this stuff and shares his work with others.

MacOSX.Forked.net

MacOSX.Forked.net is quite similar to Blakers' Open Source OSX Server. Maintainer of this site also promotes his own Web hosting services.

OpenOSX.com

OpenOSX.com offers complete solutions based on open source software (Database/Web CD, Gimp CD, Grass CD). This stuff is not available via free download, but via subscription service instead.

Conclusion

If you use your Mac just to develop (or host) database-driven dynamic web site(s), you can stick with the MacOS X packages from Marc Liyanage or AaronFaby.com. For full-blown open source/GNU system (with XFree86 and/or OpenOffice suite) Fink and OSX GNU are the best choice (these two systems have dependency tracking/resolution mechanism for installing software). Additionally, you can even combine both of them. For example, OpenOffice suite for MacOS X requires XFree86 windowing system to be installed (because of port to Cocoa is in very early development stage). By default, OpenOffice installs OSX GNU package of XFree86. In this case you should instruct Fink to install virtual package of XFree86 (system-xfree86). It will satisfy package dependencies and inform Fink-packaged software to use third-party ("alien") libraries.

The DarwinPorts seem to be more suitable for developers writing (or porting) core MacOS X components. It is very likely that DarwinPorts auto-build system will be part of MacOS X sometime in the future. However, at present time DarwinPorts include very modest (compared to Fink and OSX GNU ) set of packages.

The only really exclusive stuff available from OpenOSX.com is the Grass (however, beta port of Grass already included with Fink). If you do not need it, there are no reason to pay for their subscription services. Of course, you can compile and install all open source software yourself, and in this case Blakers' Open Source OSX Server site may offer you some helpful tips.

Below you can find brief comparison between Fink, OSX GNU and DarwinPorts. Please note that this information is posted at the beginning of December 2002, situation may change in the near future.

  Fink OSX GNU DarwinPorts
# of available Packages Over 1600 (in unstable tree) Several hundreds (no exact numbers were available) 140
Package management system Yes (APT) Uses standard Apple packages with BOM (Bill of Material) file Will be available in the future
Tracking of Installed Components Yes, in central database Yes, each package installs BOM file Yes
Tracking of package dependencies Yes Yes Yes
Virtual Packages support (see description above - Link) Yes No ???
Creates separate UNIX directory tree Yes No No
May safely substitute MacOS X built-in libraries, servers and daemons Yes Partially ???
GUI Front-End Yes Yes Yes

 

 


MacGuruHQ and MacGuruHQ Logo

Copyright© 1996 - 2002 by Andrei Verovski. All right reserved. Content may not be copied in whole or in part, through electronic or other means, without the author's permission. MacGuru Logo (blue penguin) by Sergey Orehov.