source: xsoft/graphweb/seamonkey.xml@ 01948771

trunk
Last change on this file since 01948771 was 01948771, checked in by Ken Moffat <ken@…>, 8 weeks ago

Fix seamonkey build with nss-3.65 by using shipped nss.

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