source: xsoft/graphweb/seamonkey.xml@ f572dbb

11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/soup3 xry111/xf86-video-removal
Last change on this file since f572dbb was f572dbb, checked in by Pierre Labastie <pierre.labastie@…>, 20 months ago

Building mozilla apps with gcc is broken on i686

We used to sed the double_t definition to allow building, but now
we use clang, so that the build passes without sed. Say that using
GCC breaks the build in command explanations too.

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