source: xsoft/other/thunderbird.xml@ 5246cff

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 5246cff was 5246cff, checked in by DJ Lucas <dj@…>, 8 years ago

Minor cleanups

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