Linux software on Mac OS X


Fink is easy to install: Just download the correct (PowerPC or Intel) installer disk image from the website, double-click the download and then the Installer package inside the disk image, and follow the instructions. The path setup program (at /sw/bin/ should run automatically at the end of the install; if not, you can run it manually from the Terminal. (Any other users on your system will need to run it manually from their own account if they want to use Fink-installed packages.)

To begin, open a new Terminal window and run fink scanpackages; fink index. To update the fink package, enter these two command lines:

sudo apt-get update
sudo apt-get install fink

Now you should be able to install any other packages you want with the sudo apt-get install packagename command. If you prefer a GUI, you can use the Fink Commander software (Figure 1): Just launch the application, right-click on the relevant package name, and choose Binary | Install.

If you have Xcode, you can install from source with Fink. From Fink Commander, right-click on the package name then choose Source | Install. From the command line, use fink install packagename.

The packages in binary often lag behind the packages in source, so installing from source might be necessary sometimes.

To remove a package, use sudo apt-get remove packagename. In addition, it's worth noting that Fink installs all its software into /sw, so it doesn't interfere with your regular Apple software. This means that if you ever run into serious problems with an install or your Fink directory gets into an inconsistent state, you can simply remove the entire directory tree with sudo rm -rf /sw and reinstall from scratch.


To install MacPorts, stop by their website [1] to download the disk image for your version of OS X. To install it, mount the disk image and double-click on the package. The installer should adapt your path/shell automatically, but you might need to open a new Terminal window for this to take effect.

To update the available repositories, run sudo port selfupdate. (Each time you start installing software, it's a good idea to run this first.)

To install software, use sudo port install packagename. Dependencies will be installed automatically for you. Note that installing software from MacPorts can take a while because MacPorts usually builds the new package from source for you.

The sudo port search string command will search for partial matches of string. Also, you can specify software in other ways, such as with sudo port install category:net (Figure 2) to install all software in the "net" category. To see what exactly this will pull down, before installing, use sudo port echo category:net. This command merely lists the expansion that will be performed (i.e., the list of ports that match this category name, in this case).

To uninstall cleanly, use sudo port uninstall packagename. As with Fink, MacPorts installs everything separate from regular Apple software, but in this case, it's in /opt/local. So, again, if you run into serious problems, you can just delete the entire directory.

The sudo port installed command displays all currently installed ports, and you can upgrade all ports that have newer versions available with sudo port upgrade outdated.

MacPorts doesn't have a GUI available, so you're limited to the terminal. The port command is well documented, however (man port).


Both Fink and MacPorts do a very useful job reasonably well. If you prefer a GUI interface, you'll have to go with Fink; otherwise, both are about equally usable from the command line. The search command available with MacPorts doesn't seem to have a counterpart in Fink, but Fink will attempt to expand wildcard characters in package names. MacPorts also has more packages available, but they take longer to build than the binaries you get from Fink. Because the two projects occupy different directories, it's possible to use applications from both. Therefore, if you prefer, you can take advantage of the faster installs in Fink and fall back to MacPorts if Fink doesn't have the package you're after.

Bottom line: If you want consistency of software across your Linx and Mac machines, you can do it pretty easily.

The Author

Juliet Kemp has been playing around with Linux ever since she found out that it was more fun than Finals revision and has been a sys admin for about five years.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Free Software Projects

    Free software covers such a diverse range of utilities, applications, and other assorted projects, that it is hard to find the perfect tool. We pick the best of the bunch. This month, we’ll examine DRBD, Fink, and the Debian project leader election.

  • Free Software Projects

    Being well organized is very important, and free software developers can benefit from efficient time management and planning. OpenHatch facilitates the coordination of open source projects, and GTD-Free helps structure your leisure time.

  • Free Software Projects

    Matrex revolutionizes the way databases and spreadsheets cooperate, Font Manager handles fonts, and Window Switch magically sends program windows and complete desktops across the wire.

  • Comment


  • Mosh and AutoSSH

    SSH can make you crazy if the WLAN connection keeps breaking down, the IP address changes, or the data packets trickle over a slow mobile connection. AutoSSH and Mosh offer some features you won’t find in ordinary SSH.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you've found an article to be beneficial.