source: xsoft/graphweb/firefox.xml@ e2a0e91

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 e2a0e91 was e2a0e91, checked in by Wayne Blaszczyk <wblaszcz@…>, 15 years ago

Added new package sqlite and updated libtasn1 version

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

  • Property mode set to 100644
File size: 20.6 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 "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;-source.tar.bz2">
8 <!ENTITY firefox-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;-source.tar.bz2">
9 <!ENTITY firefox-md5sum "9875c9237b532009df8e91c3785539a3">
10 <!ENTITY firefox-size "35.3 MB">
11 <!ENTITY firefox-buildsize "674 MB (stand-alone) or 408MB (on xulrunner)">
12 <!ENTITY firefox-time "13.4 SBU (stand-alone) or 0.3 SBU (on xulrunner)">
13]>
14
15<sect1 id="firefox" xreflabel="Firefox-&firefox-version;">
16 <?dbhtml filename="firefox.html" ?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Firefox-&firefox-version;</title>
24
25 <indexterm zone="firefox">
26 <primary sortas="a-Firefox">Firefox</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Firefox</title>
31
32 <para><application>Firefox</application> is a stand-alone browser
33 based on the <application>Mozilla</application> codebase.</para>
34
35 <para>With the introduction of firefox-3, the <application>pkgconfig</application>
36 files for the Gecko engine (and for <application>nss</application> and
37 <application>nspr</application>) are not installed. This means that applications
38 such as <application>Epiphany</application> can no longer be built against firefox,
39 and must instead be built against xulrunner (which is actually the same code, but
40 built in a different way). If you wish to build other packages which use Gecko (for
41 the moment, probably only gnome-2.24 or later versions will recognize xulrunner),
42 build <xref linkend="xulrunner"/> first.</para>
43
44 <tip>
45 <para>Firefox is updated frequently as new vulnerabilities are found. Consult
46 <ulink url="http://www.mozilla.org/security/known-vulnerabilities/">mozilla security</ulink>
47 for details of what is fixed in newer releases. The editors cannot guess what
48 will differ in newer versions: it should be straightforward to upgrade within the
49 same series (3.0), but it is always possible that newer versions will have increased
50 dependencies, or that something using the nss or gecko libraries will break. If you
51 update, begin by updating <application>xulrunner</application> if you use that, then
52 update firefox (ensuring the libxul-sdk option points to the new version).</para>
53 </tip>
54
55 <bridgehead renderas="sect3">Package Information</bridgehead>
56 <itemizedlist spacing="compact">
57 <listitem>
58 <para>Download (HTTP): <ulink url="&firefox-download-http;"/></para>
59 </listitem>
60 <listitem>
61 <para>Download (FTP): <ulink url="&firefox-download-ftp;"/></para>
62 </listitem>
63 <listitem>
64 <para>Download MD5 sum: &firefox-md5sum;</para>
65 </listitem>
66 <listitem>
67 <para>Download size: &firefox-size;</para>
68 </listitem>
69 <listitem>
70 <para>Estimated disk space required: &firefox-buildsize;</para>
71 </listitem>
72 <listitem>
73 <para>Estimated build time: &firefox-time;</para>
74 </listitem>
75 </itemizedlist>
76
77 <bridgehead renderas="sect3">Firefox Dependencies</bridgehead>
78
79 <bridgehead renderas="sect4">Recommended</bridgehead>
80 <para role="optional"><xref linkend="xulrunner"/> which shares all these
81 dependencies, or for a standalone firefox the following Required and
82 Optional dependencies:</para>
83
84 <bridgehead renderas="sect4">Required</bridgehead>
85 <para role="required"><xref linkend="gtk2"/>,
86 <xref linkend="libidl"/>
87 <xref linkend="pango"/>
88 <xref linkend="python"/>, and
89 <xref linkend="zip"/></para>
90
91 <para>Note: <application>libjpeg</application> should have been installed
92 before <application>GTK+</application> and should exist on your system. If
93 for some reason you haven't installed <application>libjpeg</application>,
94 you should remove the <option>--with-system-jpeg</option> option from the
95 <filename>.mozconfig</filename> file created below.</para>
96
97 <bridgehead renderas="sect4">Optional</bridgehead>
98 <para role="optional"><xref linkend="dbus-glib"/>,
99 <xref linkend="doxygen"/>,
100 <xref linkend="curl"/> (only for crash-reporter),
101 <xref linkend="gnome-vfs"/> and <xref linkend="libgnomeui"/>
102 (for gnome integration),
103 <xref linkend="lcms"/>,
104 <xref linkend="libpng"/> (patched for apng support),
105 <xref linkend="sqlite"/>,
106 <xref linkend="startup-notification"/>.
107 <xref linkend="unzip"/>,
108 <ulink url="http://www.valgrind.org/">Valgrind</ulink> (only for testing the
109 jemalloc code), and
110 <xref linkend="wget"/></para>
111
112 <para condition="html" role="usernotes">User Notes:
113 <ulink url="&blfs-wiki;/firefox"/></para>
114
115 </sect2>
116
117 <sect2 role="installation">
118 <title>Installation of Firefox</title>
119
120 <para>The configuration of <application>Firefox</application> is
121 accomplished by creating a <filename>.mozconfig</filename> file containing
122 the desired configuration options. A default <filename>.mozconfig</filename>
123 is created below. To see the entire list of available configuration options
124 (and an abbreviated description of each one), issue
125 <command>./configure --help</command>. If you are going to use
126 system-installed versions of the <application>NSS</application> and
127 <application>NSPR</application> libraries, ensure you uncomment the two
128 lines near the bottom of the file. If you are going to build the
129 <application>OpenOffice</application> package and you want to use this
130 <application>Firefox</application> installation as the default
131 <application>Mozilla</application> source, ensure you uncomment the
132 <option>--enable-ldap</option> option in the file created below.
133 If you are building against <application>Xulrunner</application> you
134 must uncomment the 'xulrunner' item.
135 You may also wish to review the entire file and uncomment any other desired
136 options. If you would prefer to download the file instead of creating it by
137 typing or cut-and-pasting, you can find it at <ulink
138 url="&files-anduin;/firefox-&firefox-version;-mozconfig"/>
139 (the file must be installed in the root of the source tree
140 <filename class='directory'>mozilla</filename> directory, and named
141 <filename>.mozconfig</filename>). Create the file by issuing the following
142 command:</para>
143
144<screen><?dbfo keep-together="auto"?><userinput>cat &gt; .mozconfig &lt;&lt; "EOF"
145<literal># This file contains the options used to build firefox on top
146# of xulrunner. If you do not wish to build xulrunner, make the changes
147# noted for a 'standalone browser'. You may need to specify additional
148# options for your specific build needs (if you are building 'standalone')
149# Use the information provided by running './configure --help' to
150# help you determine if you need to add any additional options.
151# Some additional options can be added by uncommenting the examples
152# in this file or adding options by inserting a line containing
153# 'ac_add_options --some-option-you-need'.
154
155# build the browser
156ac_add_options --enable-application=browser
157
158# Use the default settings specified in the source tree
159. $topsrcdir/browser/config/mozconfig
160
161# Create an object directory and specify to build the package in that
162# directory. If desired, modify the location of the object directory
163# to a directory inside the source tree by removing '../' from the
164# line below.
165mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../firefox-build
166
167# Specify the installation prefix. If you would prefer Firefox
168# installed in a different prefix, modify the line below to fit
169# your needs. You may also need to modify some of the instructions in
170# the BLFS book to point to your desired prefix.
171ac_add_options --prefix=/usr
172
173# Compile with a minimal level of optimization
174ac_add_options --enable-optimize
175
176# (the --enable-system options)
177# comment this if you want to use whatever patched version of cairo
178# is in the shipped mozilla tree, together with the system headers
179ac_add_options --enable-system-cairo
180
181# comment this if you have not installed lcms - firefox will use
182# its own copy
183ac_add_options --enable-system-lcms
184
185# comment this if you have not installed sqlite, firefox will use
186# its own old copy
187ac_add_options --enable-system-sqlite
188
189# (the --with-system options)
190# comment this if you did not build libjpeg before gtk+-2
191ac_add_options --with-system-jpeg
192
193# These two options enable support for building Firefox with
194# system-installed versions of the Network Security Services (NSS)
195# and Netscape Portable Runtime (NSPR) libraries. We build these
196# as part of xulrunner, so we can use them here. For a standalone
197# firefox you might want to comment these.
198ac_add_options --with-system-nspr
199ac_add_options --with-system-nss
200
201# comment this if you have not installed png with the apng patch
202ac_add_options --with-system-png
203
204# uncomment this if you are building nspr as part of firefox
205#ac_add_options --with-pthreads
206
207# zlib is in LFS
208ac_add_options --with-system-zlib
209
210# (options to disable parts of the package)
211# This option is used to disable the a11y support in the Firefox
212# binaries. Comment out this option if you require a11y support.
213ac_add_options --disable-accessibility
214
215# uncomment this if you did not build curl
216#ac_add_options --disable-crashreporter
217
218# comment this if you have built dbus-glib
219ac_add_options --disable-dbus
220
221# comment this if you have gnome-vfs and libgnomeui, and wish to
222# integrate firefox into your gnome desktop
223ac_add_options --disable-gnomevfs
224
225# This option is added so that the Mozilla Installer program is not
226# built or installed. The program is not required for a BLFS
227# installation of Firefox.
228ac_add_options --disable-installer
229
230# The mochitest is a separate test feature and has caused problems
231# in the past.
232ac_add_options --disable-mochitest
233
234# This option is added so that test libraries and programs are not
235# built. These would only be required for debugging purposes.
236ac_add_options --disable-tests
237
238# The updater is not useful if you build from source.
239ac_add_options --disable-updater
240
241# (options to add extra parts of the package)
242# This option is used to enable source tree included LDAP support in
243# the Firefox binaries.
244###################################################################
245#
246# NOTE: You must uncomment this option if there is any chance of
247# compiling the OpenOffice package from source code using this copy
248# of Firefox for your Mozilla support.
249# This has NOT been tested, current versions of OpenOffice are
250# assumed not to compile against this version of xulrunner!
251#
252###################################################################
253#ac_add_options --enable-ldap
254
255# This option causes the installed binaries to have the official
256# Firefox name embedded in them. Due to license restrictions, you
257# may not distribute binaries created using this option. It also
258# means you get a popup EULA when you first run firefox.
259# If you disable this, the browser will call itself Minefield.
260ac_add_options --enable-official-branding
261
262# use the anti-phishing blacklist
263ac_add_options --enable-safe-browsing
264
265# This option is used so that the debugging symbols are removed from
266# the installed binaries during the installation process. Comment out
267# this option if you may have a need to retain the debugging symbols
268# in the installed binaries (the resulting binaries will be about 7MB
269# bigger).
270ac_add_options --enable-strip
271
272# Uncomment this option if you desire support for dual-monitor
273# display of Firefox using the X-Window Xinerama libraries.
274#ac_add_options --enable-xinerama
275
276# ('with' options)
277# This option identifies the default binary directory of the Firefox
278# installation and is used to locate Firefox's installed files. This
279# option is not required for end-user browsing, and is only used for
280# development purposes.
281#ac_add_options --with-default-mozilla-five-home=/usr/lib/firefox-&firefox-version;</literal>
282
283# Point to the xulrunner libraries - comment this for a standalone browser
284ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-&xulrunner-version;
285
286EOF</userinput></screen>
287
288 <para>Compile <application>Firefox</application> by issuing the
289 following commands:</para>
290
291<screen><userinput>make -f client.mk build</userinput></screen>
292
293 <para>This package does not come with a test suite.</para>
294
295 <para>Now, as the <systemitem class="username">root</systemitem> user,
296 install the package:</para>
297
298<screen role="root"><userinput>make -f client.mk install</userinput></screen>
299
300 <para>If you are building firefox on xulrunner, as the
301 <systemitem class="username">root</systemitem> user enter the following
302 symbolic link:</para>
303
304<screen role="root"><userinput>ln -sv /usr/lib/xulrunner-&xulrunner-version;/plugins \
305 /usr/lib/firefox-&firefox-version;/plugins</userinput></screen>
306
307 </sect2>
308
309 <sect2 role="commands">
310 <title>Command Explanations</title>
311
312 <para><command>make -f client.mk ...</command>: Mozilla products are
313 packaged to allow the use of a configuration file which can be used to
314 pass the configuration settings to the <command>configure</command>
315 command. <command>make</command> uses the <filename>client.mk</filename>
316 file to get initial configuration and setup parameters, then depending on
317 the target parameter (<parameter>build</parameter> or
318 <parameter>install</parameter>), either runs the
319 <command>configure</command> script and compiles the package or installs
320 the package.</para>
321
322 <!--<para><command>install -v -m755 -d .../chrome/icons/default</command> and
323 <command>ln -v -s ../../../icons/default.xpm ...</command>: These two
324 commands are used to create a symlink in the required directory so that
325 the proper icon is displayed in the taskbar and when
326 <application>Firefox</application> windows are minimized.</para> -->
327
328 <para><command>ln -sv /usr/lib/xulrunner-&xulrunner-version;/plugins
329 /usr/lib/firefox-&firefox-version;/plugins</command>:
330 <application>Firefox</application> looks for plugins in its own directory,
331 but when building on <application>xulrunner</application> the plugins were
332 installed by that package.</para>
333
334 <tip>
335 <para>If you upgrade firefox, ensure that any additional plugins are moved to
336 the plugin directory of the new version.</para>
337 </tip>
338
339 </sect2>
340
341 <sect2 role="configuration">
342 <title>Configuring Firefox</title>
343
344 <para>No specific configuration is required as long as the
345 <command>firefox</command> script is in the user's path. If
346 <application>Firefox</application> is installed in a non-standard location,
347 then make a symlink to the <command>firefox</command> script in the
348 <filename class="directory">/usr/bin</filename> directory.</para>
349
350 <para>If your Window or Desktop Manager does not allow you to configure
351 a default mail client, you can add a configuration parameter to
352 <application>Firefox</application> so that an email client will start
353 when you click on a <systemitem role='url'>mailto:</systemitem> URL.
354 There are two parameters you need to check. The procedure to check or
355 modify any of the configuration parameters is quite simple and the
356 instructions here can be used to view or modify any of the
357 parameters.</para>
358
359 <para>First, open the configuration dialog by entering
360 <systemitem role='url'>about:config</systemitem> in the address bar. This
361 will display a list of the configuration preferences and information
362 related to each one. You can use the <quote>Filter:</quote> bar to enter
363 search criteria and narrow down the listed items. Changing a preference
364 can be done using two methods. One, if the preference has a boolean value
365 (True/False), simply double-click on the preference to toggle the value
366 and two, for other preferences simply right-click on the desired line,
367 choose <quote>Modify</quote> from the menu and change the value. Creating
368 new preference items is accomplished in the same way, except choose
369 <quote>New</quote> from the menu and provide the desired data into the
370 fields when prompted.</para>
371
372 <para>The two configuration preference items you need to check so that
373 <application>Firefox</application> uses a specified default mail client
374 are the <parameter>network.protocol-handler.external.mailto</parameter>
375 which should be set to <option>True</option> and the
376 <parameter>network.protocol-handler.app.mailto</parameter> which should
377 be set to the path of the desired mail client, e.g.,
378 <option>/usr/bin/thunderbird</option>.</para>
379
380 <tip>
381 <para>There is a multitude of configuration parameters you can tweak to
382 customize <application>Firefox</application>. A very extensive and
383 up-to-date list of these parameters can be found at <ulink
384 url="http://preferential.mozdev.org/preferences.html"/>.</para>
385 </tip>
386
387 <para>Many applications look for <command>netscape</command> when they
388 need to open a browser. You may wish to make the following symlink for
389 convenience (as the <systemitem class="username">root</systemitem>
390 user).</para>
391
392<screen role="root"><userinput>ln -v -sf firefox /usr/bin/netscape</userinput></screen>
393
394 <para>For installing various <application>Firefox</application> plugins,
395 refer to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's
396 PluginDoc Project</ulink>. If you have the <xref linkend="jdk"/> already
397 installed, create the following link as the
398 <systemitem class="username">root</systemitem> user to utilize the installed
399 <application>Java</application> plugin: </para>
400
401<screen role="root"><userinput>ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \
402 /usr/lib/firefox-&firefox-version;/plugins</userinput></screen>
403
404 <para>Some packages install Mozilla plugins into the default system-wide
405 directory <filename class='directory'>/usr/lib/mozilla/plugins</filename>.
406 If you have not already done this for <application>Xulrunner</application>
407 create symbolic links in the <application>Firefox</application>
408 plugin directory
409 <filename class='directory'>/usr/lib/firefox-&firefox-version;/plugins</filename>
410 to the files in the default plugin directory (you should link to the actual
411 files and not other links). Alternatively, you can move or copy the files
412 in the default plugin directory to the
413 <application>Firefox</application> plugin directory. An example of creating
414 a symbolic link is shown below. Create the links as the
415 <systemitem class="username">root</systemitem> user:</para>
416
417<screen role="root"><userinput>ln -v -s ../../mozilla/plugins/<replaceable>&lt;plugin.so&gt;</replaceable> \
418 /usr/lib/firefox-&firefox-version;/plugins</userinput></screen>
419
420 </sect2>
421
422 <sect2 role="content">
423 <title>Contents</title>
424
425 <segmentedlist>
426 <segtitle>Installed Programs</segtitle>
427 <segtitle>Installed Libraries</segtitle>
428 <segtitle>Installed Directories</segtitle>
429
430 <seglistitem>
431 <seg>firefox and firefox-config</seg>
432 <seg>Numerous libraries, browser components, plugins, extensions, and
433 helper modules installed in <filename
434 class='directory'>/usr/lib/firefox-&firefox-version;</filename></seg>
435 <seg>/usr/include/firefox-&firefox-version;,
436 /usr/lib/firefox-&firefox-version;, and
437 /usr/share/idl/firefox-&firefox-version;</seg>
438 </seglistitem>
439 </segmentedlist>
440
441 <variablelist>
442 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
443 <?dbfo list-presentation="list"?>
444 <?dbhtml list-presentation="table"?>
445
446 <varlistentry id="firefox-prog">
447 <term><command>firefox</command></term>
448 <listitem>
449 <para>is a shell script that sets up the environment and
450 calls the <filename>firefox-bin</filename> binary.</para>
451 <indexterm zone="firefox firefox-prog">
452 <primary sortas="b-firefox">firefox</primary>
453 </indexterm>
454 </listitem>
455 </varlistentry>
456
457 <varlistentry id="firefox-config">
458 <term><command>firefox-config</command></term>
459 <listitem>
460 <para>determines the compile and linker flags that should be
461 used to compile and link programs that use
462 <application>Firefox</application> libraries and browser
463 components.</para>
464 <indexterm zone="firefox firefox-config">
465 <primary sortas="b-firefox-config">firefox-config</primary>
466 </indexterm>
467 </listitem>
468 </varlistentry>
469
470 </variablelist>
471
472 </sect2>
473
474</sect1>
Note: See TracBrowser for help on using the repository browser.