source: xsoft/graphweb/firefox.xml@ 6be27f3

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 6be27f3 was 6be27f3, checked in by Andrew Benton <andy@…>, 12 years ago

firefox-10.0.2

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@9472 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 13.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY firefox-download-http
8 "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
9 <!ENTITY firefox-download-ftp
10 "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
11 <!ENTITY firefox-md5sum "5ce038d591964f72c534fa33b75a62f5">
12 <!ENTITY firefox-size "72 MB">
13 <!ENTITY firefox-buildsize "3 GB (33 MB installed)">
14 <!ENTITY firefox-time "24 SBU (or 0.3 SBU if you're building against
15 an installed Xulrunner)">
16]>
17
18<sect1 id="firefox" xreflabel="Firefox-&firefox-version;">
19 <?dbhtml filename="firefox.html" ?>
20
21 <sect1info>
22 <othername>$LastChangedBy$</othername>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>Firefox-&firefox-version;</title>
27
28 <indexterm zone="firefox">
29 <primary sortas="a-Firefox">Firefox</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to Firefox</title>
34
35 <para><application>Firefox</application> is a stand-alone browser
36 based on the <application>Mozilla</application> codebase.</para>
37
38 &lfs70_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>Download (HTTP): <ulink url="&firefox-download-http;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download (FTP): <ulink url="&firefox-download-ftp;"/></para>
47 </listitem>
48 <listitem>
49 <para>Download MD5 sum: &firefox-md5sum;</para>
50 </listitem>
51 <listitem>
52 <para>Download size: &firefox-size;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated disk space required: &firefox-buildsize;</para>
56 </listitem>
57 <listitem>
58 <para>Estimated build time: &firefox-time;</para>
59 </listitem>
60 </itemizedlist>
61
62 <bridgehead renderas="sect3">Firefox Dependencies</bridgehead>
63
64 <bridgehead renderas="sect4">Required</bridgehead>
65 <para role="required"><xref linkend="alsa-lib"/>, <xref linkend="gtk2"/>,
66 <xref linkend="zip"/> and <xref linkend="unzip"/>.</para>
67
68 <para>Note: <application>libjpeg</application> and
69 <application>libpng</application> (patched for apng support) should have
70 been installed before <application>gdk-pixbuf</application> and should
71 exist on your system. If for some strange reason you haven't installed
72 them, you should remove the <option>--with-system-jpeg</option> and
73 <option>--with-system-png</option> options from the
74 <filename>mozconfig</filename> file created below.</para>
75
76 <bridgehead renderas="sect4">Recommended</bridgehead>
77 <para role="recommended"><xref linkend="yasm"/> or
78 <xref linkend="libvpx"/> (to allow <application>Firefox</application> to
79 play webm videos).</para>
80
81 <bridgehead renderas="sect4">Optional</bridgehead>
82 <para role="optional"><xref linkend="dbus-glib"/>,
83 <xref linkend="startup-notification"/>, <xref linkend="sqlite"/>,
84 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>,
85 <ulink url="http://libevent.org/">Libevent</ulink>,
86 <xref linkend="doxygen"/>, <xref linkend="gnome-vfs"/> and
87 <xref linkend="libgnomeui"/> (for gnome integration),
88 <xref linkend="libnotify"/>, <xref linkend="nspr"/>, <xref linkend="nss"/>,
89 <xref linkend="xulrunner"/> (linking against an installed xulrunner makes
90 Firefox about 32 MB smaller, which is trivial compared to the size of
91 xulrunner), <xref linkend="wireless_tools"/>,
92 <ulink url="http://www.valgrind.org/">Valgrind</ulink> (only for testing
93 the jemalloc code) and <xref linkend="wget"/></para>
94
95 <para condition="html" role="usernotes">User Notes:
96 <ulink url="&blfs-wiki;/firefox"/></para>
97 </sect2>
98
99 <sect2 role="installation">
100 <title>Installation of Firefox</title>
101
102 <para>The configuration of <application>Firefox</application> is
103 accomplished by creating a <filename>mozconfig</filename> file containing
104 the desired configuration options. A default <filename>mozconfig</filename>
105 is created below. To see the entire list of available configuration options
106 (and an abbreviated description of each one), issue
107 <command>./configure --help</command>. You may also wish to review the
108 entire file and uncomment any other desired options. Create the file by
109 issuing the following command:</para>
110
111<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
112# If you have a multicore machine you can speed up the build by running
113# several jobs at once, but if you have a single core, delete this line:
114mk_add_options MOZ_MAKE_FLAGS="-j4"
115
116# If you have installed Yasm delete this option:
117ac_add_options --disable-webm
118
119# If you have installed DBus-Glib delete this option:
120ac_add_options --disable-dbus
121
122# If you have installed wireless-tools delete this option:
123ac_add_options --disable-necko-wifi
124
125# If you have installed libnotify delete this option:
126ac_add_options --disable-libnotify
127
128# If you have installed xulrunner uncomment these two lines:
129# ac_add_options --with-system-libxul
130# ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-&xulrunner-version;
131
132# Uncomment these if you have installed them:
133# ac_add_options --with-system-nspr
134# ac_add_options --with-system-nss
135# ac_add_options --enable-system-sqlite
136# ac_add_options --with-system-libvpx
137# ac_add_options --enable-startup-notification
138# ac_add_options --enable-system-hunspell
139# ac_add_options --with-system-libevent
140
141mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir
142ac_add_options --enable-official-branding
143ac_add_options --prefix=/usr
144
145# The rest of these options have no effect if you're
146# building against an already installed xulrunner:
147ac_add_options --with-pthreads
148ac_add_options --enable-system-ffi
149ac_add_options --with-system-jpeg
150ac_add_options --with-system-png
151ac_add_options --enable-system-cairo
152ac_add_options --with-system-zlib
153ac_add_options --enable-shared
154ac_add_options --disable-static
155ac_add_options --disable-debug
156ac_add_options --disable-crashreporter
157ac_add_options --disable-installer
158ac_add_options --disable-updater
159ac_add_options --disable-tests
160EOF</userinput></screen>
161
162 <para>Compile <application>Firefox</application> by issuing the
163 following commands:</para>
164
165<screen><userinput>sed -i 's#VPX_CODEC_USE_INPUT_PARTITION#VPX_CODEC_USE_INPUT_FRAGMENTS#' configure &amp;&amp;
166sed -i 's# ""##' browser/base/Makefile.in &amp;&amp;
167make -f client.mk</userinput></screen>
168
169 <para>If you have <emphasis>not</emphasis> linked
170 <application>Firefox</application> against an installed
171 <application>Xulrunner</application>:</para>
172
173<screen><userinput>make -C firefox-build-dir/browser/installer</userinput></screen>
174
175 <para>This package does not come with a test suite.</para>
176
177 <para>Now, if you have <emphasis>not</emphasis> linked
178 <application>Firefox</application> against an installed
179 <application>Xulrunner</application>, as the
180 <systemitem class="username">root</systemitem> user, install the
181 package:</para>
182
183<screen role="root"><userinput>mkdir /usr/lib/firefox-&firefox-version; &amp;&amp;
184tar -xvf firefox-build-dir/dist/firefox-*.tar.bz2 -C /usr/lib/firefox-&firefox-version; --strip-components=1 &amp;&amp;
185ln -sfv ../lib/firefox-&firefox-version;/firefox /usr/bin/firefox &amp;&amp;
186mkdir -p /usr/lib/mozilla/plugins &amp;&amp;
187ln -sv ../mozilla/plugins /usr/lib/firefox-&firefox-version; &amp;&amp;
188chown -R -v root:root /usr/lib/firefox-&firefox-version;</userinput></screen>
189
190 <para>If you <emphasis>have</emphasis> linked against an already installed
191 <application>Xulrunner</application>, as the
192 <systemitem class="username">root</systemitem> user:</para>
193
194<screen role="root"><userinput>make -C firefox-build-dir install &amp;&amp;
195rm /usr/bin/firefox &amp;&amp;
196cat &gt; /usr/bin/firefox &lt;&lt; "EOF" &amp;&amp;
197#!/bin/bash
198/usr/lib/xulrunner-&xulrunner-version;/xulrunner /usr/lib/firefox-&firefox-version;/application.ini "${@}"
199EOF
200chmod 755 /usr/bin/firefox &amp;&amp;
201mkdir -p /usr/lib/mozilla/plugins &amp;&amp;
202ln -sv ../mozilla/plugins /usr/lib/firefox-&firefox-version; &amp;&amp;
203chown -R -v root:root /usr/lib/firefox-&firefox-version;</userinput></screen>
204 </sect2>
205
206 <sect2 role="commands">
207 <title>Command Explanations</title>
208
209 <para><command>sed -i 's#VPX_CODEC_USE ...</command>: This fixes
210 <application>Firefox's</application> <command>configure</command>
211 script to properly detect libvpx-v1.0.0. It is not needed if you have
212 libvpx-v0.9.7 or earlier installed or if you've not installed
213 <xref linkend="libvpx"/>.</para>
214
215 <para><command>sed -i 's# ""##' browser/base/Makefile.in</command>: This
216 sed removes an unprintable control character from the title bar.</para>
217
218 <para><command>make -f client.mk ...</command>: Mozilla products are
219 packaged to allow the use of a configuration file which can be used to
220 pass the configuration settings to the <command>configure</command>
221 command. <command>make</command> uses the <filename>client.mk</filename>
222 file to get initial configuration and setup parameters.</para>
223
224 <para><command>make -C firefox-build-dir/browser/installer</command>:
225 this creates a <application>Firefox</application> tarball.</para>
226
227 <para><command>tar -xfv firefox-build-dir/dist ...</command>: This untars
228 <application>Firefox</application> in /usr/lib. The
229 <option>--strip-components=1</option> option removes the leading
230 'firefox' directory from the filenames, allowing us to untar it
231 into a versioned directory. Untaring it (instead of running make install)
232 prevents it installing /usr/lib/firefox-devel-&firefox-version; which
233 contains about 430 MB of files. If you need any of those files,
234 they're in <xref linkend="xulrunner"/></para>
235
236 <para><command>make -C firefox-build-dir install</command>: This runs
237 <command>make install</command> in firefox-build-dir.</para>
238
239 <para><command>ln -sfv ... /usr/bin/firefox</command>: this puts a symbolic
240 link to the <command>firefox</command> executable in your ${PATH}.</para>
241
242 <para><command>mkdir -p /usr/lib/mozilla/plugins</command>: this checks
243 that /usr/lib/mozilla/plugins exists (if you installed
244 <xref linkend="librsvg"/>, it was probably already there).</para>
245
246 <para><command>ln -sv ... /usr/lib/firefox-&firefox-version;</command>:
247 this makes a symbolic link to /usr/lib/mozilla/plugins.</para>
248 </sect2>
249
250 <sect2 role="configuration">
251 <title>Configuring Firefox</title>
252
253 <para>If you deleted the <option>--disable-webm</option> option from your
254 <filename>mozconfig</filename>, your <application>Firefox</application>
255 can play most YouTube videos without the need for the flash plugin. To
256 enable this, go to <ulink
257 url="http://www.youtube.com/html5">http://www.youtube.com/html5</ulink>
258 and click on 'Join the HTML5 Trial' (needs cookies enabled).</para>
259
260 <para>If you use a desktop environment like <application>Gnome</application>
261 or <application>KDE</application> you may like to create a firefox.desktop
262 file so that <application>Firefox</application> appears in the panel's
263 menus. If you didn't enable startup-notification in your mozconfig
264 change the StartupNotify line to false. As the
265 <systemitem class="username">root</systemitem> user:</para>
266
267<screen role="root"><userinput>cat &gt; /usr/share/applications/firefox.desktop &lt;&lt; "EOF"
268[Desktop Entry]
269Encoding=UTF-8
270Type=Application
271Name=Firefox
272Comment=Browse The Web
273Icon=firefox
274Exec=firefox
275Categories=Network;GTK;Application;Browser;WebBrowser;
276StartupNotify=true
277Terminal=false
278EOF
279ln -sv -f /usr/lib/firefox-&firefox-version;/icons/mozicon128.png /usr/share/pixmaps/firefox.png</userinput></screen>
280 </sect2>
281
282 <sect2 role="content">
283 <title>Contents</title>
284
285 <segmentedlist>
286 <segtitle>Installed Programs</segtitle>
287 <segtitle>Installed Libraries</segtitle>
288 <segtitle>Installed Directories</segtitle>
289
290 <seglistitem>
291 <seg>firefox</seg>
292 <seg>Numerous libraries, browser components, plugins, extensions, and
293 helper modules installed in <filename
294 class="directory">/usr/lib/firefox-&firefox-version;</filename>.</seg>
295 <seg>/usr/lib/firefox-&firefox-version;</seg>
296 </seglistitem>
297 </segmentedlist>
298
299 <variablelist>
300 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
301 <?dbfo list-presentation="list"?>
302 <?dbhtml list-presentation="table"?>
303
304 <varlistentry id="firefox-prog">
305 <term><command>firefox</command></term>
306 <listitem>
307 <para>is a gtk2 internet browser that uses the gecko rendering
308 engine.</para>
309 <indexterm zone="firefox firefox-prog">
310 <primary sortas="b-firefox">firefox</primary>
311 </indexterm>
312 </listitem>
313 </varlistentry>
314 </variablelist>
315 </sect2>
316</sect1>
Note: See TracBrowser for help on using the repository browser.