fink: Downloads and Installs Software
A great deal of software can be downloaded from the Internet for free. The tools discussed in Chapter 12 (page 477) cover most of what you need to know to build programs that you download from the Internet. Most software packages come with some instructions for building and installing them. Sites such as SourceForge (sourceforge.net), versiontracker (www.versiontracker.com/osx), and freshmeat (osx.freshmeat.net) can help you find thousands of software packages that can be built on Mac OS X.
Caution: Do not create /etc/pam.conf
You may have encountered PAM on other systems where all configuration is arranged in a single file (/etc/pam.conf). This file does not exist on Mac OS X systems. Instead, the /etc/pam.d directory contains individual configuration files, one for each application that uses PAM. This setup makes it easy to install and uninstall applications that use PAM without having to modify the /etc/pam.conf file each time. If you create a /etc/pam.conf file on a system that does not use this file, your PAM configuration may become confused. Do not use PAM documentation from a different system.
The fink utility (fink.sourceforge.net) automates the downloading and installation of software packages including files that a package is dependent on. The Fink project maintains a database of thousands of UNIX programs that it has ported to OS X. While fink is not distributed with Mac OS X, it is easy to download and install. The fink installer is distributed as a .dmg file containing the installation package as a standard Macintosh package file. Double-click the package to run the installer (you will need to supply an administrative password).
To avoid clashes with other packages, fink installs files in the /sw directory hierarchy. Executables are stored in /sw/bin and the installer attempts to add this directory to your PATH.
Once fink is installed, you can use it to install other packages automatically. Give the command fink --help to display a list of the functions that fink provides. The most commonly used commands are apropos, list, describe, install, and update.
The apropos command lists packages with a given word in their descriptions; the list command lists packages with a given word in their package names. For example, fink apropos web lists 32 packages but fink list web lists only the web2png package.
The following example shows fink installing the netpbm graphics package and its dependencies:
$ fink install netpbm-bin Password: Information about 1766 packages read in 0 seconds. The following package will be installed or updated: netpbm-bin The following 4 additional packages will be installed: libjpeg-shlibs libpng3-shlibs libtiff-shlibs netpbm10-shlibs Do you want to continue? [Y/n]
Like sudo, fink uses your password (you must be a member of the admin group)not the root passwordto gain the Superuser privileges that it needs to install software.