%general-entities; ]> $LastChangedBy$ $Date$ Firefox-&firefox-version; Firefox Introduction to Firefox Firefox is a stand-alone browser based on the Mozilla codebase. &lfs71_checked; Package Information Download (HTTP): Download (FTP): Download MD5 sum: &firefox-md5sum; Download size: &firefox-size; Estimated disk space required: &firefox-buildsize; Estimated build time: &firefox-time; Firefox Dependencies Required , , and . Recommended or (to allow Firefox to play webm videos). Optional , , , Hunspell, Libevent, , and (for integration with the old version of Gnome), , , , , Valgrind (only for testing the jemalloc code) and User Notes: Installation of Firefox The configuration of Firefox is accomplished by creating a mozconfig file containing the desired configuration options. A default mozconfig is created below. To see the entire list of available configuration options (and an abbreviated description of each one), issue ./configure --help. You may also wish to review the entire file and uncomment any other desired options. Create the file by issuing the following command: cat > mozconfig << "EOF" # If you have a multicore machine you can speed up the build by running # several jobs at once, but if you have a single core, delete this line: mk_add_options MOZ_MAKE_FLAGS="-j4" # If you have installed Yasm delete this option: ac_add_options --disable-webm # If you have installed DBus-Glib delete this option: ac_add_options --disable-dbus # If you have installed wireless-tools delete this option: ac_add_options --disable-necko-wifi # If you have installed libnotify delete this option: ac_add_options --disable-libnotify # Uncomment these if you have installed them: # ac_add_options --enable-startup-notification # ac_add_options --enable-system-hunspell # ac_add_options --enable-system-sqlite # ac_add_options --with-system-libevent # ac_add_options --with-system-libvpx # ac_add_options --with-system-nspr # ac_add_options --with-system-nss mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir ac_add_options --disable-crashreporter ac_add_options --disable-debug ac_add_options --disable-installer ac_add_options --disable-static ac_add_options --disable-tests ac_add_options --disable-updater ac_add_options --enable-official-branding ac_add_options --enable-shared ac_add_options --enable-system-cairo ac_add_options --enable-system-ffi ac_add_options --prefix=/usr ac_add_options --with-pthreads ac_add_options --with-system-jpeg ac_add_options --with-system-png ac_add_options --with-system-zlib EOF Compile Firefox by issuing the following commands: sed -i '/fcntl.h/a#include <unistd.h>' \ ipc/chromium/src/base/{file_util_linux,message_pump_libevent}.cc && sed -i '/sys\/time\.h/a#include <unistd.h>' ipc/chromium/src/base/time_posix.cc && sed -i 's# ""##' browser/base/Makefile.in && make -f client.mk && make -C firefox-build-dir/browser/installer This package does not come with a test suite. Now, as the root user install Firefox: mkdir /usr/lib/firefox-&firefox-version; && tar -xvf firefox-build-dir/dist/firefox-&firefox-version;.en-US.linux-$(uname -m).tar.bz2 \ -C /usr/lib/firefox-&firefox-version; --strip-components=1 && ln -sfv ../lib/firefox-&firefox-version;/firefox /usr/bin && mkdir -p /usr/lib/mozilla/plugins && ln -sv ../mozilla/plugins /usr/lib/firefox-&firefox-version; && chown -R -v root:root /usr/lib/firefox-&firefox-version; The above instructions just install the parts you need to run Firefox. Alternatively, if you want to install the full Firefox development environment (Note, this installs more than half a gigabyte of extra files and so is not recommended) as the root user: make -C firefox-build-dir install Command Explanations sed -i '/fcntl.h/a#include <unistd.h>' ipc/chromium/src/base/{file_util_linux,message_pump_libevent}.cc && sed -i '/sys\/time\.h/a#include <unistd.h>' ipc/chromium/src/base/time_posix.cc: These seds fix bugs that would otherwise break the build if you're using GCC 4.7. sed -i 's# ""##' browser/base/Makefile.in: This sed removes an unprintable control character from the title bar. make -f client.mk ...: Mozilla products are packaged to allow the use of a configuration file which can be used to pass the configuration settings to the configure command. make uses the client.mk file to get initial configuration and setup parameters. make -C firefox-build-dir/browser/installer: this creates a Firefox tarball similar to the ones you can download from Mozilla. tar -xfv firefox-build-dir/dist ...: This untars Firefox in /usr/lib. The option removes the leading 'firefox' directory from the filenames, allowing us to untar it into a versioned directory. ln -sfv ... /usr/bin/firefox: this puts a symbolic link to the firefox executable in your ${PATH}. mkdir -p /usr/lib/mozilla/plugins: this checks that /usr/lib/mozilla/plugins exists. ln -sv ... /usr/lib/firefox-&firefox-version;: this makes a symbolic link to /usr/lib/mozilla/plugins. It's not really needed, Firefox checks /usr/lib/mozilla/plugins by default, we make the symbolic link to keep all the plugins installed in one folder. make -C firefox-build-dir install: This runs make install in firefox-build-dir. Configuring Firefox If you deleted the option from your mozconfig, your Firefox can play most YouTube videos without the need for the flash plugin. To enable this, go to and click on 'Join the HTML5 Trial' (needs cookies enabled). If you use a desktop environment like Gnome or KDE you may like to create a firefox.desktop file so that Firefox appears in the panel's menus. If you didn't enable startup-notification in your mozconfig change the StartupNotify line to false. As the root user: cat > /usr/share/applications/firefox.desktop << "EOF" [Desktop Entry] Encoding=UTF-8 Type=Application Name=Firefox Comment=Browse The Web Icon=firefox Exec=firefox Categories=Network;GTK;Application;Browser;WebBrowser; StartupNotify=true Terminal=false EOF ln -sv -f /usr/lib/firefox-&firefox-version;/icons/mozicon128.png /usr/share/pixmaps/firefox.png Contents Installed Programs Installed Libraries Installed Directories firefox Numerous libraries, browser components, plugins, extensions, and helper modules installed in /usr/lib/firefox-&firefox-version;. /usr/lib/firefox-&firefox-version; Short Descriptions firefox is a Gtk 2 internet browser that uses the Gecko rendering engine. firefox