source: xsoft/other/thunderbird.xml@ 881972a5

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 881972a5 was 881972a5, checked in by Bruce Dubbs <bdubbs@…>, 2 years ago

Update to thunderbird-91.8.1.

  • Property mode set to 100644
File size: 15.3 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 thunderbird-download-http "&mozilla-http;/thunderbird/releases/&thunderbird-version;/source/thunderbird-&thunderbird-version;.source.tar.xz">
8 <!ENTITY thunderbird-download-ftp " ">
9 <!ENTITY thunderbird-md5sum "23f6da0d3eb12630a7870536cb2790d7">
10 <!ENTITY thunderbird-size "385 MB">
11 <!ENTITY thunderbird-buildsize "6.9 GB (192 MB installed)">
12 <!ENTITY thunderbird-time "24 SBU (on a 4-core machine)">
13 <!-- Removed the -j1 time because python and rust do not obey it, although
14 the C/C++ code appears to obey it -->
15]>
16
17<sect1 id="thunderbird" xreflabel="Thunderbird-&thunderbird-version;">
18 <?dbhtml filename="thunderbird.html" ?>
19
20 <sect1info>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>Thunderbird-&thunderbird-version;</title>
25
26 <indexterm zone="thunderbird">
27 <primary sortas="a-Thunderbird">Thunderbird</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to Thunderbird</title>
32
33 <para>
34 <application>Thunderbird</application> is a stand-alone mail/news client
35 based on the <application>Mozilla</application> codebase. It uses the
36 Gecko rendering engine to enable it to display and compose HTML emails.
37 </para>
38
39 &lfs111_checked;
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>
45 Download (HTTP): <ulink url="&thunderbird-download-http;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download (FTP): <ulink url="&thunderbird-download-ftp;"/>
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download MD5 sum: &thunderbird-md5sum;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Download size: &thunderbird-size;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated disk space required: &thunderbird-buildsize;
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Estimated build time: &thunderbird-time;
71 </para>
72 </listitem>
73 </itemizedlist>
74
75<!--
76 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
77 <itemizedlist spacing="compact">
78 <listitem>
79 <para>
80 Required patch:
81 <ulink url="&patch-root;/thunderbird-&thunderbird-version;-buildfix-1.patch"/>
82 </para>
83 </listitem>
84 </itemizedlist>
85-->
86
87 <bridgehead renderas="sect3">Thunderbird Dependencies</bridgehead>
88
89 <bridgehead renderas="sect4">Required</bridgehead>
90 <para role="required">
91<!-- <xref linkend="alsa-lib"/>, no mention in log -->
92 <xref linkend="autoconf213"/>,
93 <xref linkend="cbindgen"/>,
94 <xref linkend="dbus-glib"/>,
95 both <xref linkend="gtk3"/>
96 and <xref linkend="gtk2"/>,
97 <xref linkend="llvm"/> including clang, <!-- Searched for and used a few times -->
98 <xref linkend="nodejs"/>,
99 <xref linkend="pulseaudio"/> (or <xref linkend="alsa-lib"/> if you edit
100 the mozconfig; although it is now deprecated by mozilla),
101 <xref linkend="python3"/> (rebuilt with the sqlite module),
102 <xref linkend="startup-notification"/>,
103 <xref linkend="zip"/>,
104 <xref linkend="unzip"/>, and
105 <xref linkend="yasm"/>
106 </para>
107
108 <bridgehead renderas="sect4">Recommended</bridgehead>
109 <para role="recommended">
110 <xref linkend="icu"/>,
111 <xref linkend="libevent"/>,
112<!-- Fails to build with version 1.8.0
113 <xref linkend="libvpx"/>,-->
114 <xref linkend="nasm"/>,
115 <xref linkend="nspr"/>, and
116 <xref linkend="nss"/>
117 </para>
118
119 <note>
120 <para>
121 If you don't install recommended dependencies,
122 then internal copies of those packages will
123 be used. They might be tested to work, but
124 they can be out of date or contain security
125 holes.
126 </para>
127 </note>
128
129 <bridgehead renderas="sect4">Optional</bridgehead>
130 <para role="optional">
131 <!-- <xref linkend="curl"/>, not in build log-->
132 <xref linkend="cyrus-sasl"/>,
133 <xref linkend="doxygen"/>,
134 <xref linkend="GConf"/>,
135 <!--<xref linkend="gst10-plugins-base"/> (with
136 <xref linkend="gst10-plugins-good"/> and
137 <xref linkend="gst10-libav"/> at runtime),-->
138 <!-- <xref linkend="openjdk"/>, not in build log -->
139 <!--<xref linkend="pulseaudio"/>,-->
140 <xref linkend="wget"/>,
141 <xref linkend="wireless_tools"/>, and
142 <ulink url="https://facebook.github.io/watchman/">watchman</ulink>
143 </para>
144
145 <para condition="html" role="usernotes">
146 User Notes: <ulink url="&blfs-wiki;/Thunderbird"/>
147 </para>
148 </sect2>
149
150 <sect2 role="installation">
151 <title>Installation of Thunderbird</title>
152
153 <note>
154 <para>
155 The build process for Thunderbird can use 8GB+ of RAM when linking.
156 Make sure that you have adequate swap or RAM before continuing.
157 </para>
158 </note>
159
160 <para>
161 The configuration of <application>Thunderbird</application> is
162 accomplished by creating a <filename>mozconfig</filename> file containing
163 the desired configuration options. A default
164 <filename>mozconfig</filename> is created below. To see the entire list
165 of available configuration options (and a brief description of each),
166 issue <command>mozilla/configure --help</command>. Create the file with
167 the following command:
168 </para>
169
170<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
171<literal># If you have a multicore machine, all cores will be used.
172
173# If you have installed wireless-tools comment out this line:
174ac_add_options --disable-necko-wifi
175
176# Uncomment the following option if you have not installed PulseAudio
177#ac_add_options --disable-pulseaudio
178# and uncomment this if you installed alsa-lib instead of PulseAudio
179#ac_add_options --enable-alsa
180<!-- always built in versions 78+. The option is a noop
181# If you want to compile the Mozilla Calendar, uncomment this line:
182#ac_add_options - -enable-calendar
183-->
184# Comment out following options if you have not installed
185# recommended dependencies:
186ac_add_options --with-system-libevent
187ac_add_options --with-system-nspr
188ac_add_options --with-system-nss
189ac_add_options --with-system-icu
190
191# The elf-hack causes failed installs on some machines.
192# It is supposed to improve startup time and it shrinks libxul.so
193# by a few MB - comment this if you know your machine is not affected.
194ac_add_options --disable-elf-hack
195
196# The BLFS editors recommend not changing anything below this line:
197ac_add_options --prefix=/usr
198ac_add_options --enable-application=comm/mail
199
200ac_add_options --disable-crashreporter
201ac_add_options --disable-updater
202ac_add_options --disable-debug
203ac_add_options --disable-debug-symbols
204ac_add_options --disable-tests
205
206ac_add_options --enable-optimize=-O2
207ac_add_options --enable-linker=gold
208ac_add_options --enable-strip
209ac_add_options --enable-install-strip
210
211ac_add_options --enable-official-branding
212
213ac_add_options --enable-system-ffi
214ac_add_options --enable-system-pixman
215
216ac_add_options --with-system-jpeg
217ac_add_options --with-system-png
218ac_add_options --with-system-zlib</literal>
219EOF</userinput></screen>
220
221<!-- no longer needed with 91.6
222 <para>
223 Apply a patch which allows compilation on systems with Wayland-1.20:
224 </para>
225
226<screen><userinput remap="pre">patch -p1 -i ../thunderbird-&thunderbird-version;-buildfix-1.patch</userinput></screen>
227-->
228
229<!-- applying this for 11.1: upstream haven't make their mind yet
230 https://bugzilla.mozilla.org/show_bug.cgi?id=1729459 -->
231 <para>
232 If building on a 32 bit machine, the following sed works around
233 an issue with an incompatible <quote>double</quote> type in one
234 header file:
235 </para>
236
237<screen><userinput>case "$(uname -m)" in
238 i?86) sed -e '/typedef[ ]*double/s/double/long double/' \
239 -i modules/fdlibm/src/math_private.h ;;
240esac</userinput></screen>
241
242 <para>
243 Now invoke the Python <command>mach</command> script to compile
244 <application>Thunderbird</application>:
245 </para>
246
247 <note>
248 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
249 href="../../xincludes/mozshm.xml"/>
250
251 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
252 href="../../xincludes/mozmach.xml"/>
253
254 </note>
255
256<screen><userinput>export CC=gcc CXX=g++ &amp;&amp;
257export MACH_USE_SYSTEM_PYTHON=1 &amp;&amp;
258./mach create-mach-environment &amp;&amp;
259./mach configure &amp;&amp;
260./mach build</userinput></screen>
261
262 <para>
263 This package does not come with a test suite.
264 </para>
265
266 <para>
267 Install <application>Thunderbird</application> by running the following
268 commands as the <systemitem class="username">root</systemitem> user:
269 </para>
270
271<screen role="root"><userinput>MACH_USE_SYSTEM_PYTHON=1 ./mach install</userinput></screen>
272<!-- devs: For DESTDIR install, prepend DESTDIR=<dest> to the above -->
273 <para>
274 Empty the environment variables which were set above:
275 </para>
276
277<screen><userinput>unset CC CXX MACH_USE_SYSTEM_PYTHON</userinput></screen>
278
279 </sect2>
280
281 <sect2 role="commands">
282 <title>Command Explanations</title>
283<!-- might be necessary, we need to verify this.
284 <para>
285 <command>test $(uname -m) = "i686" &amp;&amp; sed ...</command>: On this
286 version of thunderbird, an old bug has reappeared in 32-bit builds. With
287 optimization, the install fails with a Python error. This command will
288 fix i686 builds and preserve the optimization on x86_64.
289 </para>-->
290
291 <para>
292 <command>CC=gcc CXX=g++ ./mach configure</command>:
293 <application>Thunderbird</application>
294 now uses this <application>python3</application> script to run the
295 configuration,
296 build and install. Forcing GCC causes the build to come out smaller
297 and run faster.
298 <!-- For more info, see Ticket #13969. ~12GB to ~5GB build size,
299 significantly smaller build time.-->
300 </para>
301
302 <para>
303 <command>MACH_USE_SYSTEM_PYTHON=1</command>: Use the system python
304 to create a virtual environment for <command>mach</command> without
305 downloading any python wheels.
306 </para>
307
308 <para>
309 <option>./mach build --verbose</option>: Use this alternative if you
310 need details of which files are being compiled, together with any C or
311 C++ flags being used.
312 </para>
313
314 </sect2>
315
316 <sect2 role="configuration">
317 <title>Configuring Thunderbird</title>
318
319 <sect3><title>Configuration Information</title>
320
321 <para>
322 If your Window or Desktop Manager does not allow you to configure a
323 default browser, you can add a configuration parameter to
324 <application>Thunderbird</application> so that a browser will start when
325 you click on an Internet/intranet/local URL. The procedure to check
326 or modify any of the configuration parameters is quite simple and the
327 instructions here can be used to view or modify any of the parameters.
328 </para>
329
330 <para>
331 First, open the configuration dialog by opening the <quote>Edit</quote>
332 drop-down menu. Choose <quote>Preferences</quote> and then scroll down
333 to the bottom of the page. Then, click the <quote>Config Editor</quote>
334 button. Click on the <quote>I accept the risk!</quote> button.
335 This will display a list of the configuration preferences and
336 information related to each one. You can use the <quote>Filter:</quote>
337 bar to enter search criteria and narrow down the listed items. Changing
338 a preference can be done using two methods. One, if the preference has a
339 boolean value (True/False), simply double-click on the preference to
340 toggle the value and two, for other preferences simply right-click on
341 the desired line, choose <quote>Modify</quote> from the menu and change
342 the value. Creating new preference items is accomplished in the same
343 way, except choose <quote>New</quote> from the menu and provide the
344 desired data into the fields when prompted.
345 </para>
346
347 <para>
348 The configuration preference item you need to check so that
349 <application>Thunderbird</application> uses a specified browser is the
350 <parameter>network.protocol-handler.app.http</parameter> which should be
351 set to the path of the desired browser, e.g.
352 <option>/usr/bin/firefox</option>.
353 </para>
354
355 <tip>
356 <para>
357 There is a multitude of configuration parameters you can tweak to
358 customize <application>Thunderbird</application>. A very extensive,
359 but not so up-to-date list of these parameters can be found at
360 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
361 </para>
362 </tip>
363
364 <para>
365
366 If you use a desktop environment such as <application>GNOME</application>
367 or <application>KDE</application>, a desktop file
368 <filename>thunderbird.desktop</filename> may be created, in order to
369 include a <quote><application>Thunderbird</application></quote> entry in
370 the menu. <!--If you didn't enable
371 <application>startup-notification</application> in your mozconfig, then
372 change the StartupNotify line to false.--> Run the following commands as the
373 <systemitem class="username">root</systemitem> user:
374
375 </para>
376
377<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
378
379cat &gt; /usr/share/applications/thunderbird.desktop &lt;&lt; "EOF" &amp;&amp;
380<literal>[Desktop Entry]
381Name=Thunderbird Mail
382Comment=Send and receive mail with Thunderbird
383GenericName=Mail Client
384Exec=thunderbird %u
385Terminal=false
386Type=Application
387Icon=thunderbird
388Categories=Network;Email;
389MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
390StartupNotify=true</literal>
391EOF
392
393ln -sfv /usr/lib/thunderbird/chrome/icons/default/default256.png \
394 /usr/share/pixmaps/thunderbird.png</userinput></screen>
395 </sect3>
396 </sect2>
397
398 <sect2 role="content">
399 <title>Contents</title>
400
401 <segmentedlist>
402 <segtitle>Installed Program</segtitle>
403 <segtitle>Installed Libraries</segtitle>
404 <segtitle>Installed Directory</segtitle>
405
406 <seglistitem>
407 <seg>
408 thunderbird
409 </seg>
410 <seg>
411 libldap60.so, libldif60.so, liblgpllibs.so, libmozgtk.so,
412 libmozsandbox.so, libmozsqlite3.so, libmozwayland.so,
413 libprldap60.so, librnp.so, and libxul.so, all in the
414 /usr/lib/thunderbird directory
415 </seg>
416 <seg>
417 /usr/lib/thunderbird
418 </seg>
419 </seglistitem>
420 </segmentedlist>
421
422 <variablelist>
423 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
424 <?dbfo list-presentation="list"?>
425 <?dbhtml list-presentation="table"?>
426
427 <varlistentry id="thunderbird-prog">
428 <term><command>thunderbird</command></term>
429 <listitem>
430 <para>
431 is <application>Mozilla</application>'s email and newsgroup client
432 </para>
433 <indexterm zone="thunderbird thunderbird-prog">
434 <primary sortas="b-thunderbird">thunderbird</primary>
435 </indexterm>
436 </listitem>
437 </varlistentry>
438
439 </variablelist>
440
441 </sect2>
442
443</sect1>
Note: See TracBrowser for help on using the repository browser.