source: xsoft/other/thunderbird.xml@ c513d6e6

10.1 11.0 ken/refactor-virt lazarus qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since c513d6e6 was c513d6e6, checked in by Douglas R. Reno <renodr@…>, 9 months ago

Update to sudo-1.9.5p1 (Security Update)
Update to thunderbird-78.6.1 (Security Update)
Update to libblockdev-2.25
Update to gnupg-2.2.27
Update to ed-1.17
Update to libdrm-2.4.104

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@24109 af4574ff-66df-0310-9fd7-8a98e5e911e0

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