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

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 9.0 9.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 8f38e174 was 5b15225, checked in by Bruce Dubbs <bdubbs@…>, 5 years ago

Finish tagging X Software

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

  • Property mode set to 100644
File size: 14.9 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 " ">
9 <!ENTITY thunderbird-md5sum "a8735a56f578c2690442ee26f60c488a">
10 <!ENTITY thunderbird-size "273 MB">
11 <!ENTITY thunderbird-buildsize "6.6 GB (146 MB installed)">
12 <!ENTITY thunderbird-time "26 SBU (with -j4, estimated 84 SBU with -j1)">
13 <!-- Verified the time at -j1 on another system for posterity's sake. -->
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 &lfs90_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"/>, no mention in log -->
80 <xref linkend="autoconf213"/>,
81 both <xref linkend="gtk3"/>
82 and <xref linkend="gtk2"/>,
83 <xref linkend="llvm"/>, <!-- Searched for and used a few times -->
84 <xref linkend="rust"/>,
85 <xref linkend="zip"/>,
86 <xref linkend="unzip"/>, and
87 <xref linkend="yasm"/>
88 </para>
89
90 <bridgehead renderas="sect4">Recommended</bridgehead>
91 <para role="recommended">
92 <xref linkend="icu"/>,
93 <xref linkend="libevent"/>,
94<!-- Fails to build with version 1.8.0
95 <xref linkend="libvpx"/>,-->
96 <xref linkend="nspr"/>,
97 <xref linkend="nss"/>, and
98 <xref linkend="sqlite"/>
99 </para>
100
101 <note>
102 <para>
103 If you don't install recommended dependencies,
104 then internal copies of those packages will
105 be used. They might be tested to work, but
106 they can be out of date or contain security
107 holes.
108 </para>
109 </note>
110
111 <bridgehead renderas="sect4">Optional</bridgehead>
112 <para role="optional">
113 <!-- <xref linkend="curl"/>, not in build log-->
114 <xref linkend="cyrus-sasl"/>,
115 <xref linkend="dbus-glib"/>,
116 <xref linkend="doxygen"/>,
117 <xref linkend="GConf"/>,
118 <!--<xref linkend="gst10-plugins-base"/> (with
119 <xref linkend="gst10-plugins-good"/> and
120 <xref linkend="gst10-libav"/> at runtime),-->
121 <!-- <xref linkend="openjdk"/>, not in build log -->
122 <xref linkend="pulseaudio"/>,
123 <xref linkend="startup-notification"/>,
124 <xref linkend="wget"/>,
125 <xref linkend="wireless_tools"/>, and
126 <ulink url="http://hunspell.sourceforge.net/">Hunspell</ulink>
127 </para>
128
129 <para condition="html" role="usernotes">
130 User Notes: <ulink url="&blfs-wiki;/Thunderbird"/>
131 </para>
132 </sect2>
133
134 <sect2 role="installation">
135 <title>Installation of Thunderbird</title>
136
137 <note>
138 <para>
139 The build process for Thunderbird can use 8GB+ of RAM when linking.
140 Make sure that you have adequate swap or RAM before continuing.
141 </para>
142 </note>
143
144 <para>
145 The configuration of <application>Thunderbird</application> is
146 accomplished by creating a <filename>mozconfig</filename> file containing
147 the desired configuration options. A default
148 <filename>mozconfig</filename> is created below. To see the entire list
149 of available configuration options (and a brief description of each),
150 issue <command>mozilla/configure --help</command>. Create the file with
151 the following command:
152 </para>
153
154<screen><userinput>cat &gt; mozconfig &lt;&lt; "EOF"
155<literal># If you have a multicore machine, the build may be faster if using parallel
156# jobs. The build system automatically adds -jN to the "make" flags, where N
157# is the number of CPU cores. The option below is therefore useless, unless
158# you want to use a smaller number of jobs:
159#mk_add_options MOZ_MAKE_FLAGS="-j1"
160
161# If you have installed dbus-glib, comment out this line:
162ac_add_options --disable-dbus
163
164# If you have installed wireless-tools comment out this line:
165ac_add_options --disable-necko-wifi
166
167# Uncomment these lines if you have installed optional dependencies:
168#ac_add_options --enable-system-hunspell
169#ac_add_options --enable-startup-notification
170
171# Comment out following option if you have PulseAudio installed
172ac_add_options --disable-pulseaudio
173
174# Comment out following option if you have gconf installed
175ac_add_options --disable-gconf
176
177# If you want to compile the Mozilla Calendar, uncomment this line:
178#ac_add_options --enable-calendar
179
180# Comment out following options if you have not installed
181# recommended dependencies:
182ac_add_options --enable-system-sqlite
183ac_add_options --with-system-libevent
184ac_add_options --with-system-nspr
185ac_add_options --with-system-nss
186ac_add_options --with-system-icu
187<!--Not with libvpx-1.8.0 or later
188ac_add_options - -with-system-libvpx
189====
190These do not seem to be needed any more
191# Set CFLAGS and CXXFLAGS to prevent segfaults due to aggressive
192# optimizations in GCC-6:
193export CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
194export CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
195-->
196# The BLFS editors recommend not changing anything below this line:
197ac_add_options --prefix=/usr
198ac_add_options --enable-application=comm/mail
199
200ac_add_options --disable-crashreporter
201ac_add_options --disable-updater
202ac_add_options --disable-debug
203ac_add_options --disable-tests
204
205ac_add_options --enable-optimize=-O2
206ac_add_options --enable-strip
207ac_add_options --enable-install-strip
208
209ac_add_options --enable-official-branding
210
211ac_add_options --enable-system-ffi
212ac_add_options --enable-system-pixman
213
214ac_add_options --with-pthreads
215
216ac_add_options --with-system-bz2
217ac_add_options --with-system-jpeg
218ac_add_options --with-system-png
219ac_add_options --with-system-zlib</literal>
220EOF</userinput></screen>
221
222 <para>
223 Compile <application>Thunderbird</application> by issuing the following
224 commands:
225 </para>
226
227 <note><para>
228 If you are compiling <application>Thunderbird</application> in chroot,
229 prepend <envar>SHELL=/bin/sh</envar> to the build command below.
230 </para></note>
231
232 <para>
233 First, disable failure caused by undocumented rust macros:
234 </para>
235
236<screen><userinput remap="pre">sed -i -e '/#!\[deny(missing_docs)\]/d' servo/components/style/lib.rs &amp;&amp;
237sed -i -e 's/#!\[deny(unsafe_code, missing_docs)\]/#!\[deny(unsafe_code)\]/g' servo/components/style_traits/lib.rs</userinput></screen>
238
239 <para>
240 Remove a function definition, which is incompatible with the one in
241 glibc-2.30:
242 </para>
243
244<screen><userinput>sed -i -e '/pid_t gettid/s@^@//@' tools/profiler/core/platform.h</userinput></screen>
245
246 <para>
247 Next, build the package:
248 </para>
249
250<screen><userinput>./mach build</userinput></screen>
251
252 <para>
253 This package does not come with a test suite.
254 </para>
255
256 <para>
257 Install <application>Thunderbird</application> by running the following
258 commands as the <systemitem class="username">root</systemitem> user:
259 </para>
260
261<screen role="root"><userinput>./mach install</userinput></screen>
262
263<!-- thunderbuild directory does not exist anymore. Leaving as comment,
264in case an editor figures out how to install the development environment.
265 <para>
266 The above instruction just installs the parts you need to run
267 <application>Thunderbird</application>. Alternatively, if you want to
268 install the full <application>Thunderbird</application> development
269 environment, run the following command as the
270 <systemitem class="username">root</systemitem> user:
271 </para>
272
273<screen role="root"><userinput>make -C thunderbuild install</userinput></screen>
274-->
275 </sect2>
276
277 <sect2 role="commands">
278 <title>Command Explanations</title>
279<!-- might be necessary
280 <para>
281 <command>test $(uname -m) = "i686" &amp;&amp; sed ...</command>: On this
282 version of thunderbird, an old bug has reappeared in 32-bit builds. With
283 optimization, the install fails with a Python error. This command will
284 fix i686 builds and preserve the optimization on x86_64.
285 </para>
286
287 <para>
288 <command>export CFLAGS= ... export CXXFLAGS= ...</command>: These
289 settings work around code which gcc6 would otherwise regard as
290 out-of-specification and allow it to produce a working program.
291 </para>-->
292
293 <para>
294 <command>./mach build</command>: <application>Thunderbird</application>
295 now uses this <application>python2</application> script to run the
296 build and install.
297 </para>
298
299 <para>
300 <option>./mach build --verbose</option>: Use this alternative if you
301 need details of which files are being compiled, together with any C or
302 C++ flags being used.
303 </para>
304
305 </sect2>
306
307 <sect2 role="configuration">
308 <title>Configuring Thunderbird</title>
309
310 <sect3><title>Configuration Information</title>
311
312 <para>
313 If your Window or Desktop Manager does not allow you to configure a
314 default browser, you can add a configuration parameter to
315 <application>Thunderbird</application> so that a browser will start when
316 when you click on an Internet/intranet/local URL. The procedure to check
317 or modify any of the configuration parameters is quite simple and the
318 instructions here can be used to view or modify any of the parameters.
319 </para>
320
321 <para>
322 First, open the configuration dialog by opening the <quote>Edit</quote>
323 drop-down menu. Choose <quote>Preferences</quote> and then click on the
324 <quote>Advanced</quote> icon on the top menu bar. Choose the
325 <quote>General</quote> tab and click on the <quote>Config Editor</quote>
326 button. This will display a list of the configuration preferences and
327 information related to each one. You can use the <quote>Filter:</quote>
328 bar to enter search criteria and narrow down the listed items. Changing
329 a preference can be done using two methods. One, if the preference has a
330 boolean value (True/False), simply double-click on the preference to
331 toggle the value and two, for other preferences simply right-click on
332 the desired line, choose <quote>Modify</quote> from the menu and change
333 the value. Creating new preference items is accomplished in the same
334 way, except choose <quote>New</quote> from the menu and provide the
335 desired data into the fields when prompted.
336 </para>
337
338 <para>
339 The configuration preference item you need to check so that
340 <application>Thunderbird</application> uses a specified browser is the
341 <parameter>network.protocol-handler.app.http</parameter> which should be
342 set to the path of the desired browser, e.g.
343 <option>/usr/bin/firefox</option>.
344 </para>
345
346 <tip>
347 <para>
348 There is a multitude of configuration parameters you can tweak to
349 customize <application>Thunderbird</application>. A very extensive,
350 but not so up-to-date list of these parameters can be found at
351 <ulink url="http://preferential.mozdev.org/preferences.html"/>.
352 </para>
353 </tip>
354
355 <para>
356
357 If you use a desktop environment such as <application>GNOME</application>
358 or <application>KDE</application>, a desktop file
359 <filename>thunderbird.desktop</filename> may be created, in order to
360 include a <quote><application>Thunderbird</application></quote> entry in
361 the menu. If you didn't enable
362 <application>startup-notification</application> in your mozconfig, then
363 change the StartupNotify line to false. Run the following commands as the
364 <systemitem class="username">root</systemitem> user:
365
366 </para>
367
368<screen role="root"><userinput>mkdir -pv /usr/share/{applications,pixmaps} &amp;&amp;
369
370cat &gt; /usr/share/applications/thunderbird.desktop &lt;&lt; "EOF" &amp;&amp;
371<literal>[Desktop Entry]
372Name=Thunderbird Mail
373Comment=Send and receive mail with Thunderbird
374GenericName=Mail Client
375Exec=thunderbird %u
376Terminal=false
377Type=Application
378Icon=thunderbird
379Categories=Network;Email;
380MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;x-scheme-handler/mailto;
381StartupNotify=true</literal>
382EOF
383
384ln -sfv /usr/lib/thunderbird/chrome/icons/default/default256.png \
385 /usr/share/pixmaps/thunderbird.png</userinput></screen>
386 </sect3>
387 </sect2>
388
389 <sect2 role="content">
390 <title>Contents</title>
391
392 <segmentedlist>
393 <segtitle>Installed Program</segtitle>
394 <segtitle>Installed Libraries</segtitle>
395 <segtitle>Installed Directory</segtitle>
396
397 <seglistitem>
398 <seg>
399 thunderbird
400 </seg>
401 <seg>
402 libldap60.so, libldif60.so, liblgpllibs.so, libmozgtk.so,
403 libmozsandbox.so, libprldap60.so, and libxul.so
404 </seg>
405 <seg>
406 /usr/lib/thunderbird
407 </seg>
408 </seglistitem>
409 </segmentedlist>
410
411 <variablelist>
412 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
413 <?dbfo list-presentation="list"?>
414 <?dbhtml list-presentation="table"?>
415
416 <varlistentry id="thunderbird-prog">
417 <term><command>thunderbird</command></term>
418 <listitem>
419 <para>
420 is <application>Mozilla</application>'s email and newsgroup client.
421 </para>
422 <indexterm zone="thunderbird thunderbird-prog">
423 <primary sortas="b-thunderbird">thunderbird</primary>
424 </indexterm>
425 </listitem>
426 </varlistentry>
427
428 </variablelist>
429
430 </sect2>
431
432</sect1>
Note: See TracBrowser for help on using the repository browser.