source: xsoft/graphweb/firefox.xml@ 09ae65ca

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

More checks and fixes.

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

  • Property mode set to 100644
File size: 15.1 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 &lfs76_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<screen><userinput>make -f client.mk</userinput></screen>
264
265 <para>
266 This package does not come with a test suite.
267 </para>
268
269 <para>
270 Now, as the <systemitem class="username">root</systemitem> user, if you
271 have <emphasis>not</emphasis> linked <application>Firefox</application>
272 against an installed <application>Xulrunner</application>, install the
273 package:
274 </para>
275
276<screen role="root"><userinput>make -f client.mk install INSTALL_SDK= &amp;&amp;
277
278mkdir -pv /usr/lib/mozilla/plugins &amp;&amp;
279ln -sfv ../mozilla/plugins /usr/lib/firefox-&firefox-version;</userinput></screen>
280
281 <para>
282 If you <emphasis>have</emphasis> linked against an already installed
283 <application>Xulrunner</application>, as the
284 <systemitem class="username">root</systemitem> user:
285 </para>
286
287<screen role="root"><userinput>make -C firefox-build-dir install &amp;&amp;
288ln -sfv ../lib/firefox-&firefox-version;/firefox /usr/bin &amp;&amp;
289ln -sfv ../xulrunner-&firefox-version; /usr/lib/firefox-&firefox-version;/xulrunner &amp;&amp;
290
291mkdir -pv /usr/lib/mozilla/plugins &amp;&amp;
292ln -sfv ../mozilla/plugins /usr/lib/firefox-&firefox-version;</userinput></screen>
293
294 </sect2>
295
296 <sect2 role="commands">
297 <title>Command Explanations</title>
298
299 <para>
300 <command>ac_add_options --disable-necko-wifi</command>: If you remove
301 this command, you will enable opt-in support for geolocation web services
302 when you are using a wifi connection.
303 </para>
304
305 <para>
306 <command>make -f client.mk ...</command>: Mozilla products are packaged to
307 allow the use of a configuration file which can be used to pass the
308 configuration settings to the <command>configure</command> command.
309 <command>make</command> uses the <filename>client.mk</filename> file to
310 get initial configuration and setup parameters.
311 </para>
312
313 <para>
314 <command>make -C firefox-build-dir install</command>: This runs
315 <command>make install</command> in firefox-build-dir.
316 </para>
317
318 <para>
319 <command>ln -sfv ... /usr/bin/firefox</command>: This puts a symbolic link
320 to the <command>firefox</command> executable in your <envar>PATH</envar>
321 variable.
322 </para>
323
324 <para>
325 <command>mkdir -p /usr/lib/mozilla/plugins</command>: This checks
326 that <filename class="directory">/usr/lib/mozilla/plugins</filename>
327 exists.
328 </para>
329
330 <para>
331 <command>ln -sv ... /usr/lib/firefox-&firefox-version;</command>: This
332 command creates a symbolic link to
333 <filename class="directory">/usr/lib/mozilla/plugins</filename>. It's not
334 really needed, as <application>Firefox</application> checks
335 <filename class="directory">/usr/lib/mozilla/plugins</filename> by
336 default, but the symbolic link is made to keep all the plugins installed in
337 one folder.
338 </para>
339
340 </sect2>
341
342 <sect2 role="configuration">
343 <title>Configuring Firefox</title>
344
345 <para>
346 If you deleted the <option>--disable-webm</option> option from your
347 <filename>mozconfig</filename>, your <application>Firefox</application>
348 can play most YouTube videos without the need for the flash plugin. To
349 enable this, go to <ulink url="http://www.youtube.com/html5"/> and click
350 on 'Join the HTML5 Trial' (needs cookies enabled).
351 </para>
352
353 <para>
354 If you use a desktop environment like <application>Gnome</application> or
355 <application>KDE</application> you may like to create a
356 <filename>firefox.desktop</filename> file so that
357 <application>Firefox</application> appears in the panel's menus. If you
358 didn't enable startup-notification in your mozconfig change the
359 StartupNotify line to false. As the
360 <systemitem class="username">root</systemitem> user:
361 </para>
362
363<screen role="root"><userinput>mkdir -pv /usr/share/applications &amp;&amp;
364
365cat &gt; /usr/share/applications/firefox.desktop &lt;&lt; "EOF" &amp;&amp;
366<literal>[Desktop Entry]
367Encoding=UTF-8
368Name=Firefox Web Browser
369Comment=Browse the World Wide Web
370GenericName=Web Browser
371Exec=firefox %u
372Terminal=false
373Type=Application
374Icon=firefox
375Categories=GNOME;GTK;Network;WebBrowser;
376MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
377StartupNotify=true</literal>
378EOF
379
380for s in 16 32 48
381do
382install -v -Dm644 /usr/lib/firefox-&firefox-version;/browser/chrome/icons/default/default${s}.png \
383 /usr/share/icons/hicolor/${s}x${s}/apps/firefox.png
384done &amp;&amp;
385install -v -Dm644 /usr/lib/firefox-&firefox-version;/browser/icons/mozicon128.png \
386 /usr/share/icons/hicolor/128x128/apps/firefox.png &amp;&amp;
387gtk-update-icon-cache -qf /usr/share/icons/hicolor &amp;&amp;
388unset s</userinput></screen>
389
390 </sect2>
391
392 <sect2 role="content">
393 <title>Contents</title>
394
395 <segmentedlist>
396 <segtitle>Installed Programs</segtitle>
397 <segtitle>Installed Libraries</segtitle>
398 <segtitle>Installed Directories</segtitle>
399
400 <seglistitem>
401 <seg>
402 firefox
403 </seg>
404 <seg>
405 None
406 </seg>
407 <seg>
408 /usr/lib/firefox-&firefox-version; and
409 /usr/lib/mozilla/plugins
410 </seg>
411 </seglistitem>
412 </segmentedlist>
413
414 <variablelist>
415 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
416 <?dbfo list-presentation="list"?>
417 <?dbhtml list-presentation="table"?>
418
419 <varlistentry id="firefox-prog">
420 <term><command>firefox</command></term>
421 <listitem>
422 <para>
423 is a <application>GTK+ 2</application> internet browser that uses the
424 Mozilla Gecko rendering engine.
425 </para>
426 <indexterm zone="firefox firefox-prog">
427 <primary sortas="b-firefox">firefox</primary>
428 </indexterm>
429 </listitem>
430 </varlistentry>
431
432 </variablelist>
433
434 </sect2>
435
436</sect1>
Note: See TracBrowser for help on using the repository browser.