source: xsoft/graphweb/seamonkey.xml@ 3fd9e8eb

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 3fd9e8eb was 3fd9e8eb, checked in by Bruce Dubbs <bdubbs@…>, 7 years ago

Misc tags and a fix for seamonkey

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

  • Property mode set to 100644
File size: 16.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 seamonkey-download-http "&mozilla-http;/seamonkey/releases/&seamonkey-version;/source/seamonkey-&seamonkey-version;.source.tar.xz">
8<!-- <!ENTITY seamonkey-download-ftp "&mozilla-ftp;/seamonkey/releases/&seamonkey-version;/source/seamonkey-&seamonkey-version;.source.tar.bz2">-->
9 <!ENTITY seamonkey-download-ftp " ">
10 <!ENTITY seamonkey-md5sum "436a158e16eee151b97f96c053b82d45">
11 <!ENTITY seamonkey-size "195 MB">
12 <!ENTITY seamonkey-buildsize "3.9 GB (104 MB installed)">
13 <!ENTITY seamonkey-time "13.8 SBU (using parallelism=4)">
14]>
15
16<sect1 id="seamonkey" xreflabel="SeaMonkey-&seamonkey-version;">
17 <?dbhtml filename="seamonkey.html" ?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>SeaMonkey-&seamonkey-version;</title>
25
26 <indexterm zone="seamonkey">
27 <primary sortas="a-SeaMonkey">SeaMonkey</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to SeaMonkey</title>
32
33 <para>
34 <application>SeaMonkey</application> is a browser suite, the Open Source
35 sibling of <application>Netscape</application>. It includes the browser,
36 composer, mail and news clients, and an IRC client. It is the follow-on
37 to the Mozilla browser suite.
38 </para>
39
40 <para>
41 The Mozilla project also hosts two subprojects that aim to satisfy the
42 needs of users who don't need the complete browser suite or prefer to have
43 separate applications for browsing and e-mail. These subprojects are
44 <xref linkend="firefox"/> and <xref linkend="thunderbird"/>. Both are
45 based on the <application>Mozilla</application> source code.
46 </para>
47
48 &lfs80_checked;
49
50 <bridgehead renderas="sect3">Package Information</bridgehead>
51 <itemizedlist spacing="compact">
52 <listitem>
53 <para>
54 Download (HTTP): <ulink url="&seamonkey-download-http;"/>
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download (FTP): <ulink url="&seamonkey-download-ftp;"/>
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Download MD5 sum: &seamonkey-md5sum;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Download size: &seamonkey-size;
70 </para>
71 </listitem>
72 <listitem>
73 <para>
74 Estimated disk space required: &seamonkey-buildsize;
75 </para>
76 </listitem>
77 <listitem>
78 <para>
79 Estimated build time: &seamonkey-time;
80 </para>
81 </listitem>
82 </itemizedlist>
83<!--
84 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
85 <itemizedlist spacing="compact">
86 <listitem>
87 <para>
88 Required patch if using gcc-6 or later
89 <ulink url="&patch-root;/seamonkey-&seamonkey-version;-gcc6-1.patch"/>
90 </para>
91 </listitem>
92 </itemizedlist>
93-->
94 <note>
95 <para>
96 The tarball
97 <emphasis>seamonkey-&seamonkey-version;.source.tar.xz</emphasis> will
98 untar to <emphasis>seamonkey-&seamonkey-version;</emphasis> directory.
99 </para>
100 </note>
101
102 <bridgehead renderas="sect3">SeaMonkey Dependencies</bridgehead>
103
104 <bridgehead renderas="sect4">Required</bridgehead>
105 <para role="required">
106 <xref linkend="alsa-lib"/>,
107 <xref linkend="autoconf213"/>,
108 <xref linkend="gtk2"/>,
109 <xref linkend="unzip"/>,
110 <xref linkend="yasm"/>, and
111 <xref linkend="zip"/>
112 </para>
113
114 <bridgehead renderas="sect4">Recommended</bridgehead>
115 <para role="recommended">
116 <xref linkend="icu"/>,
117 <xref linkend="libevent"/>,
118 <xref linkend="libvpx"/>,
119 <xref linkend="nspr"/>,
120 <xref linkend="nss"/>, and
121 <xref linkend="sqlite"/>
122 </para>
123<!--
124 <bridgehead renderas="sect4">Optional</bridgehead>
125 <para role="optional">
126 <xref linkend="sqlite"/> (not recommended due to potential
127 security concerns)
128 </para>
129-->
130 <note>
131 <para>
132 If you don't install recommended dependencies, then internal copies of
133 those packages will be used. They might be tested to work, but they can
134 be out of date or contain security holes.
135 </para>
136 </note>
137
138 <note>
139 <para>
140 You must have installed <application>Openssl</application> before
141 <application>Python 2</application> or the build system will quickly
142 fail with output including "ImportError: cannot import name
143 HTTPSHandler". If you are in any doubt about this (e.g. upgrading from
144 an older version of Seamonkey), check if
145 <filename>/usr/lib/python&python2-majorver;/lib-dynload/_ssl.so</filename>
146 exists. If it does not, reinstall <xref linkend="python2"/> (after
147 installing <xref linkend="openssl"/>. The latest version of any
148 <emphasis>currently maintained</emphasis> version of Openssl should be
149 satisfactory if already installed.
150 </para>
151 </note>
152
153 <bridgehead renderas="sect4">Optional</bridgehead>
154 <para role="optional">
155 <xref linkend="curl"/>,
156 <xref linkend="dbus-glib"/>,
157 <xref linkend="doxygen"/>,
158 <xref linkend="GConf"/>,
159 <xref linkend="gst10-plugins-base"/> (and other plugins, only for tests),
160 <xref linkend="openjdk"/>,
161 <xref linkend="pulseaudio"/>,
162 <xref linkend="startup-notification"/>,
163 <xref linkend="valgrind"/>,
164 <xref linkend="wget"/>,
165 <xref linkend="wireless_tools"/>, and
166 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>
167 </para>
168
169 <para condition="html" role="usernotes">
170 User Notes: <ulink url="&blfs-wiki;/seamonkey"/>
171 </para>
172
173 </sect2>
174
175 <sect2 role="installation">
176 <title>Installation of SeaMonkey</title>
177
178 <para>
179 The configuration of <application>SeaMonkey</application> is accomplished
180 by creating a <filename>mozconfig</filename> file containing the desired
181 configuration options. A default <filename>mozconfig</filename> file is
182 created below. To see the entire list of available configuration options
183 (and an abbreviated description of each one), issue
184 <command>./configure --help</command>. You may also wish to review the
185 entire file and uncomment any other desired options. Create the file by
186 issuing the following command:
187 </para>
188
189<screen><?dbfo keep-together="auto"?><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
190<literal># If you have a multicore machine, all cores will be used by default.
191# If desired, you can reduce the number of cores used, e.g. to 1, by
192# uncommenting the next line and setting a valid number of CPU cores.
193#mk_add_options MOZ_MAKE_FLAGS="-j1"
194
195# If you have installed DBus-Glib comment out this line:
196ac_add_options --disable-dbus
197
198# If you have installed dbus-glib, and you have installed (or will install)
199# wireless-tools, and you wish to use geolocation web services, comment out
200# this line
201ac_add_options --disable-necko-wifi
202
203# Uncomment these lines if you have installed optional dependencies:
204#ac_add_options --enable-system-hunspell
205#ac_add_options --enable-startup-notification
206
207# Comment out the following option if you have PulseAudio installed
208ac_add_options --disable-pulseaudio
209
210# Comment out following option if you have gconf installed
211ac_add_options --disable-gconf
212
213# Comment out following options if you have not installed
214# recommended dependencies:
215ac_add_options --enable-system-sqlite
216ac_add_options --with-system-libevent
217ac_add_options --with-system-libvpx
218ac_add_options --with-system-nspr
219ac_add_options --with-system-nss
220
221# Us the internal version of icu due to execution problems
222#ac_add_options --with-system-icu
223
224# The BLFS editors recommend not changing anything below this line:
225ac_add_options --prefix=/usr
226ac_add_options --enable-application=suite
227
228ac_add_options --disable-crashreporter
229ac_add_options --disable-updater
230ac_add_options --disable-tests
231
232ac_add_options --enable-optimize
233ac_add_options --enable-strip
234ac_add_options --enable-install-strip
235
236ac_add_options --enable-gio
237ac_add_options --enable-official-branding
238ac_add_options --enable-safe-browsing
239ac_add_options --enable-url-classifier
240
241# Use internal cairo due to reports of unstable execution with
242# system cairo
243#ac_add_options --enable-system-cairo
244ac_add_options --enable-system-ffi
245ac_add_options --enable-system-pixman
246
247ac_add_options --with-pthreads
248
249ac_add_options --with-system-bz2
250ac_add_options --with-system-jpeg
251ac_add_options --with-system-png
252ac_add_options --with-system-zlib</literal>
253EOF</userinput></screen>
254
255 <note><para>
256 If you are compiling <application>SeaMonkey</application> in chroot, make
257 sure you have the <envar>SHELL</envar> environment variable set or prepend
258 <envar>SHELL=/bin/sh</envar> to the first make command below.
259 </para></note>
260
261 <para>
262 Compile <application>SeaMonkey</application> by running the following
263 commands:
264 </para>
265
266<screen><userinput>CFLAGS_HOLD=$CFLAGS &amp;&amp;
267CXXFLAGS_HOLD=$CXXFLAGS &amp;&amp;
268EXTRA_FLAGS=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2" &amp;&amp;
269export CFLAGS+=$EXTRA_FLAGS &amp;&amp;
270export CXXFLAGS+=$EXTRA_FLAGS &amp;&amp;
271unset EXTRA_FLAGS &amp;&amp;
272
273sed -e 's/256/224/' \
274 -i mozilla/netwerk/protocol/http/Http2Session.cpp &amp;&amp;
275
276sed -e '/version=/s/:space:/[&amp;]/' \
277 -i ./mozilla/build/autoconf/icu.m4 &amp;&amp;
278
279sed -e s/_EVENT_SIZEOF/EVENT__SIZEOF/ \
280 -i mozilla/ipc/chromium/src/base/message_pump_libevent.cc
281
282make -f client.mk</userinput></screen>
283
284 <para>
285 This package does not come with a test suite.
286 </para>
287
288 <para>
289 Install <application>SeaMonkey</application> by issuing the following
290 commands as the <systemitem class="username">root</systemitem> user:
291 </para>
292
293<screen role="root"><userinput>make -f client.mk install INSTALL_SDK= &amp;&amp;
294chown -R 0:0 /usr/lib/seamonkey-&seamonkey-version; &amp;&amp;
295
296cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1</userinput></screen>
297
298 <para>
299 Set the compilation flags back to their original values:
300 </para>
301
302<screen><userinput>export CFLAGS=$CFLAGS_HOLD &amp;&amp;
303export CXXFLAGS=$CXXFLAGS_HOLD &amp;&amp;
304unset CFLAGS_HOLD CXXFLAGS_HOLD</userinput></screen>
305
306 <bridgehead renderas="sect3" id="devel-seamonkey" xreflabel="SeaMonkey">
307 All the Development Libraries and Headers
308 </bridgehead>
309
310 <para>
311 If you want to install the full <application>SeaMonkey</application>
312 development environment, as the
313 <systemitem class="username">root</systemitem> user:
314 </para>
315
316<screen role="root"><userinput>make -C obj* install</userinput></screen>
317
318 <note>
319 <para>
320 The build directory is set by the make procedure and is dependent on
321 the system archetecture, but the directory name starts with 'obj'.
322 </para>
323 </note>
324
325 </sect2>
326
327 <sect2 role="commands">
328 <title>Command Explanations</title>
329
330 <para>
331 <command>export CFLAGS= ... export CXXFLAGS= ...</command>: These
332 settings work around code which gcc6 would otherwise regard as
333 out-of-specification and allow it to produce a working program.
334 </para>
335
336 <para>
337 <command>sed -e 's/256/224/' ...</command>: Make the required key
338 length for ECDSA encryption compatible with RFC7540 9.2.1. Otherwise
339 some web sites cannot be accessed.
340 </para>
341
342 <para>
343 <command>sed ... icu.m4</command>: Fix an error identified by
344 sed-4.4 and later.
345 </para>
346
347 <para>
348 <command>sed ... message_pump_libevent.cc</command>: Fix an
349 error due to changes in libevent-2.1.8 and later.
350 </para>
351
352 <para>
353 <command>make -f client.mk</command>: Mozilla products are packaged to
354 allow the use of a configuration file which can be used to pass the
355 configuration settings to the <command>configure</command> command.
356 <command>make</command> uses the <filename>client.mk</filename> file to
357 get initial configuration and setup parameters.
358 </para>
359
360 </sect2>
361
362 <sect2 role="configuration">
363 <title>Configuring SeaMonkey</title>
364
365 <para>
366 For installing various <application>SeaMonkey</application> plugins, refer
367 to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's PluginDoc
368 Project</ulink>.
369 </para>
370
371 <para>
372 Along with using the <quote>Preferences</quote> menu to configure
373 <application>SeaMonkey</application>'s options and preferences to suit
374 individual tastes, finer grain control of many options is only available
375 using a tool not available from the general menu system. To access this
376 tool, you'll need to open a browser window and enter
377 <systemitem role="url">about:config</systemitem> in the address bar. This
378 will display a list of the configuration preferences and information
379 related to each one. You can use the <quote>Filter:</quote> bar to enter
380 search criteria and narrow down the listed items. Changing a preference
381 can be done using two methods. One, if the preference has a boolean value
382 (True/False), simply double-click on the preference to toggle the value
383 and two, for other preferences simply right-click on the desired line,
384 choose <quote>Modify</quote> from the menu and change the value. Creating
385 new preference items is accomplished in the same way, except choose
386 <quote>New</quote> from the menu and provide the desired data into the
387 fields when prompted.
388 </para>
389
390 <tip>
391 <para>
392 There is a multitude of configuration parameters you can tweak to
393 customize <application>SeaMonkey</application>. A very extensive list of
394 these parameters can be found at
395 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
396 </para>
397 </tip>
398
399 <para>
400 If you use a desktop environment like <application>Gnome</application> or
401 <application>KDE</application> you may wish to create a
402 <filename>seamonkey.desktop</filename> file so that
403 <application>SeaMonkey</application> appears in the panel's menus. If you
404 didn't enable <application>Startup-Notification</application> in your
405 mozconfig change the StartupNotify line to false. As the
406 <systemitem class="username">root</systemitem> user:
407 </para>
408
409<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
410
411cat &gt; /usr/share/applications/seamonkey.desktop &lt;&lt; "EOF"
412[Desktop Entry]
413Encoding=UTF-8
414Type=Application
415Name=SeaMonkey
416Comment=The Mozilla Suite
417Icon=seamonkey
418Exec=seamonkey
419Categories=Network;GTK;Application;Email;Browser;WebBrowser;News;
420StartupNotify=true
421Terminal=false
422EOF
423
424ln -sfv /usr/lib/seamonkey-&seamonkey-version;/chrome/icons/default/seamonkey.png \
425 /usr/share/pixmaps</userinput></screen>
426 </sect2>
427
428 <sect2 role="content">
429 <title>Contents</title>
430
431 <segmentedlist>
432 <segtitle>Installed Programs</segtitle>
433 <segtitle>Installed Libraries</segtitle>
434 <segtitle>Installed Directory</segtitle>
435
436 <seglistitem>
437 <seg>seamonkey</seg>
438 <seg>
439 Numerous libraries, browser, and email/newsgroup components, plugins,
440 extensions, and helper modules installed in <filename
441 class="directory">/usr/lib/seamonkey-&seamonkey-version;</filename>
442 </seg>
443 <seg>
444 /usr/lib/seamonkey-&seamonkey-version;
445 </seg>
446 </seglistitem>
447 </segmentedlist>
448
449 <variablelist>
450 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
451 <?dbfo list-presentation="list"?>
452 <?dbhtml list-presentation="table"?>
453
454 <varlistentry id="seamonkey-prog">
455 <term><command>seamonkey</command></term>
456 <listitem>
457 <para>
458 is the Mozilla browser/email/newsgroup/chat client suite.
459 </para>
460 <indexterm zone="seamonkey seamonkey-prog">
461 <primary sortas="b-seamonkey">seamonkey</primary>
462 </indexterm>
463 </listitem>
464 </varlistentry>
465 </variablelist>
466 </sect2>
467</sect1>
Note: See TracBrowser for help on using the repository browser.