source: xsoft/other/thunderbird.xml@ 8b50732

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 12.2 7.10 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/for-12.3 xry111/intltool xry111/llvm18 xry111/soup3 xry111/spidermonkey128 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 8b50732 was 8b50732, checked in by DJ Lucas <dj@…>, 8 years ago

Fix Thunderbird build with GCC again, remove FTS3_TOKENIZER define from SQLite, and build Thunderbird with internal SQLite.

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

  • Property mode set to 100644
File size: 16.2 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 "&mozilla-ftp;/thunderbird/releases/&thunderbird-version;/source/thunderbird-&thunderbird-version;.source.tar.xz">-->
9 <!ENTITY thunderbird-download-ftp " ">
10 <!ENTITY thunderbird-md5sum "19e1a8eb1aa99927c35ea2fcfbd7f255">
11 <!ENTITY thunderbird-size "192 MB">
12 <!ENTITY thunderbird-buildsize "3.8 GB (73 MB installed)">
13 <!ENTITY thunderbird-time "9.3 SBU (with -j4, estimated 30 SBU with -j1)">
14]>
15
16<sect1 id="thunderbird" xreflabel="Thunderbird-&thunderbird-version;">
17 <?dbhtml filename="thunderbird.html" ?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
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 &lfs79_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 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Required patch, if building with gcc-6:
80 <ulink url="&patch-root;/thunderbird-&thunderbird-version;-gcc6-2.patch"/>
81 </para>
82 </listitem>
83 </itemizedlist>
84
85 <bridgehead renderas="sect3">Thunderbird Dependencies</bridgehead>
86
87 <bridgehead renderas="sect4">Required</bridgehead>
88 <para role="required">
89 <xref linkend="alsa-lib"/>,
90 <xref linkend="gtk2"/>,
91 <xref linkend="zip"/>,
92 <xref linkend="unzip"/>, and
93 <xref linkend="yasm"/>
94 </para>
95
96 <bridgehead renderas="sect4">Recommended</bridgehead>
97 <para role="recommended">
98 <xref linkend="libevent"/>,
99 <xref linkend="libvpx"/>,
100 <xref linkend="nspr"/>, and
101 <xref linkend="nss"/><!-- , and
102 <xref linkend="sqlite"/>
103 Do not use system SQLite until TB-48/52 because it uses insecure
104 routines (FTS3) that are not built in BLFS -->
105 </para>
106
107 <note>
108 <para>
109 If you don't install recommended dependencies,
110 then internal copies of those packages will
111 be used. They might be tested to work, but
112 they can be out of date or contain security
113 holes.
114 </para>
115 </note>
116
117 <note>
118 <para>
119 With <application>Thunderbird-31.0</application> and later versions,
120 you must have installed <application>Openssl</application> before
121 <application>Python 2</application>, or the build system will quickly
122 fail with output including "ImportError: cannot import name
123 HTTPSHandler". If you are in any doubt about this (e.g. upgrading from
124 an older version of Thunderbird), check if
125 <filename>/usr/lib/python&python2-majorver;/lib-dynload/_ssl.so</filename>
126 exists. If it does not, reinstall <xref linkend="python2"/> (after
127 installing <xref linkend="openssl"/> - the latest version of any
128 <emphasis>currently maintained</emphasis> version of Openssl should be
129 satisfactory if already installed - if that package has not already
130 been installed).
131 </para>
132 </note>
133
134 <bridgehead renderas="sect4">Optional</bridgehead>
135 <para role="optional">
136 <xref linkend="curl"/>,
137 <xref linkend="cyrus-sasl"/>,
138 <xref linkend="dbus-glib"/>,
139 <xref linkend="doxygen"/>,
140 <xref linkend="GConf"/>,
141 <xref linkend="gst10-plugins-base"/> (with
142 <xref linkend="gst10-plugins-good"/> and
143 <xref linkend="gst10-libav"/> at runtime),
144 <xref linkend="openjdk"/>,
145 <xref linkend="pulseaudio"/>,
146 <xref linkend="sqlite"/> (not recommended),
147 <xref linkend="startup-notification"/>,
148 <xref linkend="wget"/>,
149 <xref linkend="wireless_tools"/>, and
150 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>
151 </para>
152
153 <para condition="html" role="usernotes">
154 User Notes: <ulink url="&blfs-wiki;/Thunderbird"/>
155 </para>
156 </sect2>
157
158 <sect2 role="installation">
159 <title>Installation of Thunderbird</title>
160
161 <para>
162 The configuration of <application>Thunderbird</application> is
163 accomplished by creating a <filename>mozconfig</filename> file containing
164 the desired configuration options. A default
165 <filename>mozconfig</filename> is created below. To see the entire list
166 of available configuration options (and a brief description of each),
167 issue <command>mozilla/configure --help</command>. Create the file with
168 the following command:
169 </para>
170
171<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
172<literal># If you have a multicore machine, the build may be faster if using parallel
173# jobs. The build system automatically adds -jN to the "make" flags, where N
174# is the number of CPU cores. The option below is therefore useless, unless
175# you want to use a smaller number of jobs:
176#mk_add_options MOZ_MAKE_FLAGS="-j1"
177
178# If you have installed DBus-Glib comment out this line:
179ac_add_options --disable-dbus
180
181# If you have installed wireless-tools comment out this line:
182ac_add_options --disable-necko-wifi
183
184# GStreamer is necessary for H.264 video playback in HTML5 Video Player;
185# to be enabled, also remember to set "media.gstreamer.enabled" to "true"
186# in about:config. If you have GStreamer 1.x.y, comment out this line and
187# uncomment the following one:
188ac_add_options --disable-gstreamer
189#ac_add_options --enable-gstreamer=1.0
190
191# Uncomment these lines if you have installed optional dependencies:
192#ac_add_options --enable-system-hunspell
193#ac_add_options --enable-startup-notification
194
195# Comment out following option if you have PulseAudio installed
196ac_add_options --disable-pulseaudio
197
198# Comment out following option if you have gconf installed
199ac_add_options --disable-gconf
200<!-- Uncommenting does not work
201# If you have not installed Yasm then uncomment this line:
202#ac_add_options - -disable-webm
203-->
204# If you want to compile the Mozilla Calendar, uncomment this line:
205#ac_add_options --enable-calendar
206
207# Comment out following options if you have not installed
208# recommended dependencies:
209# Do not use system SQLite for Thunderbird 45.x
210#ac_add_options --enable-system-sqlite
211ac_add_options --with-system-libevent
212ac_add_options --with-system-libvpx
213ac_add_options --with-system-nspr
214ac_add_options --with-system-nss
215ac_add_options --with-system-icu
216
217# The BLFS editors recommend not changing anything below this line:
218ac_add_options --prefix=/usr
219ac_add_options --enable-application=mail
220
221ac_add_options --disable-crashreporter
222ac_add_options --disable-installer
223ac_add_options --disable-updater
224ac_add_options --disable-debug
225ac_add_options --disable-tests
226
227ac_add_options --enable-optimize
228ac_add_options --enable-strip
229ac_add_options --enable-install-strip
230
231ac_add_options --enable-gio
232ac_add_options --enable-official-branding
233ac_add_options --enable-safe-browsing
234ac_add_options --enable-url-classifier
235
236# Use internal cairo due to reports of unstable execution with
237# system cairo
238#ac_add_options --enable-system-cairo
239ac_add_options --enable-system-ffi
240ac_add_options --enable-system-pixman
241
242ac_add_options --with-pthreads
243
244ac_add_options --with-system-bz2
245ac_add_options --with-system-jpeg
246ac_add_options --with-system-png
247ac_add_options --with-system-zlib</literal>
248EOF</userinput></screen>
249
250<!-- might be necessary
251test $(uname -m) = "i686" && sed -i 's/enable-optimize/disable-optimize/' mozconfig || true &&-->
252 <para>Fix some issues with GCC-6.1:</para>
253
254<screen><userinput>patch -Np1 -i ../thunderbird-&thunderbird-version;-gcc6-2.patch</userinput></screen>
255
256 <para>
257 Compile <application>Thunderbird</application> by issuing the following
258 commands:
259 </para>
260
261 <note><para>
262 If you are compiling <application>Thunderbird</application> in chroot,
263 prepend <envar>SHELL=/bin/sh</envar> to the <!--first -->make command below.
264 </para></note>
265
266<screen><userinput>CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
267CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
268export CFLAGS CXXFLAGS
269make -f client.mk</userinput></screen>
270
271 <para>
272 This package does not come with a test suite.
273 </para>
274
275 <para>
276 Install <application>Thunderbird</application> by running the following
277 commands as the <systemitem class="username">root</systemitem> user:
278 </para>
279
280<screen role="root"><userinput>make -f client.mk install INSTALL_SDK= &amp;&amp;
281chown -R 0:0 /usr/lib/thunderbird-&thunderbird-version;</userinput></screen>
282
283<!-- thunderbuild directory does not exist anymore. Leaving as comment,
284in case an editor figures out how to install the development environment.
285 <para>
286 The above instruction just installs the parts you need to run
287 <application>Thunderbird</application>. Alternatively, if you want to
288 install the full <application>Thunderbird</application> development
289 environment, run the following command as the
290 <systemitem class="username">root</systemitem> user:
291 </para>
292
293<screen role="root"><userinput>make -C thunderbuild install</userinput></screen>
294-->
295 </sect2>
296
297 <sect2 role="commands">
298 <title>Command Explanations</title>
299<!-- might be necessary
300 <para>
301 <command>test $(uname -m) = "i686" &amp;&amp; sed ...</command>: On this
302 version of thunderbird, an old bug has reappeared in 32-bit builds. With
303 optimization, the install fails with a Python error. This command will
304 fix i686 builds and preserve the optimization on x86_64.
305 </para>-->
306
307 <para>
308 <command>CFLAGS= ... CXXFLAGS= ...</command>: These settings work around
309 code which gcc6 would otherwise regard as out-of-specification and allow
310 it to produce a working program.
311 </para>
312
313 <para>
314 <command>make -f client.mk</command>: Mozilla products are packaged to
315 allow the use of a configuration file which can be used to pass the
316 configuration settings to the <command>configure</command> command.
317 <command>make</command> uses the <filename>client.mk</filename> file to
318 get initial configuration and setup parameters.
319 </para>
320
321 </sect2>
322
323 <sect2 role="configuration">
324 <title>Configuring Thunderbird</title>
325
326 <sect3><title>Configuration Information</title>
327
328 <para>
329 If your Window or Desktop Manager does not allow you to configure a
330 default browser, you can add a configuration parameter to
331 <application>Thunderbird</application> so that a browser will start when
332 when you click on an Internet/intranet/local URL. The procedure to check
333 or modify any of the configuration parameters is quite simple and the
334 instructions here can be used to view or modify any of the parameters.
335 </para>
336
337 <para>
338 First, open the configuration dialog by opening the <quote>Edit</quote>
339 drop-down menu. Choose <quote>Preferences</quote> and then click on the
340 <quote>Advanced</quote> icon on the top menu bar. Choose the
341 <quote>General</quote> tab and click on the <quote>Config Editor</quote>
342 button. This will display a list of the configuration preferences and
343 information related to each one. You can use the <quote>Filter:</quote>
344 bar to enter search criteria and narrow down the listed items. Changing
345 a preference can be done using two methods. One, if the preference has a
346 boolean value (True/False), simply double-click on the preference to
347 toggle the value and two, for other preferences simply right-click on
348 the desired line, choose <quote>Modify</quote> from the menu and change
349 the value. Creating new preference items is accomplished in the same
350 way, except choose <quote>New</quote> from the menu and provide the
351 desired data into the fields when prompted.
352 </para>
353
354 <para>
355 The configuration preference item you need to check so that
356 <application>Thunderbird</application> uses a specified browser is the
357 <parameter>network.protocol-handler.app.http</parameter> which should be
358 set to the path of the desired browser, e.g.
359 <option>/usr/bin/firefox</option>.
360 </para>
361
362 <tip>
363 <para>
364 There is a multitude of configuration parameters you can tweak to
365 customize <application>Thunderbird</application>. A very extensive,
366 but not so up-to-date list of these parameters can be found at
367 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
368 </para>
369 </tip>
370
371 <para>
372
373 If you use a desktop environment such as <application>GNOME</application>
374 or <application>KDE</application>, a desktop file
375 <filename>thunderbird.desktop</filename> may be created, in order to
376 include a <quote><application>Thunderbird</application></quote> entry in
377 the menu. If you didn't enable
378 <application>startup-notification</application> in your mozconfig, then
379 change the StartupNotify line to false. Run the following commands as the
380 <systemitem class="username">root</systemitem> user:
381
382 </para>
383
384<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
385
386cat &gt; /usr/share/applications/thunderbird.desktop &lt;&lt; "EOF" &amp;&amp;
387<literal>[Desktop Entry]
388Encoding=UTF-8
389Name=Thunderbird Mail
390Comment=Send and receive mail with Thunderbird
391GenericName=Mail Client
392Exec=thunderbird %u
393Terminal=false
394Type=Application
395Icon=thunderbird
396Categories=Application;Network;Email;
397MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
398StartupNotify=true</literal>
399EOF
400
401ln -sfv /usr/lib/thunderbird-&thunderbird-version;/chrome/icons/default/default256.png \
402 /usr/share/pixmaps/thunderbird.png</userinput></screen>
403 </sect3>
404 </sect2>
405
406 <sect2 role="content">
407 <title>Contents</title>
408
409 <segmentedlist>
410 <segtitle>Installed Program</segtitle>
411 <segtitle>Installed Libraries</segtitle>
412 <segtitle>Installed Directory</segtitle>
413
414 <seglistitem>
415 <seg>
416 thunderbird
417 </seg>
418 <seg>
419 None
420 </seg>
421 <seg>
422 /usr/lib/thunderbird-&thunderbird-version;
423 </seg>
424 </seglistitem>
425 </segmentedlist>
426
427 <variablelist>
428 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
429 <?dbfo list-presentation="list"?>
430 <?dbhtml list-presentation="table"?>
431
432 <varlistentry id="thunderbird-prog">
433 <term><command>thunderbird</command></term>
434 <listitem>
435 <para>
436 is <application>Mozilla</application>'s email and newsgroup client.
437 </para>
438 <indexterm zone="thunderbird thunderbird-prog">
439 <primary sortas="b-thunderbird">thunderbird</primary>
440 </indexterm>
441 </listitem>
442 </varlistentry>
443
444 </variablelist>
445
446 </sect2>
447
448</sect1>
Note: See TracBrowser for help on using the repository browser.