source: xsoft/graphweb/seamonkey.xml@ 29ef9b8f

12.1 12.2 gimp3 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/for-12.3 xry111/llvm18 xry111/spidermonkey128
Last change on this file since 29ef9b8f was 29ef9b8f, checked in by Xi Ruoyao <xry111@…>, 11 months ago

seamonkey: Sync some configuration in mozconfig from Firefox

  • Remove --enable-optimize=-O2 as it's the default.
  • Use RELR for saving several MB from libxul.so, like Firefox.
  • Update the comment for --disable-rust-simd.
  • Copy a comment with legal implication from Firefox.
  • Property mode set to 100644
File size: 16.4 KB
RevLine 
[f939f05]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[f939f05]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[c9b986ed]7 <!ENTITY seamonkey-download-http "&mozilla-http;/seamonkey/releases/&seamonkey-version;/source/seamonkey-&seamonkey-version;.source.tar.xz">
[6968e3cb]8 <!ENTITY seamonkey-download-ftp " ">
[1d81737]9 <!ENTITY seamonkey-md5sum "15c73a5e725b7f002b2789706ae643d9">
[03adc377]10 <!ENTITY seamonkey-size "254 MB">
[1d81737]11 <!ENTITY seamonkey-buildsize "4.3 GB (159 MB installed)">
[88dd6e72]12 <!ENTITY seamonkey-time "11 SBU (with parallelism=4)">
[a41f643]13]>
[f939f05]14
[eebff7b]15<sect1 id="seamonkey" xreflabel="seamonkey-&seamonkey-version;">
[b5eb704]16 <?dbhtml filename="seamonkey.html" ?>
[88dd2f52]17
18
[eebff7b]19 <title>Seamonkey-&seamonkey-version;</title>
[88dd2f52]20
[b5eb704]21 <indexterm zone="seamonkey">
[eebff7b]22 <primary sortas="a-seamonkey">seamonkey</primary>
[88dd2f52]23 </indexterm>
24
25 <sect2 role="package">
[eebff7b]26 <title>Introduction to Seamonkey</title>
[88dd2f52]27
[a0d389d]28 <para>
[eebff7b]29 <application>Seamonkey</application> is a browser suite, a descendant
[99fede1f]30 of <application>Netscape</application>. It includes the browser,
31 composer, mail and news clients, and an IRC client.
[a0d389d]32 </para>
33
34 <para>
[99fede1f]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"/>.
[a0d389d]39 </para>
[88cec02]40
[1bf0fac]41 &lfs120_checked;
[88dd2f52]42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
[d2e21cb0]45 <listitem>
[a0d389d]46 <para>
47 Download (HTTP): <ulink url="&seamonkey-download-http;"/>
48 </para>
[d2e21cb0]49 </listitem>
[88dd2f52]50 <listitem>
[a0d389d]51 <para>
52 Download (FTP): <ulink url="&seamonkey-download-ftp;"/>
53 </para>
[88dd2f52]54 </listitem>
55 <listitem>
[a0d389d]56 <para>
57 Download MD5 sum: &seamonkey-md5sum;
58 </para>
[88dd2f52]59 </listitem>
60 <listitem>
[a0d389d]61 <para>
62 Download size: &seamonkey-size;
63 </para>
[88dd2f52]64 </listitem>
65 <listitem>
[a0d389d]66 <para>
67 Estimated disk space required: &seamonkey-buildsize;
68 </para>
[88dd2f52]69 </listitem>
70 <listitem>
[a0d389d]71 <para>
72 Estimated build time: &seamonkey-time;
73 </para>
[88dd2f52]74 </listitem>
75 </itemizedlist>
[b74c79f]76
[0fc5bfd7]77 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
[82a27795]78 <itemizedlist spacing="compact">
79 <listitem>
80 <para>
[3b3720a8]81 Required patch:
[f3250b9]82 <ulink url="&patch-root;/seamonkey-&seamonkey-version;-consolidated_fixes-1.patch"/>
[82a27795]83 </para>
84 </listitem>
[0fc5bfd7]85 </itemizedlist>
[b74c79f]86
[f06c692]87 <note>
88 <para>
89 The tarball
90 <emphasis>seamonkey-&seamonkey-version;.source.tar.xz</emphasis> will
91 untar to <emphasis>seamonkey-&seamonkey-version;</emphasis> directory.
92 </para>
93 </note>
94
[eebff7b]95 <bridgehead renderas="sect3">Seamonkey Dependencies</bridgehead>
[88dd2f52]96
97 <bridgehead renderas="sect4">Required</bridgehead>
[a0d389d]98 <para role="required">
[e0ba182]99 <xref linkend="autoconf213"/>,
[bdfd276]100 <xref linkend="cbindgen"/>,
[b5cd03d9]101 <xref linkend="gtk3"/>,
[03adc377]102 <xref linkend="nodejs"/>,
[8558044]103 <xref linkend="unzip"/>,
104 <xref linkend="yasm"/>, and
[01cd3461]105 <xref linkend="zip"/>
[a0d389d]106 </para>
[b5eb704]107
108 <bridgehead renderas="sect4">Recommended</bridgehead>
[a0d389d]109 <para role="recommended">
[566fcae]110 <xref linkend="icu"/>,
111 <xref linkend="libevent"/>,
[57daeab9]112 <!--<xref linkend="libvpx"/>, Causes build failures similar to Firefox -->
[f572dbb]113 <xref linkend="libwebp"/>,
114 <xref linkend="llvm"/> (with clang),
[3bf5de79]115 <xref linkend="nasm"/>,
[8558044]116 <xref linkend="nspr"/>,
[3bf5de79]117 <xref linkend="nss"/>, and
118 <xref linkend="pulseaudio"/>
119 <!-- <xref linkend="sqlite"/> system version no longer supported -->
[82a27795]120 </para>
[3a00b7b8]121<!--
[82a27795]122 <bridgehead renderas="sect4">Optional</bridgehead>
123 <para role="optional">
124 <xref linkend="sqlite"/> (not recommended due to potential
125 security concerns)
[a0d389d]126 </para>
[3a00b7b8]127-->
[316d9591]128 <note>
129 <para>
[566fcae]130 If you don't install recommended dependencies, then internal copies of
131 those packages will be used. They might be tested to work, but they can
132 be out of date or contain security holes.
133 </para>
134 </note>
[0a675f98]135
[88dd2f52]136 <bridgehead renderas="sect4">Optional</bridgehead>
[a0d389d]137 <para role="optional">
[2c13ebe]138 <xref linkend="alsa-lib"/>,
[8a71122]139 <!--<xref linkend="curl"/>,-->
[a0d389d]140 <xref linkend="dbus-glib"/>,
[8a71122]141 <!--<xref linkend="doxygen"/>,-->
[89cdb63d]142 <xref linkend="GConf"/>,
[8a71122]143 <!--<xref linkend="gst10-plugins-base"/> (and other plugins, only for tests),-->
[b47d633]144 <!--<xref linkend="openjdk"/>, Not seen in logs -->
[566fcae]145 <xref linkend="startup-notification"/>,
146 <xref linkend="valgrind"/>,
147 <xref linkend="wget"/>,
[33befb9]148 <xref linkend="wireless_tools"/>,
[17aa21c]149 <ulink url="https://hunspell.sourceforge.net/">Hunspell</ulink>, and
[33befb9]150 <ulink url="https://facebook.github.io/watchman/">Watchman</ulink>
[a0d389d]151 </para>
152
153 <para condition="html" role="usernotes">
[42ddc30]154 Editor Notes: <ulink url="&blfs-wiki;/seamonkey"/>
[a0d389d]155 </para>
[566fcae]156
[88dd2f52]157 </sect2>
158
159 <sect2 role="installation">
[eebff7b]160 <title>Installation of Seamonkey</title>
[6a79dc72]161
[a0d389d]162 <para>
[eebff7b]163 The configuration of <application>Seamonkey</application> is accomplished
[a0d389d]164 by creating a <filename>mozconfig</filename> file containing the desired
165 configuration options. A default <filename>mozconfig</filename> file is
166 created below. To see the entire list of available configuration options
167 (and an abbreviated description of each one), issue
168 <command>./configure --help</command>. You may also wish to review the
169 entire file and uncomment any other desired options. Create the file by
170 issuing the following command:
171 </para>
[7f588e9a]172
[4def8b6]173<screen><?dbfo keep-together="auto"?><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
[0a675f98]174<literal># If you have a multicore machine, all cores will be used
[d59969b]175
[566fcae]176# If you have installed DBus-Glib comment out this line:
[88cec02]177ac_add_options --disable-dbus
[7f588e9a]178
[566fcae]179# If you have installed dbus-glib, and you have installed (or will install)
180# wireless-tools, and you wish to use geolocation web services, comment out
181# this line
[88cec02]182ac_add_options --disable-necko-wifi
[d59969b]183
[566fcae]184# Uncomment these lines if you have installed optional dependencies:
185#ac_add_options --enable-system-hunspell
186#ac_add_options --enable-startup-notification
187
[2c13ebe]188# Uncomment the following option if you have not installed PulseAudio
189#ac_add_options --disable-pulseaudio
190# and uncomment this if you installed alsa-lib instead of PulseAudio
191#ac_add_options --enable-alsa
[89cdb63d]192
193# Comment out following option if you have gconf installed
194ac_add_options --disable-gconf
[3bf5de79]195<!-- comments cause a blank line, following was for icu in the past
196 seems OK with icu-60, seamonkey-2.49
197 line below was with comment and explanation
198# Use the internal version of icu due to execution problems-->
[566fcae]199# Comment out following options if you have not installed
200# recommended dependencies:
[3bf5de79]201ac_add_options --with-system-icu
[566fcae]202ac_add_options --with-system-libevent
203ac_add_options --with-system-nspr
[257c1bf]204ac_add_options --with-system-nss
[3bf5de79]205ac_add_options --with-system-webp
[566fcae]206
[88dd6e72]207# Disabling debug symbols makes the build much smaller and a little
208# faster. Comment this if you need to run a debugger. Note: This is
209# required for compilation on i686.
210ac_add_options --disable-debug-symbols
[29ef9b8f]211<!-- With Firefox ESR 128 we'd replace the following part with "- -enable-elf-hack=relr", or remove it if relr becomes the default. But I've no idea if SeaMonkey will have this change backported. -->
[0c3d3e5]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
[29ef9b8f]214# libxul.so by a few MB. With recent Binutils releases the linker already
215# supports a much safer and generic way for this.
[0c3d3e5]216ac_add_options --disable-elf-hack
[29ef9b8f]217ac_add_options --enable-linker=bfd
218export LDFLAGS="$LDFLAGS -Wl,-z,pack-relative-relocs"
[0c3d3e5]219
[257c1bf]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
[6852cb9]225ac_add_options --enable-dominspector
[257c1bf]226ac_add_options --enable-irc
227
[566fcae]228# The BLFS editors recommend not changing anything below this line:
229ac_add_options --prefix=/usr
[33befb9]230ac_add_options --enable-application=comm/suite
[d59969b]231
[a45062d]232ac_add_options --disable-crashreporter
233ac_add_options --disable-updater
[566fcae]234ac_add_options --disable-tests
235
[29ef9b8f]236# The Rust code for SIMD optimization is much more outdated than
237# Firefox and Thunderbird, so it does not build with recent Rustc.
[3e8c126]238ac_add_options --disable-rust-simd
239
[566fcae]240ac_add_options --enable-strip
241ac_add_options --enable-install-strip
[29ef9b8f]242
243# You cannot distribute the binary if you do this.
[566fcae]244ac_add_options --enable-official-branding
245
[0a675f98]246# The option to use system cairo was removed in 2.53.9.
[a45062d]247ac_add_options --enable-system-ffi
[566fcae]248ac_add_options --enable-system-pixman
249
250ac_add_options --with-system-bz2
[a0ace670]251ac_add_options --with-system-jpeg
252ac_add_options --with-system-png
[eedb6d02]253ac_add_options --with-system-zlib
254
255export CC=clang CXX=clang++</literal>
[2d237fa]256EOF</userinput></screen>
[d59969b]257
[5b0a978e]258 <note>
259 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
260 href="../../xincludes/mozshm.xml"/>
[cf31c27]261 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
262 href="../../xincludes/mozmach.xml"/>
[5b0a978e]263 </note>
[b74c79f]264
[16218efb]265 <para>
[f3250b9]266 First, apply a security patch that fixes some problems with
267 Seamonkey's bundled version of libvpx:
[16218efb]268 </para>
269
[f3250b9]270<screen><userinput>patch -Np1 -i ../seamonkey-&seamonkey-version;-consolidated_fixes-1.patch</userinput></screen>
271
[c5f66519]272<!--
[8a71122]273 <para>
274 Next, work around a problem in the Python virtual environment:
275 </para>
276
[e3b16bb]277<screen><userinput>sed -i "/if sys.executable !=/i\ open(join(bin_dir, 'pyvenv.cfg'), 'w').close()" \
[8a71122]278 third_party/python/virtualenv/virtualenv.py</userinput></screen>
[c5f66519]279-->
[28eef64]280
[2b5deee]281 <para>
[c5f66519]282 Fix a problem with the bundled 'distro' python module:
[2b5deee]283 </para>
284
[c5f66519]285<screen><userinput>sed -e '1012 s/stderr=devnull/stderr=subprocess.DEVNULL/' \
286 -e '1013 s/OSError/(OSError, subprocess.CalledProcessError)/' \
287 -i third_party/python/distro/distro.py</userinput></screen>
[2b5deee]288
[a0d389d]289 <para>
[eebff7b]290 Compile <application>Seamonkey</application> by running the following
[82a27795]291 commands:
[a0d389d]292 </para>
[b0ed6bdf]293
[eedb6d02]294<screen><userinput>./mach configure &amp;&amp;
[0a675f98]295./mach build</userinput></screen>
[82a27795]296
[0a675f98]297
298 <!-- comment this since llvm must have been installed for rust
[909e238]299 <note>
300 <para>
[8558044]301 The CC and CXX variables above are only needed if
[909e238]302 <xref linkend="llvm"/> is installed and you do not want to use clang.
303 </para>
[0a675f98]304 </note>-->
[7f588e9a]305
[a0d389d]306 <para>
[72ac7f2]307 This package does not come with a test suite.
[a0d389d]308 </para>
[87c2868]309
[a0d389d]310 <para>
[eebff7b]311 Install <application>Seamonkey</application> by issuing the following
[a0d389d]312 commands as the <systemitem class="username">root</systemitem> user:
313 </para>
[7f588e9a]314
[3cdb31d]315
[1eb967d9]316<screen role="root"><userinput>./mach install &amp;&amp;
317chown -R 0:0 /usr/lib/seamonkey &amp;&amp;
[2e3b77b]318
319cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1</userinput></screen>
[3551afa]320
[7f588e9a]321 </sect2>
322
323 <sect2 role="commands">
324 <title>Command Explanations</title>
[8a89491]325
[ce960d7]326 <para>
[3e7f3ee]327 <command>export CC=clang CXX=clang++</command>:
[532e5c9]328 With the introduction of <application>gcc-12</application>, many
329 more warnings are generated when compiling mozilla applications
[f572dbb]330 and that results in a much slower, and larger, build. Furthermore,
331 building with GCC on i?86 is currently broken.
[532e5c9]332 Although upstream mozilla code defaults to using
333 <application>llvm</application> unless overridden, the older configure
[eebff7b]334 code in <application>Seamonkey</application> defaults to gcc.
[0a675f98]335 </para>
336
337 <para>
[c5f66519]338 <command>./mach configure</command>: This validates
[8a71122]339 the supplied dependencies and the <filename>mozconfig</filename>.
[c5f66519]340 <!--This is run twice because problems with mach will cause it to fail the
341 first time.-->
[0a675f98]342 </para>
343
344 <para>
345 <option>./mach build --verbose</option>: Use this alternative if you
346 need details of which files are being compiled, together with any C or
347 C++ flags being used. But do not add '--verbose' to the install command,
348 it is not accepted there.
349 </para>
350
351 <para>
352 <option>./mach build -jN</option>: The build should, by default, use
353 all the online CPU cores. If using all the cores causes the build to swap
354 because you have insufficient memory, using fewer cores can be faster.
[a0d389d]355 </para>
356
[88dd2f52]357 </sect2>
358
359 <sect2 role="configuration">
[eebff7b]360 <title>Configuring Seamonkey</title>
[2e3b77b]361
[a0d389d]362 <para>
[eebff7b]363 For installing various <application>Seamonkey</application> add-ons, refer
[8558044]364 to <ulink url="https://addons.thunderbird.net/en-US/seamonkey/">Add-ons
[33befb9]365 for Seamonkey</ulink>.
[a0d389d]366 </para>
367
368 <para>
369 Along with using the <quote>Preferences</quote> menu to configure
[eebff7b]370 <application>Seamonkey</application>'s options and preferences to suit
[a0d389d]371 individual tastes, finer grain control of many options is only available
372 using a tool not available from the general menu system. To access this
373 tool, you'll need to open a browser window and enter
374 <systemitem role="url">about:config</systemitem> in the address bar. This
375 will display a list of the configuration preferences and information
[33befb9]376 related to each one. You can use the <quote>Search:</quote> bar to enter
[a0d389d]377 search criteria and narrow down the listed items. Changing a preference
378 can be done using two methods. One, if the preference has a boolean value
379 (True/False), simply double-click on the preference to toggle the value
380 and two, for other preferences simply right-click on the desired line,
381 choose <quote>Modify</quote> from the menu and change the value. Creating
382 new preference items is accomplished in the same way, except choose
383 <quote>New</quote> from the menu and provide the desired data into the
384 fields when prompted.
385 </para>
[7f588e9a]386
[33befb9]387<!-- The URL no longer exists.
[7f588e9a]388 <tip>
[a0d389d]389 <para>
390 There is a multitude of configuration parameters you can tweak to
391 customize <application>SeaMonkey</application>. A very extensive list of
392 these parameters can be found at
393 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
394 </para>
[7f588e9a]395 </tip>
[33befb9]396-->
[a0d389d]397 <para>
398 If you use a desktop environment like <application>Gnome</application> or
399 <application>KDE</application> you may wish to create a
400 <filename>seamonkey.desktop</filename> file so that
[eebff7b]401 <application>Seamonkey</application> appears in the panel's menus. If you
[a0d389d]402 didn't enable <application>Startup-Notification</application> in your
403 mozconfig change the StartupNotify line to false. As the
404 <systemitem class="username">root</systemitem> user:
405 </para>
[5e2fb70]406
[4520f55]407<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
[fc9245e]408
[f002c3c]409cat &gt; /usr/share/applications/seamonkey.desktop &lt;&lt; "EOF"
[51dfb3e]410<literal>[Desktop Entry]
[5e2fb70]411Encoding=UTF-8
412Type=Application
[eebff7b]413Name=Seamonkey
[5e2fb70]414Comment=The Mozilla Suite
415Icon=seamonkey
416Exec=seamonkey
417Categories=Network;GTK;Application;Email;Browser;WebBrowser;News;
418StartupNotify=true
[51dfb3e]419Terminal=false</literal>
[5e2fb70]420EOF
[fc9245e]421
[5dde2656]422ln -sfv /usr/lib/seamonkey/chrome/icons/default/default128.png \
[7226770c]423 /usr/share/pixmaps/seamonkey.png</userinput></screen>
[88dd2f52]424 </sect2>
425
426 <sect2 role="content">
427 <title>Contents</title>
428
429 <segmentedlist>
[7f588e9a]430 <segtitle>Installed Programs</segtitle>
[88dd2f52]431 <segtitle>Installed Libraries</segtitle>
[c5f005b]432 <segtitle>Installed Directory</segtitle>
[88dd2f52]433
434 <seglistitem>
[88cec02]435 <seg>seamonkey</seg>
[a0d389d]436 <seg>
437 Numerous libraries, browser, and email/newsgroup components, plugins,
[4c24eb0a]438 extensions, and helper modules installed in
[4483a9a]439 <filename class="directory">/usr/lib/seamonkey</filename>
[a0d389d]440 </seg>
[7498751]441 <seg>
[33befb9]442 /usr/lib/seamonkey
[7498751]443 </seg>
[88dd2f52]444 </seglistitem>
445 </segmentedlist>
446
447 <variablelist>
448 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
449 <?dbfo list-presentation="list"?>
450 <?dbhtml list-presentation="table"?>
451
[b5eb704]452 <varlistentry id="seamonkey-prog">
453 <term><command>seamonkey</command></term>
[88dd2f52]454 <listitem>
[a0d389d]455 <para>
[4c24eb0a]456 is the Mozilla browser/email/newsgroup/chat client suite
[a0d389d]457 </para>
[b5eb704]458 <indexterm zone="seamonkey seamonkey-prog">
459 <primary sortas="b-seamonkey">seamonkey</primary>
[88dd2f52]460 </indexterm>
461 </listitem>
462 </varlistentry>
463 </variablelist>
464 </sect2>
[4c24eb0a]465
[f45b1953]466</sect1>
Note: See TracBrowser for help on using the repository browser.