source: xsoft/graphweb/firefox.xml@ df282778

7.6-blfs 7.6-systemd kde5-14269 kde5-14686 systemd-13485
Last change on this file since df282778 was df282778, checked in by Krejzi <krejzi@…>, 10 years ago

Merge trunk.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@13735 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 15.9 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-http
10 "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
11 <!ENTITY firefox-download-ftp
12 "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/&firefox-version;/source/firefox-&firefox-version;.source.tar.bz2">
13 <!ENTITY firefox-md5sum "499b70a9f08a2291d528e87eaf8804a3">
14 <!ENTITY firefox-size "141 MB">
15 <!-- measured on LFS-7.5, x86_64 -->
16 <!ENTITY firefox-buildsize "5.0 GB (62 MB installed) (or 963 MB and 7.0 MB if using Xulrunner)">
17 <!ENTITY firefox-time "48 SBU (0.3 SBU if using Xulrunner)">
18]>
19
20<sect1 id="firefox" xreflabel="Firefox-&firefox-version;">
21 <?dbhtml filename="firefox.html" ?>
22
23 <sect1info>
24 <othername>$LastChangedBy$</othername>
25 <date>$Date$</date>
26 </sect1info>
27
28 <title>Firefox-&firefox-version;</title>
29
30 <indexterm zone="firefox">
31 <primary sortas="a-Firefox">Firefox</primary>
32 </indexterm>
33
34 <sect2 role="package">
35 <title>Introduction to Firefox</title>
36
37 <para>
38 <application>Firefox</application> is a stand-alone browser based on the
39 <application>Mozilla</application> codebase.
40 </para>
41
42 &lfs75_checked;
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>
48 Download (HTTP): <ulink url="&firefox-download-http;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download (FTP): <ulink url="&firefox-download-ftp;"/>
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download MD5 sum: &firefox-md5sum;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Download size: &firefox-size;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated disk space required: &firefox-buildsize;
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Estimated build time: &firefox-time;
74 </para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">Firefox Dependencies</bridgehead>
79
80 <bridgehead renderas="sect4">Required</bridgehead>
81 <para role="required">
82 <xref linkend="alsa-lib"/>,
83 <xref linkend="gtk2"/>,
84 <xref linkend="zip"/>, and
85 <xref linkend="unzip"/>
86 </para>
87
88 <bridgehead renderas="sect4">Recommended</bridgehead>
89 <para role="recommended">
90 <xref linkend="icu"/>,
91 <xref linkend="libevent"/>,
92 <xref linkend="libvpx"/>,
93 <xref linkend="nspr"/>,
94 <xref linkend="nss"/>,
95 <xref linkend="sqlite"/> and
96 <xref linkend="yasm"/>
97 </para>
98
99 <note>
100 <para>
101 If you don't install recommended dependencies,
102 then internal copies of those packages will
103 be used. They might be tested to work, but
104 they can be out of date or contain security
105 holes.
106 </para>
107 </note>
108
109 <note>
110 <para>
111 With <application>Firefox-31.0</application> and later versions, you
112 must have installed <application>Openssl</application> before
113 <application>Python 2</application>, or the build system will quickly
114 fail with output including "ImportError: cannot import name
115 HTTPSHandler". If you are in any doubt about this (e.g. upgrading
116 from an older version of Firefox), check if
117 <filename>/usr/lib/python2.7/lib-dynload/_ssl.so</filename> exists.
118 If it does not, reinstall <xref linkend="python2"/> (after
119 installing <xref linkend="openssl"/> - the latest version of any
120 <emphasis>currently maintained</emphasis> version of Openssl should
121 be satisfactory if already installed - if that package has not already
122 been installed).
123 </para>
124 </note>
125
126 <bridgehead renderas="sect4">Optional</bridgehead>
127 <para role="optional">
128 <xref linkend="curl"/>,
129 <xref linkend="dbus-glib"/>,
130 <xref linkend="doxygen"/>,
131 <xref linkend="gst-plugins-base"/> (with
132 <xref linkend="gst-plugins-good"/> and
133 <xref linkend="gst-ffmpeg"/> at runtime), or
134 <xref linkend="gst10-plugins-base"/> (with
135 <xref linkend="gst10-plugins-good"/> and
136 <xref linkend="gst10-libav"/> at runtime),
137 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>,
138 <xref linkend="libnotify"/>,
139 <xref linkend="openjdk"/>,
140 <xref linkend="pulseaudio"/>,
141 <xref linkend="startup-notification"/>,
142 <xref linkend="wget"/>,
143 <xref linkend="wireless_tools"/> and
144 <xref linkend="xulrunner"/>
145 </para>
146
147 <para condition="html" role="usernotes">
148 User Notes: <ulink url="&blfs-wiki;/firefox"/>
149 </para>
150 </sect2>
151
152 <sect2 role="installation">
153 <title>Installation of Firefox</title>
154
155 <para>
156 There are two major methods for building
157 <application>Firefox</application>. In the standard case, the entire suite
158 of libraries is built and installed. In the other, most of the system is
159 built using the procedures found in <xref linkend="xulrunner"/>. This is
160 advantageous if you are planning to build other related packages such as
161 <xref linkend="icedtea-web"/>. With either build method, you need to run
162 the main build procedure below with the appropriate options in the
163 <filename>mozconfig</filename> file. Then use the appropriate install
164 instructions depending on the chosen build method.
165 </para>
166
167 <para>
168 The configuration of <application>Firefox</application> is accomplished by
169 creating a <filename>mozconfig</filename> file containing the desired
170 configuration options. A default <filename>mozconfig</filename> is created
171 below. To see the entire list of available configuration options (and an
172 abbreviated description of each one), issue <command>./configure
173 --help</command>. You may also wish to review the entire file and
174 uncomment any other desired options.
175 Create the file by issuing the following command:
176 </para>
177
178<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
179# If you have a multicore machine, firefox will now use all the cores by
180# default. Exceptionally, you can reduce the number of cores, e.g. to 1,
181# by uncommenting the next line and setting a valid number of CPU cores.
182#mk_add_options MOZ_MAKE_FLAGS="-j1"
183
184# If you have installed DBus-Glib comment out this line:
185ac_add_options --disable-dbus
186
187# If you have installed dbus-glib, and you have installed (or will install)
188# wireless-tools, and you wish to use geolocation web services, comment out
189# this line
190ac_add_options --disable-necko-wifi
191
192# If you have installed libnotify comment out this line:
193ac_add_options --disable-libnotify
194
195# GStreamer is necessary for H.264 video playback in HTML5 Video Player;
196# to be enabled, also remember to set "media.gstreamer.enabled" to "true"
197# in about:config. If you have GStreamer 0.x.y, uncomment this line:
198#ac_add_options --enable-gstreamer
199# or uncomment this line, if you have GStreamer 1.x.y
200#ac_add_options --enable-gstreamer=1.0
201
202# Uncomment these lines if you have installed optional dependencies:
203#ac_add_options --enable-system-hunspell
204#ac_add_options --enable-startup-notification
205
206# Comment out following option if you have PulseAudio installed
207ac_add_options --disable-pulseaudio
208
209# If you have not installed Yasm then uncomment this line:
210#ac_add_options --disable-webm
211
212# If you have installed xulrunner uncomment the next two ac_add_options lines
213# and check that the sdk will be set by running pkg-config in a subshell
214# and has not become hardcoded or empty when you created this file
215#ac_add_options --with-system-libxul
216#ac_add_options --with-libxul-sdk=$(pkg-config --variable=sdkdir libxul)
217
218# Comment out following options if you have not installed
219# recommended dependencies:
220ac_add_options --enable-system-sqlite
221ac_add_options --with-system-libevent
222ac_add_options --with-system-libvpx
223ac_add_options --with-system-nspr
224ac_add_options --with-system-nss
225ac_add_options --with-system-icu
226
227# The BLFS editors recommend not changing anything below this line:
228ac_add_options --prefix=/usr
229ac_add_options --enable-application=browser
230
231ac_add_options --disable-crashreporter
232ac_add_options --disable-updater
233ac_add_options --disable-tests
234
235ac_add_options --enable-optimize
236ac_add_options --enable-strip
237ac_add_options --enable-install-strip
238
239ac_add_options --enable-gio
240ac_add_options --enable-official-branding
241ac_add_options --enable-safe-browsing
242ac_add_options --enable-url-classifier
243
244ac_add_options --enable-system-cairo
245ac_add_options --enable-system-ffi
246ac_add_options --enable-system-pixman
247
248ac_add_options --with-pthreads
249
250ac_add_options --with-system-bz2
251ac_add_options --with-system-jpeg
252ac_add_options --with-system-png
253ac_add_options --with-system-zlib
254
255mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/firefox-build-dir
256EOF</userinput></screen>
257
258 <para>
259 Compile <application>Firefox</application> by issuing the following
260 commands:
261 </para>
262
263 <note><para>
264 If you are compiling <application>Firefox</application> in chroot, prepend
265 <envar>SHELL=/bin/sh</envar> to the first make command below.
266 </para></note>
267
268<screen><userinput>make -f client.mk</userinput></screen>
269
270 <para>
271 This package does not come with a test suite.
272 </para>
273
274<!-- <para>
275 If you have <emphasis>not</emphasis> linked
276 <application>Firefox</application> against an installed
277 <application>Xulrunner</application>:
278 </para>
279
280<screen><userinput>make -C firefox-build-dir/browser/installer</userinput></screen>
281-->
282 <para>
283 Now, as the <systemitem class="username">root</systemitem> user, if you
284 have <emphasis>not</emphasis> linked <application>Firefox</application>
285 against an installed <application>Xulrunner</application>, install the
286 package:
287 </para>
288
289<!--<screen role="root"><userinput>rm -rf /usr/lib/firefox-&firefox-version; &amp;&amp;
290mkdir /usr/lib/firefox-&firefox-version; &amp;&amp;
291
292tar -xvf firefox-build-dir/dist/firefox-&firefox-version;.en-US.linux-$(uname -m).tar.bz2 \
293 -C /usr/lib/firefox-&firefox-version; -\-strip-components=1 &amp;&amp;
294chown -R -v root:root /usr/lib/firefox-&firefox-version; &amp;&amp;
295
296ln -sfv ../lib/firefox-&firefox-version;/firefox /usr/bin &amp;&amp;-->
297<screen role="root"><userinput>make -f client.mk install INSTALL_SDK= &amp;&amp;
298
299mkdir -pv /usr/lib/mozilla/plugins &amp;&amp;
300ln -sfv ../mozilla/plugins /usr/lib/firefox-&firefox-version;</userinput></screen>
301
302 <para>
303 If you <emphasis>have</emphasis> linked against an already installed
304 <application>Xulrunner</application>, as the
305 <systemitem class="username">root</systemitem> user:
306 </para>
307
308<screen role="root"><userinput>make -C firefox-build-dir install &amp;&amp;
309ln -sfv ../lib/firefox-&firefox-version;/firefox /usr/bin &amp;&amp;
310ln -sfv ../xulrunner-&firefox-version; /usr/lib/firefox-&firefox-version;/xulrunner &amp;&amp;
311
312mkdir -pv /usr/lib/mozilla/plugins &amp;&amp;
313ln -sfv ../mozilla/plugins /usr/lib/firefox-&firefox-version;</userinput></screen>
314
315 </sect2>
316
317 <sect2 role="commands">
318 <title>Command Explanations</title>
319
320 <para>
321 <command>ac_add_options --disable-necko-wifi</command>: If you remove
322 this command, you will enable opt-in support for geolocation web services
323 when you are using a wifi connection.
324 </para>
325
326 <para>
327 <command>make -f client.mk ...</command>: Mozilla products are packaged to
328 allow the use of a configuration file which can be used to pass the
329 configuration settings to the <command>configure</command> command.
330 <command>make</command> uses the <filename>client.mk</filename> file to
331 get initial configuration and setup parameters.
332 </para>
333
334 <para>
335 <command>make -C firefox-build-dir install</command>: This runs
336 <command>make install</command> in firefox-build-dir.
337 </para>
338
339 <para>
340 <command>ln -sfv ... /usr/bin/firefox</command>: This puts a symbolic link
341 to the <command>firefox</command> executable in your <envar>PATH</envar>
342 variable.
343 </para>
344
345 <para>
346 <command>mkdir -p /usr/lib/mozilla/plugins</command>: This checks
347 that <filename class="directory">/usr/lib/mozilla/plugins</filename>
348 exists.
349 </para>
350
351 <para>
352 <command>ln -sv ... /usr/lib/firefox-&firefox-version;</command>: This
353 command creates a symbolic link to
354 <filename class="directory">/usr/lib/mozilla/plugins</filename>. It's not
355 really needed, as <application>Firefox</application> checks
356 <filename class="directory">/usr/lib/mozilla/plugins</filename> by
357 default, but the symbolic link is made to keep all the plugins installed in
358 one folder.
359 </para>
360
361 </sect2>
362
363 <sect2 role="configuration">
364 <title>Configuring Firefox</title>
365
366 <para>
367 If you deleted the <option>--disable-webm</option> option from your
368 <filename>mozconfig</filename>, your <application>Firefox</application>
369 can play most YouTube videos without the need for the flash plugin. To
370 enable this, go to <ulink url="http://www.youtube.com/html5"/> and click
371 on 'Join the HTML5 Trial' (needs cookies enabled).
372 </para>
373
374 <para>
375 If you use a desktop environment like <application>Gnome</application> or
376 <application>KDE</application> you may like to create a
377 <filename>firefox.desktop</filename> file so that
378 <application>Firefox</application> appears in the panel's menus. If you
379 didn't enable startup-notification in your mozconfig change the
380 StartupNotify line to false. As the
381 <systemitem class="username">root</systemitem> user:
382 </para>
383
384<screen role="root"><userinput>mkdir -pv /usr/share/applications &amp;&amp;
385mkdir -pv /usr/share/pixmaps &amp;&amp;
386
387cat &gt; /usr/share/applications/firefox.desktop &lt;&lt; "EOF" &amp;&amp;
388<literal>[Desktop Entry]
389Encoding=UTF-8
390Name=Firefox Web Browser
391Comment=Browse the World Wide Web
392GenericName=Web Browser
393Exec=firefox %u
394Terminal=false
395Type=Application
396Icon=firefox
397Categories=GNOME;GTK;Network;WebBrowser;
398MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
399StartupNotify=true</literal>
400EOF
401
402ln -sfv /usr/lib/firefox-&firefox-version;/browser/icons/mozicon128.png \
403 /usr/share/pixmaps/firefox.png</userinput></screen>
404
405 </sect2>
406
407 <sect2 role="content">
408 <title>Contents</title>
409
410 <segmentedlist>
411 <segtitle>Installed Programs</segtitle>
412 <segtitle>Installed Libraries</segtitle>
413 <segtitle>Installed Directory</segtitle>
414
415 <seglistitem>
416 <seg>
417 firefox
418 </seg>
419 <seg>
420 Numerous libraries, browser components, plugins, extensions, and
421 helper modules installed in
422 <filename class="directory">/usr/lib/firefox-&firefox-version;</filename>
423 </seg>
424 <seg>
425 /usr/lib/firefox-&firefox-version;
426 </seg>
427 </seglistitem>
428 </segmentedlist>
429
430 <variablelist>
431 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
432 <?dbfo list-presentation="list"?>
433 <?dbhtml list-presentation="table"?>
434
435 <varlistentry id="firefox-prog">
436 <term><command>firefox</command></term>
437 <listitem>
438 <para>
439 is a <application>GTK+ 2</application> internet browser that uses the
440 Mozilla Gecko rendering engine.
441 </para>
442 <indexterm zone="firefox firefox-prog">
443 <primary sortas="b-firefox">firefox</primary>
444 </indexterm>
445 </listitem>
446 </varlistentry>
447
448 </variablelist>
449
450 </sect2>
451
452</sect1>
Note: See TracBrowser for help on using the repository browser.