source: xsoft/other/thunderbird.xml@ bf07273

10.1 11.0 11.1 11.2 lazarus qt5new trunk upgradedb xry111/intltool xry111/soup3 xry111/test-20220226
Last change on this file since bf07273 was bf07273, checked in by Ken Moffat <ken@…>, 19 months ago

Clean up my previous commit.

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

  • Property mode set to 100644
File size: 14.6 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 "67ad58f6e1654d999fdc939bdaaa7b3e">
10 <!ENTITY thunderbird-size "337 MB">
11 <!ENTITY thunderbird-buildsize "5.3 GB (183 MB installed)">
12 <!ENTITY thunderbird-time "29 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 installs on some machines.
198# It is supposed to improve startup time and it shrinks libxul.so
199# by a few MB - comment this if you know your machine is not affected.
200ac_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>export CC=gcc CXX=g++ &amp;&amp;
250./mach configure &amp;&amp;
251./mach build</userinput></screen>
252
253 <para>
254 This package does not come with a test suite.
255 </para>
256
257 <para>
258 Install <application>Thunderbird</application> by running the following
259 commands as the <systemitem class="username">root</systemitem> user:
260 </para>
261
262<screen role="root"><userinput>./mach install</userinput></screen>
263
264 </sect2>
265
266 <sect2 role="commands">
267 <title>Command Explanations</title>
268<!-- might be necessary, we need to verify this.
269 <para>
270 <command>test $(uname -m) = "i686" &amp;&amp; sed ...</command>: On this
271 version of thunderbird, an old bug has reappeared in 32-bit builds. With
272 optimization, the install fails with a Python error. This command will
273 fix i686 builds and preserve the optimization on x86_64.
274 </para>-->
275
276 <para>
277 <command>CC=gcc CXX=g++ ./mach configure</command>:
278 <application>Thunderbird</application>
279 now uses this <application>python3</application> script to run the
280 configuration,
281 build and install. Forcing GCC causes the build to come out smaller
282 and run faster.
283 <!-- For more info, see Ticket #13969. ~12GB to ~5GB build size,
284 significantly smaller build time.-->
285 </para>
286
287 <para>
288 <option>./mach build --verbose</option>: Use this alternative if you
289 need details of which files are being compiled, together with any C or
290 C++ flags being used.
291 </para>
292
293 </sect2>
294
295 <sect2 role="configuration">
296 <title>Configuring Thunderbird</title>
297
298 <sect3><title>Configuration Information</title>
299
300 <para>
301 If your Window or Desktop Manager does not allow you to configure a
302 default browser, you can add a configuration parameter to
303 <application>Thunderbird</application> so that a browser will start when
304 you click on an Internet/intranet/local URL. The procedure to check
305 or modify any of the configuration parameters is quite simple and the
306 instructions here can be used to view or modify any of the parameters.
307 </para>
308
309 <para>
310 First, open the configuration dialog by opening the <quote>Edit</quote>
311 drop-down menu. Choose <quote>Preferences</quote> and then scroll down
312 to the bottom of the page. Then, click the <quote>Config Editor</quote>
313 button. Click on the <quote>I accept the risk!</quote> button.
314 This will display a list of the configuration preferences and
315 information related to each one. You can use the <quote>Filter:</quote>
316 bar to enter search criteria and narrow down the listed items. Changing
317 a preference can be done using two methods. One, if the preference has a
318 boolean value (True/False), simply double-click on the preference to
319 toggle the value and two, for other preferences simply right-click on
320 the desired line, choose <quote>Modify</quote> from the menu and change
321 the value. Creating new preference items is accomplished in the same
322 way, except choose <quote>New</quote> from the menu and provide the
323 desired data into the fields when prompted.
324 </para>
325
326 <para>
327 The configuration preference item you need to check so that
328 <application>Thunderbird</application> uses a specified browser is the
329 <parameter>network.protocol-handler.app.http</parameter> which should be
330 set to the path of the desired browser, e.g.
331 <option>/usr/bin/firefox</option>.
332 </para>
333
334 <tip>
335 <para>
336 There is a multitude of configuration parameters you can tweak to
337 customize <application>Thunderbird</application>. A very extensive,
338 but not so up-to-date list of these parameters can be found at
339 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
340 </para>
341 </tip>
342
343 <para>
344
345 If you use a desktop environment such as <application>GNOME</application>
346 or <application>KDE</application>, a desktop file
347 <filename>thunderbird.desktop</filename> may be created, in order to
348 include a <quote><application>Thunderbird</application></quote> entry in
349 the menu. <!--If you didn't enable
350 <application>startup-notification</application> in your mozconfig, then
351 change the StartupNotify line to false.--> Run the following commands as the
352 <systemitem class="username">root</systemitem> user:
353
354 </para>
355
356<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
357
358cat &gt; /usr/share/applications/thunderbird.desktop &lt;&lt; "EOF" &amp;&amp;
359<literal>[Desktop Entry]
360Name=Thunderbird Mail
361Comment=Send and receive mail with Thunderbird
362GenericName=Mail Client
363Exec=thunderbird %u
364Terminal=false
365Type=Application
366Icon=thunderbird
367Categories=Network;Email;
368MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
369StartupNotify=true</literal>
370EOF
371
372ln -sfv /usr/lib/thunderbird/chrome/icons/default/default256.png \
373 /usr/share/pixmaps/thunderbird.png</userinput></screen>
374 </sect3>
375 </sect2>
376
377 <sect2 role="content">
378 <title>Contents</title>
379
380 <segmentedlist>
381 <segtitle>Installed Program</segtitle>
382 <segtitle>Installed Libraries</segtitle>
383 <segtitle>Installed Directory</segtitle>
384
385 <seglistitem>
386 <seg>
387 thunderbird
388 </seg>
389 <seg>
390 libldap60.so, libldif60.so, liblgpllibs.so, libmozgtk.so,
391 libmozsandbox.so, libmozsqlite3.so, libmozwayland.so,
392 libprldap60.so, librnp.so, and libxul.so, all in the
393 /usr/lib/thunderbird directory
394 </seg>
395 <seg>
396 /usr/lib/thunderbird
397 </seg>
398 </seglistitem>
399 </segmentedlist>
400
401 <variablelist>
402 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
403 <?dbfo list-presentation="list"?>
404 <?dbhtml list-presentation="table"?>
405
406 <varlistentry id="thunderbird-prog">
407 <term><command>thunderbird</command></term>
408 <listitem>
409 <para>
410 is <application>Mozilla</application>'s email and newsgroup client
411 </para>
412 <indexterm zone="thunderbird thunderbird-prog">
413 <primary sortas="b-thunderbird">thunderbird</primary>
414 </indexterm>
415 </listitem>
416 </varlistentry>
417
418 </variablelist>
419
420 </sect2>
421
422</sect1>
Note: See TracBrowser for help on using the repository browser.