glfs/xsoft/other/thunderbird.xml
Randy McMurchy b0ddfae552 Fixed numerous issues with the Thunderbird build, see the Changelog for details
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@4983 af4574ff-66df-0310-9fd7-8a98e5e911e0
2005-08-26 06:38:47 +00:00

324 lines
13 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY thunderbird-download-http "http://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/&thunderbird-version;/source/thunderbird-&thunderbird-version;-source.tar.bz2">
<!ENTITY thunderbird-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/&thunderbird-version;/source/thunderbird-&thunderbird-version;-source.tar.bz2">
<!ENTITY thunderbird-md5sum "a0ddcc8bd5ee2c9be724b6963ad27111">
<!ENTITY thunderbird-size "33.3 MB">
<!ENTITY thunderbird-buildsize "560 MB">
<!ENTITY thunderbird-time "10.3 SBU">
<!ENTITY thunderbird-enigmail-version "0.92.0">
<!ENTITY thunderbird-enigmail-download "http://downloads.mozdev.org/enigmail/src/enigmail-&thunderbird-enigmail-version;.tar.gz">
<!ENTITY thunderbird-enigmail-md5sum "50c369ce6d6fcb2d275cd30319a601ff">
<!ENTITY thunderbird-ipc-version "1.1.3">
<!ENTITY thunderbird-ipc-download "http://downloads.mozdev.org/enigmail/src/ipc-&thunderbird-ipc-version;.tar.gz">
<!ENTITY thunderbird-ipc-md5sum "64ba4c6e3b52568468c4f6680ec7e679">
]>
<!--
Devs:
Always check the mail/config/mozconfig file in the source tree for
any changes to the options passed to configure. This file shows the
default build used by Mozilla. BLFS adds to this, but the values here
should be in our setup. The stuff about ActiveX can be ignored as
that is Windows crap only.
-->
<sect1 id="thunderbird" xreflabel="Thunderbird-&thunderbird-version;">
<?dbhtml filename="thunderbird.html" ?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>Thunderbird-&thunderbird-version;</title>
<indexterm zone="thunderbird">
<primary sortas="a-Thunderbird">Thunderbird</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Thunderbird</title>
<para><application>Thunderbird</application> is a stand-alone
mail/news client based on the <application>Mozilla</application>
codebase.</para>
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&thunderbird-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&thunderbird-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &thunderbird-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &thunderbird-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &thunderbird-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &thunderbird-time;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Required patch: <ulink
url="&patch-root;/thunderbird-&thunderbird-version;-fixes-1.patch"/></para>
</listitem>
</itemizedlist>
<para>To enable the <application>Enigmail</application> extension to the
<application>Thunderbird</application> mail client, you'll need to download
the two tarballs below. The <application>Enigmail</application> extension
allows users to access the authentication and encryption features provided
by the <application>GnuPG</application> package.</para>
<itemizedlist spacing='compact'>
<listitem>
<para><ulink url="&thunderbird-enigmail-download;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum (Enigmail): &thunderbird-enigmail-md5sum;</para>
</listitem>
<listitem>
<para><ulink url="&thunderbird-ipc-download;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum (IPC): &thunderbird-ipc-md5sum;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Thunderbird Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para><xref linkend="zip"/>,
<xref linkend="gtk2"/> and
<xref linkend="libidl"/></para>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para><xref linkend="gnupg"/> (run-time only dependency for the
<application>Enigmail</application> extension)</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para><xref linkend="libjpeg"/>,
<xref linkend="unzip"/>,
<xref linkend="gnome-vfs"/>,
<xref linkend="libgnome"/>,
<xref linkend="mitkrb"/> or <xref linkend="heimdal"/>
(for the GSSAPI libraries),
<xref linkend="doxygen"/>,
<ulink url="http://xprint.mozdev.org/">Xprint</ulink>,
<ulink url="http://perens.com/FreeSoftware/">Electric Fence</ulink>
and <ulink url="http://cairographics.org/">Cairo</ulink></para>
</sect2>
<sect2 role="installation">
<title>Installation of Thunderbird</title>
<para>The configuration of <application>Thunderbird</application> is
very similar to <xref linkend="mozilla"/> and hence the options will not
be discussed. Refer to the <xref linkend="mozilla"/> instructions for
explanations and additional configuration information.</para>
<para>Compile <application>Thunderbird</application> by
running the following commands:</para>
<screen><userinput>export MOZILLA_OFFICIAL="1" &amp;&amp;
export BUILD_OFFICIAL="1" &amp;&amp;
export MOZ_THUNDERBIRD="1" &amp;&amp;
patch -Np1 -i ../thunderbird-&thunderbird-version;-fixes-1.patch &amp;&amp;
./configure --prefix=/usr \
--with-default-mozilla-five-home=/usr/lib/thunderbird-&thunderbird-version; \
--with-user-appdir=.thunderbird \
--with-system-zlib \
--with-system-png \
--enable-application=mail \
--enable-default-toolkit=gtk2 \
--enable-extensions=wallet,spellcheck,xmlextras,webservices \
--enable-crypto \
--enable-xft \
--enable-xinerama \
--enable-optimize \
--enable-reorder \
--enable-strip \
--enable-cpp-rtti \
--enable-single-profile \
--enable-necko-protocols=http,file,jar,viewsource,res,data \
--enable-image-decoders=default,-xbm \
--disable-freetype2 \
--disable-accessibility \
--disable-debug \
--disable-tests \
--disable-logging \
--disable-pedantic \
--disable-installer \
--disable-profilesharing \
--disable-mathml \
--disable-oji \
--disable-plugins \
--disable-necko-disk-cache &amp;&amp;
make</userinput></screen>
<para>You should add the <option>--with-system-jpeg</option> switch
to the <command>configure</command> script if you have
<application>libjpeg</application> installed.</para>
<para>If you're building the <application>Enigmail</application> extension,
execute the following steps:</para>
<screen><userinput>tar -zxf ../enigmail-&thunderbird-enigmail-version;.tar.gz -C extensions &amp;&amp;
tar -zxf ../ipc-&thunderbird-ipc-version;.tar.gz -C extensions &amp;&amp;
build/autoconf/make-makefile extensions/ipc extensions/enigmail &amp;&amp;
make -C extensions/ipc &amp;&amp;
make -C extensions/enigmail &amp;&amp;
make -C extensions/enigmail xpi</userinput></screen>
<para>Install <application>Thunderbird</application> by running the following
commands as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install &amp;&amp;
install -v -m755 -d /usr/include/thunderbird-&thunderbird-version;/nss &amp;&amp;
cp -v -Lf dist/private/nss/*.h dist/public/nss/*.h \
/usr/include/thunderbird-&thunderbird-version;/nss &amp;&amp;
install -v -m755 -d /usr/lib/thunderbird-&thunderbird-version;/defaults/isp/US &amp;&amp;
install -v -m644 mailnews/base/ispdata/movemail.rdf \
mail/extensions/newsblog/rss.rdf \
/usr/lib/thunderbird-&thunderbird-version;/defaults/isp &amp;&amp;
ln -v -s ../{movemail,rss}.rdf \
/usr/lib/thunderbird-&thunderbird-version;/defaults/isp/US</userinput></screen>
<para>If you're installing the <application>Enigmail</application> extension,
issue the following commands as the <systemitem
class="username">root</systemitem> user:</para>
<screen role="root"><userinput>install -v -m755 -d /usr/lib/thunderbird-&thunderbird-version;/extensions &amp;&amp;
install -v -m644 dist/bin/enigmail-&thunderbird-enigmail-version;-linux-*.xpi \
/usr/lib/thunderbird-&thunderbird-version;/extensions</userinput></screen>
<para>To enable multi-user operation, execute the following as the
<systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>cd /usr/lib/thunderbird-&thunderbird-version; &amp;&amp;
export LD_LIBRARY_PATH="$PWD" &amp;&amp;
export MOZILLA_FIVE_HOME="$PWD" &amp;&amp;
./regxpcom &amp;&amp;
./regchrome &amp;&amp;
touch `find . -name *.rdf`</userinput></screen>
<note>
<para>You should run <command>/usr/bin/thunderbird</command> once as the
<systemitem class="username">root</systemitem> user (or any user with
write privileges) to create some necessary additional files in the
<filename class='directory'>/usr/lib/thunderbird-&thunderbird-version;</filename>
directory.</para>
</note>
<para>Finally, unset the build variables from the unprivileged user's
environment:</para>
<screen><userinput>unset MOZILLA_OFFICIAL &amp;&amp;
unset BUILD_OFFICIAL &amp;&amp;
unset MOZ_THUNDERBIRD</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para><command>patch -Np1 -i ...</command>: This patches fixes three major
issues with the <application>Thunderbird</application> installation. First,
it moves the installation of the <filename>prefs.js</filename> file from
<filename class='directory'>/usr/bin/defaults/profile</filename> to
<filename class='directory'>/usr/lib/thunderbird-&thunderbird-version;/defaults/profile</filename>,
it fixes a profile locking problem if the <command>thunderbird</command>
script is called when <application>Thunderbird</application> is already
running and last, makes it so that if a
<computeroutput>mailto:</computeroutput> URL is clicked, a message
compose window will open with the <computeroutput>To:</computeroutput>
field filled out.</para>
</sect2>
<sect2 role="configuration">
<title>Configuring Thunderbird</title>
<sect3><title>Configuration Information</title>
<para>Configuration of <application>Thunderbird</application> to use the
<application>Enigmail</application> extension must be done on an
as-needed basis for each user of the system who may use
<application>Thunderbird</application>. It is accomplished through the
<application>Thunderbird</application> <quote>Tools</quote> menu. Choose
the <quote>Extensions</quote> &ndash; <quote>Install</quote> option and
fill in the <quote>Look in:</quote> field with
<filename class='directory'>/usr/lib/thunderbird-&thunderbird-version;/extensions</filename>.
You'll then see the
<filename>enigmail-&thunderbird-enigmail-version;-linux-????.xpi</filename>
file listed. Choose this file and click on <quote>Open</quote>, then
click on <quote>Install now</quote>. The
<application>Enigmail</application> extension will install and you will
be prompted to restart <application>Thunderbird</application>.</para>
</sect3>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>thunderbird and thunderbird-config</seg>
<seg>Numerous libraries, email/newsgroups components, plugins,
extensions, and helper modules installed in <filename
class='directory'>/usr/lib/thunderbird-&thunderbird-version;</filename>
</seg>
<seg>/usr/include/thunderbird-&thunderbird-version;,
/usr/lib/thunderbird-&thunderbird-version;, and
/usr/share/idl/thunderbird-&thunderbird-version;</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="thunderbird-prog">
<term><command>thunderbird</command></term>
<listitem>
<para>is <application>Mozilla</application>'s next-generation
email and newsgroup client.</para>
<indexterm zone="thunderbird thunderbird-prog">
<primary sortas="b-thunderbird">thunderbird</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>