source: xsoft/graphweb/seamonkey.xml@ 0d92bdb

12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 0d92bdb was 03adc377, checked in by Douglas R. Reno <renodr@…>, 15 months ago

Update to seamonkey-2.53.16 (Security Update)

  • Property mode set to 100644
File size: 16.5 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 "92ebcb6d9410442a9c1cf9c321f292f4">
10 <!ENTITY seamonkey-size "254 MB">
11 <!ENTITY seamonkey-buildsize "4.4 GB (159 MB installed)">
12 <!ENTITY seamonkey-time "11 SBU (with parallelism=4)">
13]>
14
15<sect1 id="seamonkey" xreflabel="SeaMonkey-&seamonkey-version;">
16 <?dbhtml filename="seamonkey.html" ?>
17
18
19 <title>SeaMonkey-&seamonkey-version;</title>
20
21 <indexterm zone="seamonkey">
22 <primary sortas="a-SeaMonkey">SeaMonkey</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to SeaMonkey</title>
27
28 <para>
29 <application>SeaMonkey</application> is a browser suite, a descendant
30 of <application>Netscape</application>. It includes the browser,
31 composer, mail and news clients, and an IRC client.
32 </para>
33
34 <para>
35 It is the community-driven follow-on to the Mozilla Application Suite,
36 created after Mozilla decided to focus on separate applications for
37 browsing and e-mail. Those applications are
38 <xref linkend="firefox"/> and <xref linkend="thunderbird"/>.
39 </para>
40
41 &lfs113_checked;
42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
46 <para>
47 Download (HTTP): <ulink url="&seamonkey-download-http;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download (FTP): <ulink url="&seamonkey-download-ftp;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download MD5 sum: &seamonkey-md5sum;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download size: &seamonkey-size;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated disk space required: &seamonkey-buildsize;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated build time: &seamonkey-time;
73 </para>
74 </listitem>
75 </itemizedlist>
76
77<!--
78 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
79 <itemizedlist spacing="compact">
80 <listitem>
81 <para>
82 Required patch:
83 <ulink url="&patch-root;/seamonkey-&seamonkey-version;-upstream_fixes-1.patch"/>
84 </para>
85 </listitem>
86 </itemizedlist>
87-->
88
89 <note>
90 <para>
91 The tarball
92 <emphasis>seamonkey-&seamonkey-version;.source.tar.xz</emphasis> will
93 untar to <emphasis>seamonkey-&seamonkey-version;</emphasis> directory.
94 </para>
95 </note>
96
97 <bridgehead renderas="sect3">SeaMonkey Dependencies</bridgehead>
98
99 <bridgehead renderas="sect4">Required</bridgehead>
100 <para role="required">
101 <xref linkend="autoconf213"/>,
102 <xref linkend="cbindgen"/>,
103 <xref linkend="gtk3"/>,
104 <xref linkend="nodejs"/>,
105 <xref linkend="python2"/>,
106 <xref linkend="unzip"/>,
107 <xref linkend="yasm"/>, and
108 <xref linkend="zip"/>
109 </para>
110
111 <bridgehead renderas="sect4">Recommended</bridgehead>
112 <para role="recommended">
113 <xref linkend="icu"/>,
114 <xref linkend="libevent"/>,
115 <!--<xref linkend="libvpx"/>, Causes build failures similar to Firefox -->
116 <xref linkend="libwebp"/>,
117 <xref linkend="llvm"/> (with clang),
118 <xref linkend="nasm"/>,
119 <xref linkend="nspr"/>,
120 <xref linkend="nss"/>, and
121 <xref linkend="pulseaudio"/>
122 <!-- <xref linkend="sqlite"/> system version no longer supported -->
123 </para>
124<!--
125 <bridgehead renderas="sect4">Optional</bridgehead>
126 <para role="optional">
127 <xref linkend="sqlite"/> (not recommended due to potential
128 security concerns)
129 </para>
130-->
131 <note>
132 <para>
133 If you don't install recommended dependencies, then internal copies of
134 those packages will be used. They might be tested to work, but they can
135 be out of date or contain security holes.
136 </para>
137 </note>
138
139 <bridgehead renderas="sect4">Optional</bridgehead>
140 <para role="optional">
141 <xref linkend="alsa-lib"/>,
142 <!--<xref linkend="curl"/>,-->
143 <xref linkend="dbus-glib"/>,
144 <!--<xref linkend="doxygen"/>,-->
145 <xref linkend="GConf"/>,
146 <!--<xref linkend="gst10-plugins-base"/> (and other plugins, only for tests),-->
147 <!--<xref linkend="openjdk"/>, Not seen in logs -->
148 <xref linkend="startup-notification"/>,
149 <xref linkend="valgrind"/>,
150 <xref linkend="wget"/>,
151 <xref linkend="wireless_tools"/>,
152 <ulink url="https://hunspell.sourceforge.net/">Hunspell</ulink>, and
153 <ulink url="https://facebook.github.io/watchman/">Watchman</ulink>
154 </para>
155
156 <para condition="html" role="usernotes">
157 User Notes: <ulink url="&blfs-wiki;/seamonkey"/>
158 </para>
159
160 </sect2>
161
162 <sect2 role="installation">
163 <title>Installation of SeaMonkey</title>
164
165 <para>
166 The configuration of <application>SeaMonkey</application> is accomplished
167 by creating a <filename>mozconfig</filename> file containing the desired
168 configuration options. A default <filename>mozconfig</filename> file is
169 created below. To see the entire list of available configuration options
170 (and an abbreviated description of each one), issue
171 <command>./configure --help</command>. You may also wish to review the
172 entire file and uncomment any other desired options. Create the file by
173 issuing the following command:
174 </para>
175
176<screen><?dbfo keep-together="auto"?><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
177<literal># If you have a multicore machine, all cores will be used
178
179# If you have installed DBus-Glib comment out this line:
180ac_add_options --disable-dbus
181
182# If you have installed dbus-glib, and you have installed (or will install)
183# wireless-tools, and you wish to use geolocation web services, comment out
184# this line
185ac_add_options --disable-necko-wifi
186
187# Uncomment these lines if you have installed optional dependencies:
188#ac_add_options --enable-system-hunspell
189#ac_add_options --enable-startup-notification
190
191# Uncomment the following option if you have not installed PulseAudio
192#ac_add_options --disable-pulseaudio
193# and uncomment this if you installed alsa-lib instead of PulseAudio
194#ac_add_options --enable-alsa
195
196# Comment out following option if you have gconf installed
197ac_add_options --disable-gconf
198<!-- comments cause a blank line, following was for icu in the past
199 seems OK with icu-60, seamonkey-2.49
200 line below was with comment and explanation
201# Use the internal version of icu due to execution problems-->
202# Comment out following options if you have not installed
203# recommended dependencies:
204ac_add_options --with-system-icu
205ac_add_options --with-system-libevent
206ac_add_options --with-system-nspr
207ac_add_options --with-system-nss
208ac_add_options --with-system-webp
209
210# Disabling debug symbols makes the build much smaller and a little
211# faster. Comment this if you need to run a debugger. Note: This is
212# required for compilation on i686.
213ac_add_options --disable-debug-symbols
214
215# The elf-hack is reported to cause failed installs (after successful builds)
216# on some machines. It is supposed to improve startup time and it shrinks
217# libxul.so by a few MB - comment this if you know your machine is not affected.
218ac_add_options --disable-elf-hack
219
220# Seamonkey has some additional features that are not turned on by default,
221# such as an IRC client, calendar, and DOM Inspector. The DOM Inspector
222# aids with designing web pages. Comment these options if you do not
223# desire these features.
224ac_add_options --enable-calendar
225ac_add_options --enable-dominspector
226ac_add_options --enable-irc
227
228# The BLFS editors recommend not changing anything below this line:
229ac_add_options --prefix=/usr
230ac_add_options --enable-application=comm/suite
231
232ac_add_options --disable-crashreporter
233ac_add_options --disable-updater
234ac_add_options --disable-tests
235
236# rust-simd does not compile with recent versions of rust.
237# It is disabled in recent versions of firefox
238ac_add_options --disable-rust-simd
239
240ac_add_options --enable-optimize="-O2"
241ac_add_options --enable-strip
242ac_add_options --enable-install-strip
243ac_add_options --enable-official-branding
244
245# The option to use system cairo was removed in 2.53.9.
246ac_add_options --enable-system-ffi
247ac_add_options --enable-system-pixman
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>
256 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
257 href="../../xincludes/mozshm.xml"/>
258 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
259 href="../../xincludes/mozmach.xml"/>
260 </note>
261
262<!-- Applied upstream
263 <para>
264 Apply a patch to fix a build failure with LLVM-16:
265 </para>
266
267<screen><userinput>patch -Np1 -i ../seamonkey-&seamonkey-version;-upstream_fixes-1.patch</userinput></screen>
268-->
269 <para>
270 First remove an obsolete flag in python code, that has been removed
271 in python-3.11:
272 </para>
273
274<screen><userinput>grep -rl \'rU\' | xargs sed -i "s/'rU'/'r'/"</userinput></screen>
275
276<!-- Causes issues since xpidl is python2 in Seamonkey
277 <para>
278 Then fix an issue with regular expressions in python-3.11:
279 </para>
280
281<screen><userinput>sed -e 's/?s)\./?s:.)/' \
282 -e '/?m)/{s/?m)/?m:/;s/\$"/$)"/}' \
283 -e '/?s)%/{s/?s)/?s:/;s/?"/?)"/}' \
284 -i xpcom/idl-parser/xpidl/xpidl.py</userinput></screen>
285-->
286
287 <para>
288 Next, work around a problem in the Python virtual environment:
289 </para>
290
291<screen><userinput>sed -i "/if sys.executable !=/i\ open(join(bin_dir, 'pyvenv.cfg'), 'w').close()" \
292 third_party/python/virtualenv/virtualenv.py</userinput></screen>
293
294<!-- Applied upstream
295 <para>
296 Next, work around a crash that occurs when playing audio when Seamonkey
297 is compiled with rustc-1.67 or higher:
298 </para>
299
300<screen><userinput>sed -i '/USE_PULSE_RUST/d' media/libcubeb/src/moz.build</userinput></screen>
301-->
302
303 <para>
304 Compile <application>SeaMonkey</application> by running the following
305 commands:
306 </para>
307
308<screen><userinput>export CC=clang CXX=clang++ &amp;&amp;
309./mach configure || ./mach configure &amp;&amp;
310./mach build</userinput></screen>
311
312
313 <!-- comment this since llvm must have been installed for rust
314 <note>
315 <para>
316 The CC and CXX variables above are only needed if
317 <xref linkend="llvm"/> is installed and you do not want to use clang.
318 </para>
319 </note>-->
320
321 <para>
322 This package does not come with a test suite.
323 </para>
324
325 <para>
326 Install <application>SeaMonkey</application> by issuing the following
327 commands as the <systemitem class="username">root</systemitem> user:
328 </para>
329
330
331<screen role="root"><userinput>./mach install &amp;&amp;
332chown -R 0:0 /usr/lib/seamonkey &amp;&amp;
333
334cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1</userinput></screen>
335
336 </sect2>
337
338 <sect2 role="commands">
339 <title>Command Explanations</title>
340
341 <para>
342 <command>export CC=clang CXX=clang++</command>:
343 With the introduction of <application>gcc-12</application>, many
344 more warnings are generated when compiling mozilla applications
345 and that results in a much slower, and larger, build. Furthermore,
346 building with GCC on i?86 is currently broken.
347 Although upstream mozilla code defaults to using
348 <application>llvm</application> unless overridden, the older configure
349 code in <application>SeaMonkey</application> defaults to gcc.
350 </para>
351
352 <para>
353 <command>./mach configure || ./mach configure</command>: This validates
354 the supplied dependencies and the <filename>mozconfig</filename>.
355 This is run twice because problems with mach will cause it to fail the
356 first time.
357 </para>
358
359 <para>
360 <option>./mach build --verbose</option>: Use this alternative if you
361 need details of which files are being compiled, together with any C or
362 C++ flags being used. But do not add '--verbose' to the install command,
363 it is not accepted there.
364 </para>
365
366 <para>
367 <option>./mach build -jN</option>: The build should, by default, use
368 all the online CPU cores. If using all the cores causes the build to swap
369 because you have insufficient memory, using fewer cores can be faster.
370 </para>
371
372 </sect2>
373
374 <sect2 role="configuration">
375 <title>Configuring SeaMonkey</title>
376
377 <para>
378 For installing various <application>SeaMonkey</application> add-ons, refer
379 to <ulink url="https://addons.thunderbird.net/en-US/seamonkey/">Add-ons
380 for Seamonkey</ulink>.
381 </para>
382
383 <para>
384 Along with using the <quote>Preferences</quote> menu to configure
385 <application>SeaMonkey</application>'s options and preferences to suit
386 individual tastes, finer grain control of many options is only available
387 using a tool not available from the general menu system. To access this
388 tool, you'll need to open a browser window and enter
389 <systemitem role="url">about:config</systemitem> in the address bar. This
390 will display a list of the configuration preferences and information
391 related to each one. You can use the <quote>Search:</quote> bar to enter
392 search criteria and narrow down the listed items. Changing a preference
393 can be done using two methods. One, if the preference has a boolean value
394 (True/False), simply double-click on the preference to toggle the value
395 and two, for other preferences simply right-click on the desired line,
396 choose <quote>Modify</quote> from the menu and change the value. Creating
397 new preference items is accomplished in the same way, except choose
398 <quote>New</quote> from the menu and provide the desired data into the
399 fields when prompted.
400 </para>
401
402<!-- The URL no longer exists.
403 <tip>
404 <para>
405 There is a multitude of configuration parameters you can tweak to
406 customize <application>SeaMonkey</application>. A very extensive list of
407 these parameters can be found at
408 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
409 </para>
410 </tip>
411-->
412 <para>
413 If you use a desktop environment like <application>Gnome</application> or
414 <application>KDE</application> you may wish to create a
415 <filename>seamonkey.desktop</filename> file so that
416 <application>SeaMonkey</application> appears in the panel's menus. If you
417 didn't enable <application>Startup-Notification</application> in your
418 mozconfig change the StartupNotify line to false. As the
419 <systemitem class="username">root</systemitem> user:
420 </para>
421
422<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
423
424cat &gt; /usr/share/applications/seamonkey.desktop &lt;&lt; "EOF"
425<literal>[Desktop Entry]
426Encoding=UTF-8
427Type=Application
428Name=SeaMonkey
429Comment=The Mozilla Suite
430Icon=seamonkey
431Exec=seamonkey
432Categories=Network;GTK;Application;Email;Browser;WebBrowser;News;
433StartupNotify=true
434Terminal=false</literal>
435EOF
436
437ln -sfv /usr/lib/seamonkey/chrome/icons/default/default128.png \
438 /usr/share/pixmaps/seamonkey.png</userinput></screen>
439 </sect2>
440
441 <sect2 role="content">
442 <title>Contents</title>
443
444 <segmentedlist>
445 <segtitle>Installed Programs</segtitle>
446 <segtitle>Installed Libraries</segtitle>
447 <segtitle>Installed Directory</segtitle>
448
449 <seglistitem>
450 <seg>seamonkey</seg>
451 <seg>
452 Numerous libraries, browser, and email/newsgroup components, plugins,
453 extensions, and helper modules installed in
454 <filename class="directory">/usr/lib/seamonkey</filename>
455 </seg>
456 <seg>
457 /usr/lib/seamonkey
458 </seg>
459 </seglistitem>
460 </segmentedlist>
461
462 <variablelist>
463 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
464 <?dbfo list-presentation="list"?>
465 <?dbhtml list-presentation="table"?>
466
467 <varlistentry id="seamonkey-prog">
468 <term><command>seamonkey</command></term>
469 <listitem>
470 <para>
471 is the Mozilla browser/email/newsgroup/chat client suite
472 </para>
473 <indexterm zone="seamonkey seamonkey-prog">
474 <primary sortas="b-seamonkey">seamonkey</primary>
475 </indexterm>
476 </listitem>
477 </varlistentry>
478 </variablelist>
479 </sect2>
480
481</sect1>
Note: See TracBrowser for help on using the repository browser.