source: xsoft/other/thunderbird.xml@ 90c4de61

10.1 11.0 11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt 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 90c4de61 was 90c4de61, checked in by Douglas R. Reno <renodr@…>, 4 years ago

Update to Thunderbird-78.2.2, and adjust the build procedure.

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

  • Property mode set to 100644
File size: 14.8 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">
[8dfc5c3]8 <!ENTITY thunderbird-download-ftp " ">
[90c4de61]9 <!ENTITY thunderbird-md5sum "d749a52de7b6828eaab74af7ef8834de">
10 <!ENTITY thunderbird-size "337 MB">
11 <!ENTITY thunderbird-buildsize "5.2 GB (177 MB installed)">
12 <!ENTITY thunderbird-time "32 SBU (on a 4-core machine)">
[ec2353a]13 <!-- Removed the -j1 time because python and rust do not obey it, although
14 the C/C++ code appears to obey it -->
[16998db6]15]>
16
[d1981e0]17<sect1 id="thunderbird" xreflabel="Thunderbird-&thunderbird-version;">
[1c5e617]18 <?dbhtml filename="thunderbird.html" ?>
19
20 <sect1info>
21 <othername>$LastChangedBy$</othername>
[55329727]22 <date>$Date$</date>
[1c5e617]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
[d41c02b]34 <para>
35 <application>Thunderbird</application> is a stand-alone mail/news client
[604ba3d8]36 based on the <application>Mozilla</application> codebase. It uses the
37 Gecko rendering engine to enable it to display and compose HTML emails.
[d41c02b]38 </para>
[b9b1a372]39
[7e7e322]40 &lfs10_checked;
[1c5e617]41
42 <bridgehead renderas="sect3">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
[d41c02b]45 <para>
46 Download (HTTP): <ulink url="&thunderbird-download-http;"/>
47 </para>
[1c5e617]48 </listitem>
49 <listitem>
[d41c02b]50 <para>
51 Download (FTP): <ulink url="&thunderbird-download-ftp;"/>
52 </para>
[1c5e617]53 </listitem>
54 <listitem>
[d41c02b]55 <para>
56 Download MD5 sum: &thunderbird-md5sum;
57 </para>
[1c5e617]58 </listitem>
59 <listitem>
[d41c02b]60 <para>
61 Download size: &thunderbird-size;
62 </para>
[1c5e617]63 </listitem>
64 <listitem>
[d41c02b]65 <para>
66 Estimated disk space required: &thunderbird-buildsize;
67 </para>
[1c5e617]68 </listitem>
69 <listitem>
[d41c02b]70 <para>
71 Estimated build time: &thunderbird-time;
72 </para>
[1c5e617]73 </listitem>
74 </itemizedlist>
[773ef6d]75
[90c4de61]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;-upstream_fixes-1.patch"/>
82 </para>
83 </listitem>
84 </itemizedlist>
85
[1c5e617]86 <bridgehead renderas="sect3">Thunderbird Dependencies</bridgehead>
87
88 <bridgehead renderas="sect4">Required</bridgehead>
[d41c02b]89 <para role="required">
[30339015]90<!-- <xref linkend="alsa-lib"/>, no mention in log -->
[1c984ec]91 <xref linkend="autoconf213"/>,
[6b4fe743]92 <xref linkend="cbindgen"/>,
[6be5958a]93 <xref linkend="dbus-glib"/>,
[dbff18b]94 both <xref linkend="gtk3"/>
95 and <xref linkend="gtk2"/>,
[443f05a]96 <xref linkend="llvm"/> including clang, <!-- Searched for and used a few times -->
[6b4fe743]97 <xref linkend="nodejs"/>,
[d24c31e8]98 <xref linkend="pulseaudio"/> (or <xref linkend="alsa-lib"/> if you edit
99 the mozconfig; although it is now deprecated by mozilla),
[3927e328]100 <xref linkend="python3"/> (rebuilt with the sqlite module),
101 <xref linkend="startup-notification"/>,
[693f28e1]102 <!-- When thunderbird moves to 78.0 it will want python3 built against
103 sqlite3, as firefox already does. Please add here and update the
104 'required if building firefox' in (BLFS) python3. -->
105 <!-- rust is required by cbindgen
106 <xref linkend="rust"/>, -->
[8b9ad6e]107 <xref linkend="zip"/>,
[a30a874]108 <xref linkend="unzip"/>, and
109 <xref linkend="yasm"/>
[d41c02b]110 </para>
111
[1ddbf11a]112 <bridgehead renderas="sect4">Recommended</bridgehead>
113 <para role="recommended">
[30339015]114 <xref linkend="icu"/>,
[1ddbf11a]115 <xref linkend="libevent"/>,
[2cc3607]116<!-- Fails to build with version 1.8.0
117 <xref linkend="libvpx"/>,-->
[3927e328]118 <xref linkend="nspr"/>, and
119 <xref linkend="nss"/>
[1ddbf11a]120 </para>
121
122 <note>
123 <para>
124 If you don't install recommended dependencies,
125 then internal copies of those packages will
126 be used. They might be tested to work, but
127 they can be out of date or contain security
128 holes.
129 </para>
130 </note>
[e3f35536]131
[1c5e617]132 <bridgehead renderas="sect4">Optional</bridgehead>
[d41c02b]133 <para role="optional">
[989c203]134 <!-- <xref linkend="curl"/>, not in build log-->
[23d3543c]135 <xref linkend="cyrus-sasl"/>,
[d41c02b]136 <xref linkend="doxygen"/>,
[89cdb63d]137 <xref linkend="GConf"/>,
[989c203]138 <!--<xref linkend="gst10-plugins-base"/> (with
[6000a3e]139 <xref linkend="gst10-plugins-good"/> and
[989c203]140 <xref linkend="gst10-libav"/> at runtime),-->
141 <!-- <xref linkend="openjdk"/>, not in build log -->
[d24c31e8]142 <!--<xref linkend="pulseaudio"/>,-->
[2b1fa01]143 <xref linkend="wget"/>, and
144 <xref linkend="wireless_tools"/>
[d41c02b]145 </para>
146
147 <para condition="html" role="usernotes">
148 User Notes: <ulink url="&blfs-wiki;/Thunderbird"/>
149 </para>
[1c5e617]150 </sect2>
151
152 <sect2 role="installation">
153 <title>Installation of Thunderbird</title>
154
[1916905]155 <note>
156 <para>
157 The build process for Thunderbird can use 8GB+ of RAM when linking.
158 Make sure that you have adequate swap or RAM before continuing.
159 </para>
160 </note>
161
[d41c02b]162 <para>
163 The configuration of <application>Thunderbird</application> is
164 accomplished by creating a <filename>mozconfig</filename> file containing
165 the desired configuration options. A default
[53f790a]166 <filename>mozconfig</filename> is created below. To see the entire list
167 of available configuration options (and a brief description of each),
168 issue <command>mozilla/configure --help</command>. Create the file with
169 the following command:
[d41c02b]170 </para>
[adb388a]171
[0adc5d50]172<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
[ec2353a]173<literal># If you have a multicore machine, all cores will be used.
[9671f10]174
[1ddbf11a]175# If you have installed wireless-tools comment out this line:
[9671f10]176ac_add_options --disable-necko-wifi
177
[d24c31e8]178# Uncomment the following option if you have not installed PulseAudio
179#ac_add_options --disable-pulseaudio
180# and uncomment this if you installed alsa-lib instead of PulseAudio
181#ac_add_options --enable-alsa
[3cec271]182<!-- always built in versions 78+. The option is a noop
[5ef6186]183# If you want to compile the Mozilla Calendar, uncomment this line:
[3cec271]184#ac_add_options - -enable-calendar
185-->
[1ddbf11a]186# Comment out following options if you have not installed
187# recommended dependencies:
188ac_add_options --with-system-libevent
189ac_add_options --with-system-nspr
190ac_add_options --with-system-nss
[18310d86]191ac_add_options --with-system-icu
[bbe434b]192<!--Not with libvpx-1.8.0 or later
193ac_add_options - -with-system-libvpx
194====
195These do not seem to be needed any more
[0639bb6]196# Set CFLAGS and CXXFLAGS to prevent segfaults due to aggressive
[63ab44e]197# optimizations in GCC-6:
198export CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
199export CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
[83d02fc6]200-->
[36bcb4c0]201# The elf-hack causes failed builds on clang-9.0.1 with some CFLAGS including
202# -march=native on Ryzen. It is supposed to improve startup time and it shrinks
203# libxul.so by a few MB - Uncomment this if your build is affected.
204#ac_add_options --disable-elf-hack
205
[7251b1d]206# The BLFS editors recommend not changing anything below this line:
[1ddbf11a]207ac_add_options --prefix=/usr
[307a22f]208ac_add_options --enable-application=comm/mail
[5ef6186]209
[5f5dcc2]210ac_add_options --disable-crashreporter
211ac_add_options --disable-updater
[1ddbf11a]212ac_add_options --disable-debug
[90c4de61]213ac_add_options --disable-debug-symbols
[1ddbf11a]214ac_add_options --disable-tests
215
[83d02fc6]216ac_add_options --enable-optimize=-O2
[90c4de61]217ac_add_options --enable-linker=gold
[1ddbf11a]218ac_add_options --enable-strip
219ac_add_options --enable-install-strip
220
[f207d239]221ac_add_options --enable-official-branding
[1ddbf11a]222
[b9b1a372]223ac_add_options --enable-system-ffi
[1ddbf11a]224ac_add_options --enable-system-pixman
225
[a0ace670]226ac_add_options --with-system-jpeg
227ac_add_options --with-system-png
[e67830f1]228ac_add_options --with-system-zlib</literal>
[adb388a]229EOF</userinput></screen>
[e67830f1]230
[90c4de61]231 <para>
232 First, fix a regression in <application>Thunderbird</application> that
233 prevents the mail panes and other UI elements from functioning properly:
234 </para>
235
236<screen><userinput remap="pre">patch -Np1 -i ../thunderbird-&thunderbird-version;-upstream_fixes-1.patch</userinput></screen>
237
[d41c02b]238 <para>
239 Compile <application>Thunderbird</application> by issuing the following
240 commands:
241 </para>
[adb388a]242
[5b0a978e]243 <note>
244 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
245 href="../../xincludes/mozshm.xml"/>
246
247 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
[90c4de61]248 href="../../xincludes/mozmach.xml"/>
[5b0a978e]249
250 </note>
[6b8a3b33]251
[90c4de61]252<screen><userinput>CC=gcc CXX=g++ ./mach build</userinput></screen>
[99a80f7]253
[1ddbf11a]254 <para>
255 This package does not come with a test suite.
256 </para>
[bc6cf88]257
[d41c02b]258 <para>
259 Install <application>Thunderbird</application> by running the following
260 commands as the <systemitem class="username">root</systemitem> user:
261 </para>
[99a80f7]262
[307a22f]263<screen role="root"><userinput>./mach install</userinput></screen>
[5246cff]264
[dfff7ace]265 </sect2>
266
267 <sect2 role="commands">
268 <title>Command Explanations</title>
[90c4de61]269<!-- might be necessary, we need to verify this.
[4def8b6]270 <para>
271 <command>test $(uname -m) = "i686" &amp;&amp; sed ...</command>: On this
272 version of thunderbird, an old bug has reappeared in 32-bit builds. With
273 optimization, the install fails with a Python error. This command will
274 fix i686 builds and preserve the optimization on x86_64.
[30339015]275 </para>-->
[773ef6d]276
[d41c02b]277 <para>
[90c4de61]278 <command>CC=gcc CXX=g++ ./mach build</command>:
279 <application>Thunderbird</application>
[d24c31e8]280 now uses this <application>python3</application> script to run the
[90c4de61]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.-->
[307a22f]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.
[d41c02b]291 </para>
292
[b0ddfae5]293 </sect2>
294
295 <sect2 role="configuration">
296 <title>Configuring Thunderbird</title>
297
298 <sect3><title>Configuration Information</title>
299
[d41c02b]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
[17f2889]304 you click on an Internet/intranet/local URL. The procedure to check
[d41c02b]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>
[3927e328]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
[d41c02b]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>
[adb388a]333
[604ba3d8]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>
[ff749e38]342
[d41c02b]343 <para>
[000d5dc]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
[3927e328]349 the menu. <!--If you didn't enable
[000d5dc]350 <application>startup-notification</application> in your mozconfig, then
[3927e328]351 change the StartupNotify line to false.--> Run the following commands as the
[000d5dc]352 <systemitem class="username">root</systemitem> user:
353
[d41c02b]354 </para>
[ff749e38]355
[4def8b6]356<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
[0e37869]357
[c099902d]358cat &gt; /usr/share/applications/thunderbird.desktop &lt;&lt; "EOF" &amp;&amp;
[fcd66369]359<literal>[Desktop Entry]
[1ddbf11a]360Name=Thunderbird Mail
361Comment=Send and receive mail with Thunderbird
362GenericName=Mail Client
363Exec=thunderbird %u
364Terminal=false
[ff749e38]365Type=Application
366Icon=thunderbird
[8427861]367Categories=Network;Email;
[1ddbf11a]368MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
[fcd66369]369StartupNotify=true</literal>
[ff749e38]370EOF
[0e37869]371
[e3f35536]372ln -sfv /usr/lib/thunderbird/chrome/icons/default/default256.png \
[1ddbf11a]373 /usr/share/pixmaps/thunderbird.png</userinput></screen>
[b0ddfae5]374 </sect3>
[1c5e617]375 </sect2>
376
377 <sect2 role="content">
378 <title>Contents</title>
379
380 <segmentedlist>
[c3c56b2]381 <segtitle>Installed Program</segtitle>
382 <segtitle>Installed Libraries</segtitle>
383 <segtitle>Installed Directory</segtitle>
[1c5e617]384
385 <seglistitem>
[d41c02b]386 <seg>
[1ddbf11a]387 thunderbird
388 </seg>
[c3c56b2]389 <seg>
[1c984ec]390 libldap60.so, libldif60.so, liblgpllibs.so, libmozgtk.so,
[d24c31e8]391 libmozsandbox.so, libmozsqlite3.so, libmozwayland.so,
392 libprldap60.so, libnrp.so, and libxul.so, all in the
393 /usr/lib/thunderbird directory
[c3c56b2]394 </seg>
[1ddbf11a]395 <seg>
[e3f35536]396 /usr/lib/thunderbird
[1c5e617]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>
[d41c02b]409 <para>
[de930747]410 is <application>Mozilla</application>'s email and newsgroup client.
[d41c02b]411 </para>
[1c5e617]412 <indexterm zone="thunderbird thunderbird-prog">
413 <primary sortas="b-thunderbird">thunderbird</primary>
414 </indexterm>
415 </listitem>
416 </varlistentry>
[1ddbf11a]417
[1c5e617]418 </variablelist>
[1ddbf11a]419
[1c5e617]420 </sect2>
[1ddbf11a]421
[167dc1dc]422</sect1>
Note: See TracBrowser for help on using the repository browser.