2010-02-11

How to run Firefox 3.6 on Debian Etch

This blog post explains how to run Firefox 3.6 32-bit on an old Linux system, such as Debian Etch.

First, here is some technical background. The most important problem with the stock Firefox 3.6 for Linux (especially with Flash Player 10) is that it needs newer versions of system libraries than what is available on some old Linux systems, such as Debian Etch. Copying those libraries from a newer system (such as Ubuntu Hardy) does the trick, except that some other data files (such as Pango's libpango1.0-0.modules file) also have to be copied, and Linux has to be persuaded that it should read libraries and data files from non-standard locations. For the latter, setting LD_LIBRARY_PATH and specifying the new lib/ld-linux.so.2 explicitly almost solves the problem, but it won't force the new directory for the config and data files. For that, we have to LD_PRELOAD our library overriding open(), fopen() etc.

Here is how to download and prepare it:

# Exit from the firefox.
# Make sure gcc, tar, bzip2, wget and an X11 system with the GTK libraries
# (no matter how old) are installed.
$ killall firefox-bin
$ killall -9 firefox-bin
$ cd /tmp
$ wget -O pts-etch-firefox3.6.tbz2 \
  http://pts-mini-gpl.googlecode.com/files/pts-etch-firefox3.6.tbz2
$ tar xjf pts-etch-firefox3.6.tbz2
$ (cd firefox3.6; ./fakeopen.c)

Here is how to use it:

$ firefox3.6/start.sh
... (prints a lot, but eventually opens a Firefox window)

Later the directory can be moved to /usr/local, properly chmodded, and a symlink can be created, like this:

sudo ln -sf /usr/local/firefox3.6/start.sh /usr/local/bin/firefox

1 comment:

software said...

I have just installed Firefox on my Debian linux, thank you for this install guide.