source: xsoft/other/thunderbird.xml@ 4a0417a

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 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 4a0417a was 4a0417a, checked in by Pierre Labastie <pieere@…>, 7 years ago

Fix thunderbird for newer libevent

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

  • Property mode set to 100644
File size: 16.5 KB
RevLine 
[16998db6]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[16998db6]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[cf7d546]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">-->
[74887424]9 <!ENTITY thunderbird-download-ftp " ">
[34484cf]10 <!ENTITY thunderbird-md5sum "ac8bc081c601c96d683b94c79abda114">
[b50c055]11 <!ENTITY thunderbird-size "192 MB">
[34484cf]12 <!ENTITY thunderbird-buildsize "3.6 GB (86 MB installed)">
13 <!ENTITY thunderbird-time "15 SBU (with -j4, estimated 36 SBU with -j1)">
[16998db6]14]>
15
[d1981e0]16<sect1 id="thunderbird" xreflabel="Thunderbird-&thunderbird-version;">
[1c5e617]17 <?dbhtml filename="thunderbird.html" ?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
[55329727]21 <date>$Date$</date>
[1c5e617]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
[d41c02b]33 <para>
34 <application>Thunderbird</application> is a stand-alone mail/news client
[604ba3d8]35 based on the <application>Mozilla</application> codebase. It uses the
36 Gecko rendering engine to enable it to display and compose HTML emails.
[d41c02b]37 </para>
[b9b1a372]38
[6a9a5f2]39 &lfs7a_checked;
[1c5e617]40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
[d41c02b]44 <para>
45 Download (HTTP): <ulink url="&thunderbird-download-http;"/>
46 </para>
[1c5e617]47 </listitem>
48 <listitem>
[d41c02b]49 <para>
50 Download (FTP): <ulink url="&thunderbird-download-ftp;"/>
51 </para>
[1c5e617]52 </listitem>
53 <listitem>
[d41c02b]54 <para>
55 Download MD5 sum: &thunderbird-md5sum;
56 </para>
[1c5e617]57 </listitem>
58 <listitem>
[d41c02b]59 <para>
60 Download size: &thunderbird-size;
61 </para>
[1c5e617]62 </listitem>
63 <listitem>
[d41c02b]64 <para>
65 Estimated disk space required: &thunderbird-buildsize;
66 </para>
[1c5e617]67 </listitem>
68 <listitem>
[d41c02b]69 <para>
70 Estimated build time: &thunderbird-time;
71 </para>
[1c5e617]72 </listitem>
73 </itemizedlist>
[773ef6d]74
[1c5e617]75 <bridgehead renderas="sect3">Thunderbird Dependencies</bridgehead>
76
77 <bridgehead renderas="sect4">Required</bridgehead>
[d41c02b]78 <para role="required">
79 <xref linkend="alsa-lib"/>,
80 <xref linkend="gtk2"/>,
[8b9ad6e]81 <xref linkend="zip"/>,
[a30a874]82 <xref linkend="unzip"/>, and
83 <xref linkend="yasm"/>
[d41c02b]84 </para>
85
[1ddbf11a]86 <bridgehead renderas="sect4">Recommended</bridgehead>
87 <para role="recommended">
88 <xref linkend="libevent"/>,
89 <xref linkend="libvpx"/>,
[8b50732]90 <xref linkend="nspr"/>, and
91 <xref linkend="nss"/><!-- , and
[8b9ad6e]92 <xref linkend="sqlite"/>
[8b50732]93 Do not use system SQLite until TB-48/52 because it uses insecure
94 routines (FTS3) that are not built in BLFS -->
[1ddbf11a]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
[80454f5]107 <note>
108 <para>
[0c3e9be8]109 With <application>Thunderbird-31.0</application> and later versions,
110 you must have installed <application>Openssl</application> before
[80454f5]111 <application>Python 2</application>, or the build system will quickly
112 fail with output including "ImportError: cannot import name
[0c3e9be8]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
[80454f5]117 installing <xref linkend="openssl"/> - the latest version of any
[0c3e9be8]118 <emphasis>currently maintained</emphasis> version of Openssl should be
119 satisfactory if already installed - if that package has not already
[80454f5]120 been installed).
121 </para>
122 </note>
123
[1c5e617]124 <bridgehead renderas="sect4">Optional</bridgehead>
[d41c02b]125 <para role="optional">
[6c64623f]126 <xref linkend="curl"/>,
[23d3543c]127 <xref linkend="cyrus-sasl"/>,
[d41c02b]128 <xref linkend="dbus-glib"/>,
129 <xref linkend="doxygen"/>,
[89cdb63d]130 <xref linkend="GConf"/>,
[6000a3e]131 <xref linkend="gst10-plugins-base"/> (with
132 <xref linkend="gst10-plugins-good"/> and
133 <xref linkend="gst10-libav"/> at runtime),
[6a9a5f2]134 <xref linkend="llvm"/>,
[fdf5481]135 <xref linkend="openjdk"/>,
[4ee8515]136 <xref linkend="pulseaudio"/>,
[82a27795]137 <xref linkend="sqlite"/> (not recommended due to potential
138 security concerns),
[d41c02b]139 <xref linkend="startup-notification"/>,
[66370fc]140 <xref linkend="wget"/>,
141 <xref linkend="wireless_tools"/>, and
142 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>
[d41c02b]143 </para>
144
145 <para condition="html" role="usernotes">
146 User Notes: <ulink url="&blfs-wiki;/Thunderbird"/>
147 </para>
[1c5e617]148 </sect2>
149
150 <sect2 role="installation">
151 <title>Installation of Thunderbird</title>
152
[d41c02b]153 <para>
154 The configuration of <application>Thunderbird</application> is
155 accomplished by creating a <filename>mozconfig</filename> file containing
156 the desired configuration options. A default
[53f790a]157 <filename>mozconfig</filename> is created below. To see the entire list
158 of available configuration options (and a brief description of each),
159 issue <command>mozilla/configure --help</command>. Create the file with
160 the following command:
[d41c02b]161 </para>
[adb388a]162
[0adc5d50]163<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
[da0a3b9]164<literal># If you have a multicore machine, the build may be faster if using parallel
[53f790a]165# jobs. The build system automatically adds -jN to the "make" flags, where N
166# is the number of CPU cores. The option below is therefore useless, unless
167# you want to use a smaller number of jobs:
168#mk_add_options MOZ_MAKE_FLAGS="-j1"
[9671f10]169
[7090d94]170# If you have installed dbus-glib, comment out this line:
[f207d239]171ac_add_options --disable-dbus
172
[1ddbf11a]173# If you have installed wireless-tools comment out this line:
[9671f10]174ac_add_options --disable-necko-wifi
175
[6e73c37]176# GStreamer is necessary for H.264 video playback in HTML5 Video Player;
177# to be enabled, also remember to set "media.gstreamer.enabled" to "true"
[7694f49]178# in about:config. If you have GStreamer 1.x.y, comment out this line and
179# uncomment the following one:
180ac_add_options --disable-gstreamer
[6000a3e]181#ac_add_options --enable-gstreamer=1.0
[6e73c37]182
[1ddbf11a]183# Uncomment these lines if you have installed optional dependencies:
184#ac_add_options --enable-system-hunspell
185#ac_add_options --enable-startup-notification
186
[4ee8515]187# Comment out following option if you have PulseAudio installed
188ac_add_options --disable-pulseaudio
[89cdb63d]189
190# Comment out following option if you have gconf installed
191ac_add_options --disable-gconf
[a30a874]192<!-- Uncommenting does not work
[1ddbf11a]193# If you have not installed Yasm then uncomment this line:
[a30a874]194#ac_add_options - -disable-webm
195-->
[5ef6186]196# If you want to compile the Mozilla Calendar, uncomment this line:
[1ddbf11a]197#ac_add_options --enable-calendar
198
199# Comment out following options if you have not installed
200# recommended dependencies:
[8b50732]201# Do not use system SQLite for Thunderbird 45.x
202#ac_add_options --enable-system-sqlite
[1ddbf11a]203ac_add_options --with-system-libevent
204ac_add_options --with-system-libvpx
205ac_add_options --with-system-nspr
206ac_add_options --with-system-nss
[18310d86]207ac_add_options --with-system-icu
[1ddbf11a]208
[63ab44e]209# Set CFLAGS and CXXFLAGS to prevent segfaults due to agressive
210# optimizations in GCC-6:
211export CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
212export CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
213
[7251b1d]214# The BLFS editors recommend not changing anything below this line:
[1ddbf11a]215ac_add_options --prefix=/usr
[222df76]216ac_add_options --enable-application=mail
[5ef6186]217
[5f5dcc2]218ac_add_options --disable-crashreporter
219ac_add_options --disable-installer
220ac_add_options --disable-updater
[1ddbf11a]221ac_add_options --disable-debug
222ac_add_options --disable-tests
223
224ac_add_options --enable-optimize
225ac_add_options --enable-strip
226ac_add_options --enable-install-strip
227
228ac_add_options --enable-gio
[f207d239]229ac_add_options --enable-official-branding
[1ddbf11a]230ac_add_options --enable-safe-browsing
231ac_add_options --enable-url-classifier
232
[1f84fb4]233# Use internal cairo due to reports of unstable execution with
234# system cairo
235#ac_add_options --enable-system-cairo
[b9b1a372]236ac_add_options --enable-system-ffi
[1ddbf11a]237ac_add_options --enable-system-pixman
238
[5f5dcc2]239ac_add_options --with-pthreads
[1ddbf11a]240
241ac_add_options --with-system-bz2
[a0ace670]242ac_add_options --with-system-jpeg
243ac_add_options --with-system-png
[e67830f1]244ac_add_options --with-system-zlib</literal>
[adb388a]245EOF</userinput></screen>
[e67830f1]246
247<!-- might be necessary
248test $(uname -m) = "i686" && sed -i 's/enable-optimize/disable-optimize/' mozconfig || true &&-->
[773ef6d]249
[d41c02b]250 <para>
251 Compile <application>Thunderbird</application> by issuing the following
252 commands:
253 </para>
[adb388a]254
[4a0417a]255 <para>
256 If you have installed version 2.1.8 or newer of libevent, fix a file:
257 </para>
258
259<screen><userinput>sed -e s/_EVENT_SIZEOF/EVENT__SIZEOF/ \
260 -i mozilla/ipc/chromium/src/base/message_pump_libevent.cc</userinput></screen>
261
[279b5f38]262 <note><para>
263 If you are compiling <application>Thunderbird</application> in chroot,
[63ab44e]264 prepend <envar>SHELL=/bin/sh</envar> to the make command below.
[279b5f38]265 </para></note>
266
[92dd66f]267<screen><userinput>sed -e '/#include/i\
268 print OUT "#define _GLIBCXX_INCLUDE_NEXT_C_HEADERS\\n"\;' \
[5246cff]269 -i mozilla/nsprpub/config/make-system-wrappers.pl &amp;&amp;
[92dd66f]270
271sed -e '/#include/a\
272 print OUT "#undef _GLIBCXX_INCLUDE_NEXT_C_HEADERS\\n"\;' \
[5246cff]273 -i mozilla/nsprpub/config/make-system-wrappers.pl &amp;&amp;
[92dd66f]274
[773ef6d]275make -f client.mk</userinput></screen>
[99a80f7]276
[1ddbf11a]277 <para>
278 This package does not come with a test suite.
279 </para>
[bc6cf88]280
[d41c02b]281 <para>
282 Install <application>Thunderbird</application> by running the following
283 commands as the <systemitem class="username">root</systemitem> user:
284 </para>
[99a80f7]285
[000d5dc]286<screen role="root"><userinput>make -f client.mk install INSTALL_SDK= &amp;&amp;
[3551afa]287chown -R 0:0 /usr/lib/thunderbird-&thunderbird-version;</userinput></screen>
[5246cff]288
[0277210]289<!-- thunderbuild directory does not exist anymore. Leaving as comment,
290in case an editor figures out how to install the development environment.
[de930747]291 <para>
[0ccfdd3a]292 The above instruction just installs the parts you need to run
[de930747]293 <application>Thunderbird</application>. Alternatively, if you want to
294 install the full <application>Thunderbird</application> development
[1ddbf11a]295 environment, run the following command as the
296 <systemitem class="username">root</systemitem> user:
[de930747]297 </para>
298
299<screen role="root"><userinput>make -C thunderbuild install</userinput></screen>
[0277210]300-->
[dfff7ace]301 </sect2>
302
303 <sect2 role="commands">
304 <title>Command Explanations</title>
[4def8b6]305<!-- might be necessary
306 <para>
307 <command>test $(uname -m) = "i686" &amp;&amp; sed ...</command>: On this
308 version of thunderbird, an old bug has reappeared in 32-bit builds. With
309 optimization, the install fails with a Python error. This command will
310 fix i686 builds and preserve the optimization on x86_64.
311 </para>-->
[66370fc]312
[773ef6d]313 <para>
[92dd66f]314 <command>sed ...</command>: These commands correct the source to be
315 compatible with gcc6 by preventing c++ scope errors.
316 </para>
317
318 <para>
319 <command>export CFLAGS= ... export CXXFLAGS= ...</command>: These
320 settings work around code which gcc6 would otherwise regard as
321 out-of-specification and allow it to produce a working program.
[773ef6d]322 </para>
323
[d41c02b]324 <para>
325 <command>make -f client.mk</command>: Mozilla products are packaged to
326 allow the use of a configuration file which can be used to pass the
327 configuration settings to the <command>configure</command> command.
328 <command>make</command> uses the <filename>client.mk</filename> file to
329 get initial configuration and setup parameters.
330 </para>
331
[b0ddfae5]332 </sect2>
333
334 <sect2 role="configuration">
335 <title>Configuring Thunderbird</title>
336
337 <sect3><title>Configuration Information</title>
338
[d41c02b]339 <para>
340 If your Window or Desktop Manager does not allow you to configure a
341 default browser, you can add a configuration parameter to
342 <application>Thunderbird</application> so that a browser will start when
343 when you click on an Internet/intranet/local URL. The procedure to check
344 or modify any of the configuration parameters is quite simple and the
345 instructions here can be used to view or modify any of the parameters.
346 </para>
347
348 <para>
349 First, open the configuration dialog by opening the <quote>Edit</quote>
350 drop-down menu. Choose <quote>Preferences</quote> and then click on the
351 <quote>Advanced</quote> icon on the top menu bar. Choose the
352 <quote>General</quote> tab and click on the <quote>Config Editor</quote>
353 button. This will display a list of the configuration preferences and
354 information related to each one. You can use the <quote>Filter:</quote>
355 bar to enter search criteria and narrow down the listed items. Changing
356 a preference can be done using two methods. One, if the preference has a
357 boolean value (True/False), simply double-click on the preference to
358 toggle the value and two, for other preferences simply right-click on
359 the desired line, choose <quote>Modify</quote> from the menu and change
360 the value. Creating new preference items is accomplished in the same
361 way, except choose <quote>New</quote> from the menu and provide the
362 desired data into the fields when prompted.
363 </para>
364
365 <para>
366 The configuration preference item you need to check so that
367 <application>Thunderbird</application> uses a specified browser is the
368 <parameter>network.protocol-handler.app.http</parameter> which should be
369 set to the path of the desired browser, e.g.
370 <option>/usr/bin/firefox</option>.
371 </para>
[adb388a]372
[604ba3d8]373 <tip>
374 <para>
375 There is a multitude of configuration parameters you can tweak to
376 customize <application>Thunderbird</application>. A very extensive,
377 but not so up-to-date list of these parameters can be found at
378 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
379 </para>
380 </tip>
[ff749e38]381
[d41c02b]382 <para>
[000d5dc]383
384 If you use a desktop environment such as <application>GNOME</application>
385 or <application>KDE</application>, a desktop file
386 <filename>thunderbird.desktop</filename> may be created, in order to
387 include a <quote><application>Thunderbird</application></quote> entry in
388 the menu. If you didn't enable
389 <application>startup-notification</application> in your mozconfig, then
390 change the StartupNotify line to false. Run the following commands as the
391 <systemitem class="username">root</systemitem> user:
392
[d41c02b]393 </para>
[ff749e38]394
[4def8b6]395<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
[0e37869]396
[c099902d]397cat &gt; /usr/share/applications/thunderbird.desktop &lt;&lt; "EOF" &amp;&amp;
[fcd66369]398<literal>[Desktop Entry]
[ff749e38]399Encoding=UTF-8
[1ddbf11a]400Name=Thunderbird Mail
401Comment=Send and receive mail with Thunderbird
402GenericName=Mail Client
403Exec=thunderbird %u
404Terminal=false
[ff749e38]405Type=Application
406Icon=thunderbird
[1ddbf11a]407Categories=Application;Network;Email;
408MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
[fcd66369]409StartupNotify=true</literal>
[ff749e38]410EOF
[0e37869]411
[eb5f847a]412ln -sfv /usr/lib/thunderbird-&thunderbird-version;/chrome/icons/default/default256.png \
[1ddbf11a]413 /usr/share/pixmaps/thunderbird.png</userinput></screen>
[b0ddfae5]414 </sect3>
[1c5e617]415 </sect2>
416
417 <sect2 role="content">
418 <title>Contents</title>
419
420 <segmentedlist>
[c3c56b2]421 <segtitle>Installed Program</segtitle>
422 <segtitle>Installed Libraries</segtitle>
423 <segtitle>Installed Directory</segtitle>
[1c5e617]424
425 <seglistitem>
[d41c02b]426 <seg>
[1ddbf11a]427 thunderbird
428 </seg>
[c3c56b2]429 <seg>
430 None
431 </seg>
[1ddbf11a]432 <seg>
433 /usr/lib/thunderbird-&thunderbird-version;
[1c5e617]434 </seg>
435 </seglistitem>
436 </segmentedlist>
437
438 <variablelist>
439 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
440 <?dbfo list-presentation="list"?>
441 <?dbhtml list-presentation="table"?>
442
443 <varlistentry id="thunderbird-prog">
444 <term><command>thunderbird</command></term>
445 <listitem>
[d41c02b]446 <para>
[de930747]447 is <application>Mozilla</application>'s email and newsgroup client.
[d41c02b]448 </para>
[1c5e617]449 <indexterm zone="thunderbird thunderbird-prog">
450 <primary sortas="b-thunderbird">thunderbird</primary>
451 </indexterm>
452 </listitem>
453 </varlistentry>
[1ddbf11a]454
[1c5e617]455 </variablelist>
[1ddbf11a]456
[1c5e617]457 </sect2>
[1ddbf11a]458
[167dc1dc]459</sect1>
Note: See TracBrowser for help on using the repository browser.