source: xsoft/other/thunderbird.xml@ 82a27795

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind 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/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 82a27795 was 82a27795, checked in by DJ Lucas <dj@…>, 8 years ago

Fix SeaMonkey build with GCC-6.1 and use internal SQLite.

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

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