Fink and binary distributions

Fink was originally intended to be a package manager that automates the download-patch-build-install-update-remove process of software packages on Mac OS/Darwin. It also provides the necessary tools (based on dpkg and APT) to use binary distributions (bindists for short) of packages in .deb format, thus relieving users from the time-consuming build stage. Fink will use bindists if the following line

UseBinaryDist: true

is present in its configuration file, /sw/etc/fink.conf. There is also a command-line option, -b or –use-binary-dist, that instructs fink to use bindists in that particular execution.

Fink defaults to using its own bindist, which is mirrored throughout some servers around the world — the list of mirrors is stored in /sw/lib/fink/mirror/apt. Fink’s binary distribution contains binary .deb packages for softwares in the stable tree only. Furthermore, some licences restrict the distribution of binaries, thus not every package in stable has a respective .deb file available in Fink’s bindist. Creating an official, tested, and reliable binary distribution takes time, and the Fink Core team does not update their binary distribution that often.

Because of these shortcomings, and as Fink’s APT engine allows for using any number of bindists, some people have decided to provide unofficial binary distributions. Bear in mind that unofficial binary distributions are not supported by the Fink project. If you encounter problems with unofficial binary packages, please rebuild them from source before contacting the Fink project. Also bear in mind that the Fink project cannot vouch for the security of unofficial binaries.

The largest bindist is maintained by the Todai Fink team at the University of Tokyo, Japan. They have an automated build system that continuously builds binary packages using the unstable tree, targeting OS X 10.4 and OS X 10.5 on both Intel i386 and PowerPC, as well as OS X 10.3, which is no longer supported by Fink.

Another unofficial binary distribution is maintained by William G. Scott. As opposed to the Todai Fink team, William Scott has a few selected binary packages usually related to scientific computing, targeting OS 10.5 on Intel i386 and PowerPC, as well as OS 10.6. One notable difference between Todai’s and Scott’s bindists is that Scott provides GCC versions 4.3 and 4.4 — these are lengthy builds.

How does one add binary distributions to Fink’s APT engine? The file /sw/etc/apt/sources.list contains the list of APT sources/repositories. It is automatically managed by Fink for its basic operation, including the official binary distribution. You may modify it in order to add different (unofficial) binary distributions by inserting the following lines at the beginning or at the end of that file.

For OS X 10.6 on Intel, 64-bit Fink,

deb http://sage.ucsc.edu/fink_intel_10.6_64bit stable main crypto
deb http://sage.ucsc.edu/fink_intel_10.6_64bit unstable main crypto

For OS X 10.6 on Intel, 32-bit Fink,

deb http://sage.ucsc.edu/fink_intel_10.6_32bit stable main crypto
deb http://sage.ucsc.edu/fink_intel_10.6_32bit unstable main crypto

For OS X 10.5 on Intel, 32-bit Fink,

deb http://fink.sodan.ecc.u-tokyo.ac.jp/apt/10.5 unstable main crypto
deb http://sage.ucsc.edu/fink_intel_10.5_only    stable main crypto
deb http://sage.ucsc.edu/fink_intel_10.5_only    unstable main crypto

For OS X 10.5 on PowerPC,

deb http://fink.sodan.ecc.u-tokyo.ac.jp/apt/10.5 unstable main crypto
deb http://sage.ucsc.edu/fink_ppc    stable main crypto
deb http://sage.ucsc.edu/fink_ppc    unstable main crypto

For OS X 10.4 on both Intel and PowerPC,

deb http://fink.sodan.ecc.u-tokyo.ac.jp/apt/10.4 unstable main crypto

Recall that Scott doesn’t provide binary packages for OS X 10.4, so Todai is your only option.

After having edited /sw/etc/apt/sources.list, you need to run the command

fink scanpackages

on the command line in a terminal window, or the equivalent menu option in Fink Commander. This tells Fink’s APT engine to parse /sw/etc/apt/sources.list and read the packages provided by the repositories listed in that file. After that, you’re done! Next time you install a Fink package, Fink is going to use prebuilt .deb binary packages in these unofficial distributions if they are available.

A word of advice: these unofficial bindists are great but they’re unofficial. I recently ran into a problem with KDE when I used one unofficial KDE binary package and built another KDE package locally. Rebuilding everything locally solved the issue. You’ve been warned!🙂

5 responses to “Fink and binary distributions

  1. Thank you for providing this information to a wide audience. Note that W. G. Scott provides also information for using the new 64 bits version of fink.

  2. Thanks, bindists make Fink so much more user-friendly. Keep up the great work with this blog!

  3. Pingback: Cleaning Fink up: files « Finkers

  4. Pingback: Package installation flowchart « Finkers

  5. We have also binary Fink repository at Bioinformatics laboratory at Faculty of Computer and Information Science, University of Ljubljana. You can use this script to install this repository (located at http://orange.biolab.si/fink/):

    http://orange.biolab.si/svn/orange/trunk/install-scripts/mac/fink-selfupdate-orange.sh

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s