clarified and repaired the Enigmail instructions in the Mozilla section

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@2384 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
Randy McMurchy 2004-06-26 01:08:43 +00:00
parent 80874720f7
commit 67d6349dad
2 changed files with 122 additions and 93 deletions

View File

@ -18,6 +18,9 @@ who wrote what.</para>
<itemizedlist>
<listitem><para>June 25th, 2004 [randy]: Clarified and repaired the Enigmail
instructions in the Mozilla-1.7 section.</para></listitem>
<listitem><para>June 25th, 2004 [randy]: Updated to Leafnode-1.10.0.</para></listitem>
<listitem><para>June 25th, 2004 [randy]: Added patch instructions and

View File

@ -6,11 +6,11 @@
<!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla/releases/mozilla&mozilla-version;/src/mozilla-source-&mozilla-version;.tar.bz2">
<!ENTITY mozilla-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/src/mozilla-source-&mozilla-version;.tar.bz2">
<!ENTITY mozilla-size "39 MB">
<!ENTITY mozilla-buildsize "550 MB">
<!ENTITY mozilla-time "22.64 SBU">
<!ENTITY mozilla-size "35 MB">
<!ENTITY mozilla-buildsize "700 MB">
<!ENTITY mozilla-time "15.22 SBU">
<!ENTITY enigmail-version "0.83.6">
<!ENTITY enigmail-version "0.84.1">
<!ENTITY ipc-version "1.0.5">
]>
@ -23,16 +23,20 @@
<para><application>Mozilla</application> is a browser suite, the Open Source
sibling of <application>Netscape</application>. It includes the browser,
composer, mail client, a calendar client and an <acronym>IRC</acronym> client.</para>
composer, mail and news clients, a calendar client and an
<acronym>IRC</acronym> client.</para>
<para>The Mozilla project also hosts two subprojects that aim to satisfy the needs
of users who don't need the complete browser suite or like to have separate applications
for browsing and e-mail. These subprojects are
<ulink url="http://www.mozilla.org/products/firefox/">Mozilla Firefox</ulink>,
(a stand-alone browser based on the Mozilla source code) and
<ulink url="http://www.mozilla.org/projects/thunderbird/">Mozilla Thunderbird</ulink>,
(a stand-alone mail client based on the Mozilla source code). The build instructions
for these two applications are discussed in separate sections:</para>
<para>The <application>Mozilla</application> project also hosts two subprojects
that aim to satisfy the needs of users who don't need the complete browser
suite or like to have separate applications for browsing and e-mail. These
subprojects are
<ulink url="http://www.mozilla.org/products/firefox/">Mozilla Firefox</ulink>,
(a stand-alone browser based on the
<application>Mozilla</application> source code) and <ulink
url="http://www.mozilla.org/projects/thunderbird/">Mozilla Thunderbird</ulink>,
(a stand-alone mail client based on the <application>Mozilla</application>
source code). The build instructions for these two applications are discussed
in separate sections:</para>
<itemizedlist>
<listitem><para><xref linkend="firefox"/></para></listitem>
@ -52,37 +56,40 @@ url="&mozilla-download-ftp;"/></para></listitem>
&mozilla-time;</para></listitem></itemizedlist>
</sect3>
<sect3><title><application>Mozilla</application> dependencies</title>
<sect4><title>Required</title>
<para><xref linkend="zip"/>, <xref linkend="GTK2"/>,
<xref linkend="libIDL"/>, <xref linkend="libmng"/> and
<xref linkend="which"/>
</para></sect4>
<sect4><title>Recommended</title>
<para><xref linkend="gnupg"/> (for Enigmail extension)
</para></sect4>
</sect3>
<sect3><title>Additional downloads</title>
<para>To enable the <application>Enigmail</application> extension to the
<application>Mozilla</application> and <application>Thunderbird</application>
mail clients, 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="http://enigmail.mozdev.org/">Enigmail Extension
(Version &enigmail-version;)</ulink>
(Useful only if Mozilla Mail is built)
<!-- <ulink
url="http://downloads.mozdev.org/enigmail/src/enigmail-&enigmail-version;.tar.gz"/>
-->
</para></listitem>
<!-- <listitem><para><ulink url="http://enigmail.mozdev.org/">Enigmail Extension
(Version &enigmail-version;)</ulink>
(Useful only if Mozilla Mail is built)</para></listitem>
<listitem><para><ulink url="http://enigmail.mozdev.org/">Inter Process
Communicaton Extension (Version &ipc-version;)</ulink>
(Needed for Enigmail)
<!--
<ulink
(Needed for Enigmail)</ulink></para></listitem> -->
<listitem><para><ulink
url="http://downloads.mozdev.org/enigmail/src/enigmail-&enigmail-version;.tar.gz"/>
</para></listitem>
<listitem><para><ulink
url="http://downloads.mozdev.org/enigmail/src/ipc-&ipc-version;.tar.gz"/>
-->
</para></listitem>
</itemizedlist>
</sect3>
<sect3><title><application>Mozilla</application> dependencies</title>
<sect4><title>Required</title>
<para><xref linkend="zip"/>, <xref linkend="GTK2"/>, <xref linkend="libIDL"/>,
<xref linkend="libmng"/> and <xref linkend="which"/></para></sect4>
<sect4><title>Recommended</title>
<para><xref linkend="gnupg"/> (for Enigmail extension)</para></sect4>
</sect3>
</sect2>
<sect2>
@ -93,7 +100,8 @@ url="http://downloads.mozdev.org/enigmail/src/ipc-&ipc-version;.tar.gz"/>
<para>According to the financial institutions, the following hack makes your
browser insecure. You have been warned. Many sites use an MS-IE specific tag
(autocomplete=off) to prevent autocomplete from working in some forms. This
tag is now supported in <application>Mozilla</application> to appease the financial institutions. As per
tag is now supported in <application>Mozilla</application> to appease
the financial institutions. As per
the requirements of the financial institutions, they will not even accept a
solution where this a preference option. However our opinion is that it should
be in the hands of the user. To enable autocomplete to bypass
@ -107,13 +115,14 @@ friendly, give them this example!</para>
</note>
-->
<warning><para>Do not install Mozilla, Mozilla Firefox and Mozilla Thunderbird
with a single prefix since they install identically named files. The BLFS Book
installs Mozilla in <filename>/usr</filename> while Mozilla Firefox and Mozilla
Thunderbird are installed in <filename>/opt</filename>.</para></warning>
<para>If you plan to install Enigmail, extract the ipc and enigmail tarballs
in the <filename class="directory">extensions</filename> directory.</para>
<warning><para>Do not install <application>Mozilla</application>,
<application>Mozilla Firefox</application> and
<application>Mozilla Thunderbird</application> with a single prefix since they
install identically named files. The <acronym>BLFS</acronym> Book installs
<application>Mozilla</application> in <filename>/usr</filename> while
<application>Mozilla Firefox</application> and
<application>Mozilla Thunderbird</application> are installed in
<filename>/opt</filename>.</para></warning>
<para>Compile <application>Mozilla</application> by running the following
commands:</para>
@ -133,11 +142,17 @@ export BUILD_OFFICIAL="1" &amp;&amp;
--enable-cpp-rtti --enable-extensions=all &amp;&amp;
make</command></userinput></screen>
<para>If installing Enigmail, execute the following steps:</para>
<para>If you're building the <application>Mozilla</application> mail and news
clients and plan to install the <application>Enigmail</application>
extension, execute the following steps:</para>
<screen><userinput><command>build/autoconf/make-makefile extensions/ipc extensions/enigmail &amp;&amp;
<screen><userinput><command>tar zxf ../enigmail-&enigmail-version;.tar.gz -C extensions &amp;&amp;
tar zxf ../ipc-&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</command></userinput></screen>
make -C extensions/enigmail &amp;&amp;
make -C extensions/enigmail/build xpi &amp;&amp;
make -C extensions/enigmail/package xpi</command></userinput></screen>
<para>Install <application>Mozilla</application> as follows:</para>
@ -148,9 +163,10 @@ cp -Lf dist/private/nss/*.h dist/public/nss/*.h \
ln -nsf mozilla-&mozilla-version; /usr/include/mozilla &amp;&amp;
ln -nsf mozilla-&mozilla-version; /usr/lib/mozilla</command></userinput></screen>
<para>Some libraries installed by mozilla are also needed by other packages. These
libraries should be in <filename>/usr/lib</filename> so that other packages can
link against them. Move them as follows:</para>
<para>Some libraries installed by <application>Mozilla</application> are also
needed by other packages. These libraries should be in
<filename>/usr/lib</filename> so that other packages can link against them.
Move them as follows:</para>
<screen><userinput><command>for i in lib{nspr4,plc4,plds4,nss3,smime3,softokn3,ssl3}.so libsoftokn3.chk
do
@ -158,7 +174,8 @@ do
ln -sf ../$i /usr/lib/mozilla-&mozilla-version;/
done</command></userinput></screen>
<para>Install Enigmail as follows:</para>
<para>Install the <application>Enigmail</application> extension as
follows:</para>
<screen><userinput><command>make -C extensions/ipc install &amp;&amp;
make -C extensions/enigmail install</command></userinput></screen>
@ -178,7 +195,8 @@ touch `find /usr/lib/mozilla-&mozilla-version; -name *.rdf`</command></userinput
<title>Optional Extra Switches</title>
<para>Each of these switches can be added to the configure line in order to
have the described effect on the <application>Mozilla</application> compile.</para>
have the described effect on the <application>Mozilla</application>
compile.</para>
<para><option>--enable-elf-dynstr-gc</option>: Removes un-referenced
strings from <acronym>ELF</acronym> shared objects generated during the build.
@ -192,13 +210,13 @@ support, recommended if mail is disabled.</para>
<para><option>--enable-calendar</option>: Build the calendar client.</para>
<para><option>--enable-xterm-updates</option>: This option is
for enabling the <command>xterm</command> title with the current command when
<para><option>--enable-xterm-updates</option>: This option is for enabling
the <command>xterm</command> window title with the current command when
compiling.</para>
<para><option>--enable-plaintext-editor-only</option>: Disable support
for <acronym>HTML</acronym> editing. Do not use this switch if you are building
the mail-news component.</para>
for <acronym>HTML</acronym> editing. Do not use this switch if you are
building the mail-news component.</para>
</sect2>
@ -207,31 +225,32 @@ the mail-news component.</para>
<para><screen><command>export MOZILLA_OFFICIAL="1" &amp;&amp;
export BUILD_OFFICIAL="1"</command></screen>
Set some variables that affect what and how the package is built. The first two exports
specify a distribution is being built.</para>
Set some variables that affect what and how the package is built. These two
exports specify a distribution is being built.</para>
<!--
<para> The last export specifies that we
are ok with the <acronym>LGPL</acronym> versioned libart.</para>
-->
<para><parameter>--prefix=/usr</parameter>: Previously mozilla did
not support the make install option. Hence, the package was installed in
<filename>/opt</filename>. The package now supports "make install" and follows
the <acronym>FHS</acronym> guidelines for installation. Therefore the book now
recommends installation in a system wide prefix such as <filename>/usr
</filename>.</para>
<para><parameter>--prefix=/usr</parameter>: Previously
<application>Mozilla</application> did not support the <command>make
install</command> option. Hence, the package was installed in
<filename>/opt</filename>. The package now supports
"<command>make install</command>" and follows the <acronym>FHS</acronym>
guidelines for installation. Therefore the book now recommends installation
in a system wide prefix such as <filename>/usr</filename>.</para>
<para><screen><option>--enable-toolkit-gtk2</option></screen>Use gtk2
toolkit.</para>
<para><screen><option>--enable-toolkit-gtk2</option></screen>
Use the gtk2 toolkit.</para>
<para><screen><option>--with-system-zlib --with-system-jpeg \
--with-system-png --with-system-mng</option></screen>
Use the system versions for these packages.</para>
Use the system installed versions of these packages.</para>
<para><option>--enable-xft</option>: Enable the Xft support. You need
<application>fontconfig</application> or the latest <application>XFree86
</application> version to enable xft.</para>
<para><option>--enable-xft</option>: Enable Xft support. You need
<application>fontconfig</application> or the latest
<application>XFree86</application> version to enable Xft.</para>
<para><option>--enable-crypto</option>: Enable the Personal
Security Manager to enable <acronym>SSL</acronym> connections.</para>
@ -243,17 +262,20 @@ Security Manager to enable <acronym>SSL</acronym> connections.</para>
--enable-strip \
--enable-cpp-rtti</option></screen>
Various options that affect what components are built and some optimization
options. You can pick and choose from these options. More information on them
can be found in the <application>Mozilla</application> <command>configure
</command> script help. Not all options are used in the instructions given
above.</para>
options. You can pick and choose from these options. More information on them
can be found in the <application>Mozilla</application>
<command>configure</command> script help. Not all options are used in the
instructions given above.</para>
<para><option>--enable-extensions=...</option>: Enables extensions. If you
want, you can disable all extensions other than the browser by changing this
switch to <parameter>--enable-extensions="default,-venkman,-inspector,-irc"</parameter>.
For a short description of the various extensions available with the mozilla
source, see
<ulink url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.</para>
switch to
<parameter>--enable-extensions="default,-venkman,-inspector,-irc"</parameter>.
For a short description of the various extensions available with the
<application>Mozilla</application> source, see
<ulink
url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.
</para>
<para><screen><command>install -d /usr/include/mozilla-&mozilla-version;/nss
cp -Lf dist/private/nss/*.h dist/public/nss/*.h \
@ -268,10 +290,11 @@ These libraries are not installed by default.</para>
<para><command>ln -nsf mozilla-&mozilla-version; ...</command>:
<application>Mozilla</application> installs headers and libraries in version
specific directories. This command makes symbolic links so that applications that
depend on <application>Mozilla</application> (such as <application>OpenOffice
</application>, <application>Galeon</application>, etc.) don't need to know
which version of <application>Mozilla</application> is installed.</para>
specific directories. This command makes symbolic links so that applications
depending on <application>Mozilla</application> (such as
<application>OpenOffice</application>, <application>Galeon</application>,
etc.) don't need to know which version of <application>Mozilla</application>
is installed.</para>
<para><screen><command>export LD_LIBRARY_PATH="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
export MOZILLA_FIVE_HOME="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
@ -280,19 +303,21 @@ export MOZILLA_FIVE_HOME="/usr/lib/mozilla-&mozilla-version;" &amp;&amp;
touch `find /usr/lib/mozilla-${VERSION} -name *.rdf`</command>
</screen>
Create the required component registries to enable multi-user installs. These
steps should be preformed by the root user each time a mozilla add-on is
installed. This will allow normal users to run mozilla.</para>
steps should be preformed by the root user each time a
<application>Mozilla</application> add-on is installed. This will allow normal
users to run <command>mozilla</command>.</para>
</sect2>
<sect2>
<title>Configuring <application>Mozilla</application></title>
<para>No specific configuration is required as long as the <command>mozilla
</command> binary is in the path for the user. If <application>Mozilla</application>
is installed in a non-standard location, then make a symlink to the
<command>mozilla</command> binary from <filename class="directory">/usr/bin</filename>.
The same thing applies for <application>Mozilla Firefox</application> and
<para>No specific configuration is required as long as the
<command>mozilla</command> binary is in the path for the user. If
<application>Mozilla</application> is installed in a non-standard location,
then make a symlink to the <command>mozilla</command> binary from
<filename class="directory">/usr/bin</filename>. The same thing applies for
<application>Mozilla Firefox</application> and
<application>Mozilla Thunderbird</application>.</para>
<para>Many applications look for <command>netscape</command> when they need to
@ -301,7 +326,8 @@ open a browser. You may make the following symlink for convenience.</para>
<screen><userinput><command>ln -sf mozilla /usr/bin/netscape</command></userinput></screen>
<para>For installing various <application>Mozilla</application> plugins, refer
to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's PluginDoc Project</ulink></para>
to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's PluginDoc
Project</ulink></para>
</sect2>
@ -309,12 +335,12 @@ to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's PluginDoc Projec
<title>Contents</title>
<para>The <application>Mozilla</application> package contains
<command>mozilla</command>. The various components such as composer and mail-news can be accessed
from the menu after <command>mozilla</command> starts or via command-line
switches to the <command>mozilla</command> binary.
<command>mozilla</command> and the <application>Mozilla</application>
libraries and plugins. The various components such as composer and mail-news
can be accessed from the menu after <command>mozilla</command> starts or
via command-line switches to the <command>mozilla</command> binary.
</para>
</sect2>
</sect1>