[f939f05] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
[ff769b8c] | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
---|
[f939f05] | 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 |
|
---|
[7f588e9a] | 7 | <!ENTITY mozilla-download-http "http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
|
---|
| 8 | <!ENTITY mozilla-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla&mozilla-version;/source/mozilla-&mozilla-version;-source.tar.bz2">
|
---|
| 9 | <!ENTITY mozilla-md5sum "f1ad6adbbc0510eb76d352c94c801fac">
|
---|
| 10 | <!ENTITY mozilla-size "30.4 MB">
|
---|
| 11 | <!ENTITY mozilla-buildsize "575 MB">
|
---|
| 12 | <!ENTITY mozilla-time "9.4 SBU">
|
---|
| 13 |
|
---|
| 14 | <!--
|
---|
| 15 |
|
---|
| 16 | BLFS Devs:
|
---|
| 17 |
|
---|
| 18 | The information below is for the Enigmail and IPC downloads. Additionally,
|
---|
| 19 | a makemake file is download because we cannot build Enigmail using an
|
---|
| 20 | object directory without it. Informaiton about the Enigmail source to
|
---|
| 21 | check for updates is located at http://enigmail.mozdev.org/source.html.
|
---|
| 22 |
|
---|
| 23 | The link to the makemake file is near the end of the page in the section
|
---|
| 24 | titled "Using OBJDIR when building Enigmail". Ensure you check the rev
|
---|
| 25 | level of the link and update the "enigmail-makemake-version" entitity
|
---|
| 26 | if necessary. In case you are wondering why the version has the question
|
---|
| 27 | mark and "rev=" in it, it is because the complete URL is used in a command
|
---|
| 28 | and it would extend past the 71 characters that PDF render is limited to.
|
---|
| 29 | It should make sense after you see it rendered in the wget command.
|
---|
| 30 |
|
---|
| 31 | -->
|
---|
| 32 |
|
---|
| 33 | <!ENTITY mozilla-enigmail-version "0.93.0">
|
---|
| 34 | <!ENTITY mozilla-ipc-version "1.1.3">
|
---|
| 35 | <!ENTITY enigmail-makemake-version "?rev=1.3">
|
---|
| 36 | <!ENTITY mozilla-enigmail-download "http://www.mozilla-enigmail.org/downloads/src/enigmail-&mozilla-enigmail-version;.tar.gz">
|
---|
| 37 | <!ENTITY mozilla-ipc-download "http://www.mozilla-enigmail.org/downloads/src/ipc-&mozilla-ipc-version;.tar.gz">
|
---|
| 38 | <!ENTITY enigmail-makemake-download "http://www.mozdev.org/source/browse/~checkout~/enigmail/src/makemake">
|
---|
| 39 | <!ENTITY mozilla-enigmail-md5sum "cb7126705924cb7f0de205b4ff4e28b4">
|
---|
| 40 | <!ENTITY mozilla-ipc-md5sum "64ba4c6e3b52568468c4f6680ec7e679">
|
---|
[f939f05] | 41 | ]>
|
---|
| 42 |
|
---|
[19234f1] | 43 | <sect1 id="mozilla" xreflabel="Mozilla-&mozilla-version;">
|
---|
[88dd2f52] | 44 | <?dbhtml filename="mozilla.html" ?>
|
---|
| 45 |
|
---|
| 46 | <sect1info>
|
---|
| 47 | <othername>$LastChangedBy$</othername>
|
---|
| 48 | <date>$Date$</date>
|
---|
[d1f23e0] | 49 | <keywordset>
|
---|
| 50 | <keyword role="package">mozilla-&mozilla-version;-source.tar</keyword>
|
---|
[b4647e21] | 51 | <keyword role="ftpdir">mozilla</keyword>
|
---|
[d1f23e0] | 52 | </keywordset>
|
---|
[88dd2f52] | 53 | </sect1info>
|
---|
| 54 |
|
---|
| 55 | <title>Mozilla-&mozilla-version;</title>
|
---|
| 56 |
|
---|
| 57 | <indexterm zone="mozilla">
|
---|
| 58 | <primary sortas="a-Mozilla">Mozilla</primary>
|
---|
| 59 | </indexterm>
|
---|
| 60 |
|
---|
| 61 | <sect2 role="package">
|
---|
| 62 | <title>Introduction to Mozilla</title>
|
---|
| 63 |
|
---|
| 64 | <para><application>Mozilla</application> is a browser suite, the Open
|
---|
| 65 | Source sibling of <application>Netscape</application>. It includes the
|
---|
| 66 | browser, composer, mail and news clients, a calendar client and an
|
---|
| 67 | IRC client.</para>
|
---|
| 68 |
|
---|
| 69 | <para>The <application>Mozilla</application> project also hosts two
|
---|
| 70 | subprojects that aim to satisfy the needs of users who don't need the
|
---|
| 71 | complete browser suite or prefer to have separate applications for
|
---|
| 72 | browsing and e-mail. These subprojects are <ulink
|
---|
[7f588e9a] | 73 | url="http://www.mozilla.com/firefox/">Mozilla Firefox</ulink>,
|
---|
[88dd2f52] | 74 | (a stand-alone browser based on the <application>Mozilla</application>
|
---|
| 75 | source code) and <ulink
|
---|
[7f588e9a] | 76 | url="http://www.mozilla.com/thunderbird/">Mozilla Thunderbird</ulink>,
|
---|
| 77 | (a stand-alone mail/newsgroup client based on the
|
---|
[88dd2f52] | 78 | <application>Mozilla</application> source code). The build instructions
|
---|
| 79 | for these two applications are discussed in separate sections:</para>
|
---|
| 80 |
|
---|
| 81 | <itemizedlist>
|
---|
| 82 | <listitem>
|
---|
| 83 | <para><xref linkend="firefox"/></para>
|
---|
| 84 | </listitem>
|
---|
| 85 | <listitem>
|
---|
| 86 | <para><xref linkend="thunderbird"/></para>
|
---|
| 87 | </listitem>
|
---|
| 88 | </itemizedlist>
|
---|
| 89 |
|
---|
| 90 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
| 91 | <itemizedlist spacing="compact">
|
---|
| 92 | <listitem>
|
---|
| 93 | <para>Download (HTTP): <ulink url="&mozilla-download-http;"/></para>
|
---|
| 94 | </listitem>
|
---|
| 95 | <listitem>
|
---|
| 96 | <para>Download (FTP): <ulink url="&mozilla-download-ftp;"/></para>
|
---|
| 97 | </listitem>
|
---|
| 98 | <listitem>
|
---|
| 99 | <para>Download MD5 sum: &mozilla-md5sum;</para>
|
---|
| 100 | </listitem>
|
---|
| 101 | <listitem>
|
---|
| 102 | <para>Download size: &mozilla-size;</para>
|
---|
| 103 | </listitem>
|
---|
| 104 | <listitem>
|
---|
| 105 | <para>Estimated disk space required: &mozilla-buildsize;</para>
|
---|
| 106 | </listitem>
|
---|
| 107 | <listitem>
|
---|
| 108 | <para>Estimated build time: &mozilla-time;</para>
|
---|
| 109 | </listitem>
|
---|
| 110 | </itemizedlist>
|
---|
| 111 |
|
---|
| 112 | <bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
---|
[15e255f] | 113 | <itemizedlist spacing="compact">
|
---|
| 114 | <listitem>
|
---|
| 115 | <para>Required patch: <ulink
|
---|
[7f588e9a] | 116 | url="&patch-root;/mozilla-&mozilla-version;-gcc4-1.patch"/></para>
|
---|
| 117 | </listitem>
|
---|
| 118 | <listitem>
|
---|
| 119 | <para>Required patch: <ulink
|
---|
[e93d40c5] | 120 | url="&patch-root;/mozilla-&mozilla-version;-gfx_fixes-1.patch"/></para>
|
---|
[7f588e9a] | 121 | </listitem>
|
---|
| 122 | <listitem>
|
---|
| 123 | <para>Required patch (if using system-installed versions of
|
---|
| 124 | <application>NSS</application> and <application>NSPR</application>):
|
---|
| 125 | <ulink
|
---|
| 126 | url="&patch-root;/mozilla-&mozilla-version;-system_nss-1.patch"/>
|
---|
| 127 | </para>
|
---|
[15e255f] | 128 | </listitem>
|
---|
| 129 | </itemizedlist>
|
---|
[bccbdaea] | 130 |
|
---|
[88dd2f52] | 131 | <para>To enable the <application>Enigmail</application> extension to
|
---|
| 132 | the <application>Mozilla</application> mail client, you'll need to
|
---|
[7f588e9a] | 133 | download the two tarballs and <command>makemake</command> file listed
|
---|
| 134 | below. The <application>Enigmail</application> extension allows users to
|
---|
| 135 | access the authentication and encryption features provided by the
|
---|
| 136 | <application>GnuPG</application> package. The
|
---|
| 137 | <application>Enigmail</application> extension will not operate correctly
|
---|
| 138 | unless you have <xref linkend="gnupg"/> installed.</para>
|
---|
[88dd2f52] | 139 |
|
---|
| 140 | <itemizedlist spacing='compact'>
|
---|
| 141 | <listitem>
|
---|
[7f588e9a] | 142 | <para><ulink url="&mozilla-enigmail-download;"/></para>
|
---|
[88dd2f52] | 143 | </listitem>
|
---|
| 144 | <listitem>
|
---|
| 145 | <para>Download MD5 sum (Enigmail): &mozilla-enigmail-md5sum;</para>
|
---|
| 146 | </listitem>
|
---|
| 147 | <listitem>
|
---|
[7f588e9a] | 148 | <para><ulink url="&mozilla-ipc-download;"/></para>
|
---|
[88dd2f52] | 149 | </listitem>
|
---|
| 150 | <listitem>
|
---|
| 151 | <para>Download MD5 sum (IPC): &mozilla-ipc-md5sum;</para>
|
---|
| 152 | </listitem>
|
---|
[7f588e9a] | 153 | <listitem>
|
---|
| 154 | <para><ulink
|
---|
| 155 | url="&enigmail-makemake-download;&enigmail-makemake-version;"/></para>
|
---|
| 156 | </listitem>
|
---|
[88dd2f52] | 157 | </itemizedlist>
|
---|
| 158 |
|
---|
[7f588e9a] | 159 | <para>The <command>makemake</command> file is an enhanced version that will
|
---|
| 160 | be copied into the source tree to replace an existing file during the
|
---|
| 161 | installation instructions. The instructions expect the file to be named
|
---|
| 162 | <filename>mozilla-&mozilla-version;-enigmail_makemake</filename>. If you
|
---|
| 163 | have <xref linkend="wget"/> installed, you can download and rename the file
|
---|
| 164 | in one step using the following command:</para>
|
---|
| 165 |
|
---|
| 166 | <screen><userinput>wget -O mozilla-&mozilla-version;-enigmail_makemake \
|
---|
| 167 | &enigmail-makemake-download;\
|
---|
| 168 | &enigmail-makemake-version;</userinput></screen>
|
---|
| 169 |
|
---|
[88dd2f52] | 170 | <bridgehead renderas="sect3">Mozilla Dependencies</bridgehead>
|
---|
| 171 |
|
---|
| 172 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
[7f588e9a] | 173 | <para role="required"><xref linkend="gtk2"/>,
|
---|
| 174 | <xref linkend="libidl"/>, and
|
---|
| 175 | <xref linkend="zip"/></para>
|
---|
| 176 |
|
---|
| 177 | <para>Note: <application>libjpeg</application> should have been installed
|
---|
| 178 | before <application>GTK+</application> and should exist on your system. If
|
---|
| 179 | for some reason you haven't installed <application>libjpeg</application>,
|
---|
| 180 | you should remove the <option>--with-system-jpeg</option> option from the
|
---|
| 181 | <filename>.mozconfig</filename> file created below.</para>
|
---|
| 182 |
|
---|
| 183 | <bridgehead renderas="sect4">Recommended (if you will be installing any
|
---|
| 184 | other package that utilizes NSS/NSPR, such as
|
---|
| 185 | <application>Firefox</application> or
|
---|
| 186 | <application>Thunderbird</application>)</bridgehead>
|
---|
| 187 | <para role="recommended"><xref linkend="nss"/></para>
|
---|
[88dd2f52] | 188 |
|
---|
| 189 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
[7f588e9a] | 190 | <para role="optional"><xref linkend="unzip"/>,
|
---|
[88dd2f52] | 191 | <xref linkend="gnome-vfs"/> (to build the gnomevfs extension),
|
---|
[7f588e9a] | 192 | <xref linkend="libart_lgpl"/>, and
|
---|
[88dd2f52] | 193 | <xref linkend="heimdal"/> or <xref linkend="mitkrb"/>
|
---|
[7f588e9a] | 194 | (for the GSSAPI libraries to build the negotiateauth extension)</para>
|
---|
[88dd2f52] | 195 |
|
---|
| 196 | </sect2>
|
---|
| 197 |
|
---|
| 198 | <sect2 role="installation">
|
---|
| 199 | <title>Installation of Mozilla</title>
|
---|
| 200 |
|
---|
[7f588e9a] | 201 | <para>The configuration of <application>Mozilla</application> is
|
---|
| 202 | accomplished by creating a <filename>.mozconfig</filename> file containing
|
---|
| 203 | the desired configuration options. A default <filename>.mozconfig</filename>
|
---|
| 204 | file is created below. To see the entire list of available configuration
|
---|
| 205 | options (and an abbreviated description of each one), issue
|
---|
| 206 | <command>./configure --help</command>. Additional information can also be
|
---|
| 207 | found below in the section titled <xref linkend="add-mozconfig"/>. If you
|
---|
| 208 | are going to use system-installed versions of the
|
---|
| 209 | <application>NSS</application> and <application>NSPR</application>
|
---|
| 210 | libraries, ensure you uncomment the two lines at the bottom of the file. If
|
---|
| 211 | you would prefer to download the file instead of creating it by typing or
|
---|
| 212 | cut-and-pasting, you can find it at <ulink
|
---|
| 213 | url="http://anduin.linuxfromscratch.org/files/BLFS/mozilla-&mozilla-version;-mozconfig"/>
|
---|
| 214 | (the file must be installed in the root of the source tree
|
---|
| 215 | <filename class='directory'>mozilla</filename> directory, and named
|
---|
| 216 | <filename>.mozconfig</filename>). Create the file by issuing the following
|
---|
| 217 | command:</para>
|
---|
| 218 |
|
---|
| 219 | <screen><userinput>cat > .mozconfig << "EOF"
|
---|
| 220 | <literal># Options for client.mk
|
---|
| 221 |
|
---|
| 222 | mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-build
|
---|
| 223 |
|
---|
| 224 | # Options for 'configure' (same as command-line options)
|
---|
| 225 |
|
---|
| 226 | # Mandatory options
|
---|
| 227 | ac_add_options --enable-application=suite
|
---|
| 228 | ac_add_options --prefix=/usr
|
---|
| 229 |
|
---|
| 230 | # Options for system-installed software
|
---|
| 231 | ac_add_options --with-system-zlib
|
---|
| 232 | ac_add_options --with-system-png
|
---|
| 233 | ac_add_options --with-system-jpeg
|
---|
| 234 |
|
---|
| 235 | # Options in all Mozilla-family builds
|
---|
| 236 | ac_add_options --enable-official-branding
|
---|
| 237 | ac_add_options --enable-strip
|
---|
| 238 | ac_add_options --disable-tests
|
---|
| 239 | ac_add_options --disable-installer
|
---|
| 240 | ac_add_options --disable-accessibility
|
---|
| 241 |
|
---|
| 242 | # Options used for graphics settings in Mozilla Suite (Not Seamonkey)
|
---|
| 243 | ac_add_options --enable-default-toolkit=gtk2
|
---|
| 244 | ac_add_options --enable-xft
|
---|
| 245 | ac_add_options --disable-freetype2
|
---|
| 246 |
|
---|
| 247 | # Options used just for Mozilla Suite (Not Seamonkey)
|
---|
| 248 | ac_add_options --enable-optimize
|
---|
| 249 | ac_add_options --disable-debug
|
---|
| 250 | ac_add_options --disable-logging
|
---|
| 251 | ac_add_options --enable-crypto
|
---|
| 252 | ac_add_options --enable-extensions=all
|
---|
| 253 |
|
---|
| 254 | # Options used just for Mozilla Suite
|
---|
| 255 | ac_add_options --enable-ldap
|
---|
| 256 | ac_add_options --enable-calendar
|
---|
| 257 |
|
---|
| 258 | # Options used for system-installed NSS/NSPR
|
---|
| 259 | #ac_add_options --with-system-nspr
|
---|
| 260 | #ac_add_options --with-system-nss</literal>
|
---|
| 261 |
|
---|
| 262 | EOF</userinput></screen>
|
---|
| 263 |
|
---|
| 264 | <para>If you have system-installed Network Security Services (NSS) and
|
---|
| 265 | Netscape Portable Runtime (NSPR) libraries and you uncommented the
|
---|
| 266 | appropriate lines in the <filename>.mozconfig</filename> file to utilize
|
---|
| 267 | them, apply the following patch:</para>
|
---|
| 268 |
|
---|
| 269 | <screen><userinput>patch -Np1 -i ../mozilla-&mozilla-version;-system_nss-1.patch</userinput></screen>
|
---|
| 270 |
|
---|
[88dd2f52] | 271 | <para>Compile <application>Mozilla</application> by running the
|
---|
| 272 | following commands:</para>
|
---|
| 273 |
|
---|
[7f588e9a] | 274 | <screen><userinput>export MOZILLA_OFFICIAL="1" &&
|
---|
[f939f05] | 275 | export BUILD_OFFICIAL="1" &&
|
---|
[7f588e9a] | 276 |
|
---|
| 277 | patch -Np1 -i ../mozilla-&mozilla-version;-gfx_fixes-1.patch &&
|
---|
| 278 | patch -Np1 -i ../mozilla-&mozilla-version;-gcc4-1.patch &&
|
---|
| 279 |
|
---|
| 280 | make -f client.mk build</userinput></screen>
|
---|
| 281 |
|
---|
| 282 | <para>If you're building the <application>Mozilla</application>
|
---|
| 283 | mail/newsgroup client and plan to install the
|
---|
| 284 | <application>Enigmail</application> extension, issue the following
|
---|
| 285 | commands:</para>
|
---|
[f939f05] | 286 |
|
---|
[3792baa] | 287 | <screen><userinput>tar -xf ../enigmail-&mozilla-enigmail-version;.tar.gz -C extensions &&
|
---|
| 288 | tar -xf ../ipc-&mozilla-ipc-version;.tar.gz -C extensions &&
|
---|
[7f588e9a] | 289 |
|
---|
| 290 | install -v -m755 -b ../mozilla-&mozilla-version;-enigmail_makemake \
|
---|
| 291 | extensions/ipc/makemake &&
|
---|
| 292 | install -v -m755 -b ../mozilla-&mozilla-version;-enigmail_makemake \
|
---|
| 293 | extensions/enigmail/makemake &&
|
---|
| 294 |
|
---|
| 295 | cd extensions/ipc &&
|
---|
| 296 | ./makemake -r &&
|
---|
| 297 |
|
---|
| 298 | cd ../enigmail &&
|
---|
| 299 | ./makemake -r &&
|
---|
| 300 |
|
---|
| 301 | cd ../.. &&
|
---|
| 302 | make -C ../mozilla-build/extensions/ipc &&
|
---|
| 303 | make -C ../mozilla-build/extensions/enigmail &&
|
---|
| 304 | make -C ../mozilla-build/extensions/enigmail xpi</userinput></screen>
|
---|
| 305 |
|
---|
| 306 | <para>Install <application>Mozilla</application> by issuing the following
|
---|
| 307 | commands as the <systemitem class="username">root</systemitem> user:</para>
|
---|
| 308 |
|
---|
| 309 | <screen role="root"><userinput>make -f client.mk install &&
|
---|
| 310 |
|
---|
| 311 | install -v -m644 ../mozilla-build/dist/public/ldap-private/* \
|
---|
| 312 | /usr/include/mozilla-&mozilla-version;/ldap &&
|
---|
| 313 |
|
---|
| 314 | install -v -m755 -d /usr/lib/mozilla-&mozilla-version;/defaults/isp/US &&
|
---|
| 315 | install -v -m644 mailnews/base/ispdata/movemail.rdf \
|
---|
| 316 | /usr/lib/mozilla-&mozilla-version;/defaults/isp &&
|
---|
| 317 | ln -v -s ../movemail.rdf /usr/lib/mozilla-&mozilla-version;/defaults/isp/US &&
|
---|
| 318 |
|
---|
[d1981e0] | 319 | if [ -d /usr/lib/mozilla/plugins ]; then
|
---|
[7f588e9a] | 320 | if [ -f /usr/lib/mozilla/plugins/libnullplugin.so ]; then
|
---|
| 321 | rm -vf /usr/lib/mozilla/plugins/libnullplugin.so
|
---|
| 322 | fi
|
---|
[7852d10] | 323 | mv -v /usr/lib/mozilla/plugins/* /usr/lib/mozilla-&mozilla-version;/plugins
|
---|
| 324 | rm -v -rf /usr/lib/mozilla
|
---|
[d1981e0] | 325 | fi &&
|
---|
[f939f05] | 326 |
|
---|
[7f588e9a] | 327 | ln -v -nsf mozilla-&mozilla-version; /usr/lib/mozilla &&
|
---|
| 328 | ln -v -nsf mozilla-&mozilla-version; /usr/include/mozilla</userinput></screen>
|
---|
| 329 |
|
---|
| 330 | <para>If you built <application>Mozilla</application> utilizing
|
---|
| 331 | system-installed NSS and NSPR libraries, the
|
---|
| 332 | <filename>mozilla-ns*.pc</filename> <application>pkgconfig</application>
|
---|
| 333 | files need to be modified. Issue the following command as the
|
---|
| 334 | <systemitem class="username">root</systemitem> user:</para>
|
---|
| 335 |
|
---|
| 336 | <screen role="root"><userinput>sed -i 's|/mozilla-&mozilla-version;||' /usr/lib/pkgconfig/mozilla-ns*.pc</userinput></screen>
|
---|
| 337 |
|
---|
| 338 | <para>If you did <emphasis role="strong">NOT</emphasis> build
|
---|
| 339 | <application>Mozilla</application> utilizing system-installed NSS and
|
---|
| 340 | NSPR libraries, issue the following commands as the
|
---|
| 341 | <systemitem class="username">root</systemitem> user to install the NSS
|
---|
| 342 | interface headers:</para>
|
---|
| 343 |
|
---|
| 344 | <screen role="root"><userinput>install -v -m755 -d /usr/include/mozilla-&mozilla-version;/nss &&
|
---|
| 345 | cp -v -Lf ../mozilla-build/dist/{private,public}/nss/*.h \
|
---|
| 346 | /usr/include/mozilla-&mozilla-version;/nss</userinput></screen>
|
---|
| 347 |
|
---|
| 348 | <para>If you built the <application>Enigmail</application> extension,
|
---|
| 349 | issue the following commands as the <systemitem
|
---|
| 350 | class="username">root</systemitem> user to install the
|
---|
| 351 | <filename>.xpi</filename> file into the
|
---|
| 352 | <filename class='directory'>/usr/lib/mozilla-&mozilla-version;</filename>
|
---|
| 353 | directory:</para>
|
---|
| 354 |
|
---|
| 355 | <screen role="root"><userinput>install -v -m755 -d /usr/lib/mozilla-&mozilla-version;/xpi_store &&
|
---|
| 356 | install -v -m644 ../mozilla-build/dist/bin/enigmail-&mozilla-enigmail-version;-*.xpi \
|
---|
| 357 | /usr/lib/mozilla-&mozilla-version;/xpi_store</userinput></screen>
|
---|
| 358 |
|
---|
| 359 | <para>There are two methods you can use to install the
|
---|
| 360 | <application>Enigmail</application> extension. Both are shown here and
|
---|
| 361 | provide the same functionality. The first method must be accomplished
|
---|
| 362 | now (before the object directory is removed) and uses the conventional
|
---|
| 363 | <command>make install</command> command to install the
|
---|
| 364 | <application>Enigmail</application> files straight from the distribution
|
---|
| 365 | directory of the object directory. An alternate method is shown as it
|
---|
| 366 | installs using the <filename class='extension'>.xpi</filename> file
|
---|
| 367 | created earlier and can be done later (at any time you desire) as the
|
---|
| 368 | file used to install <application>Enigmail</application> was copied into
|
---|
| 369 | <filename
|
---|
| 370 | class='directory'>/usr/lib/mozilla-&mozilla-version;/xpi_store</filename>
|
---|
| 371 | in the previous step. This method can be used to install any
|
---|
| 372 | downloaded <application>Mozilla</application> extension distributed in a
|
---|
| 373 | <filename class='extension'>.xpi</filename> file. There are many
|
---|
| 374 | extensions available for <application>Mozilla</application>. A list
|
---|
| 375 | containing many of them can be found at
|
---|
| 376 | <ulink url="http://extensionroom.mozdev.org/"/>.</para>
|
---|
| 377 |
|
---|
| 378 | <para>If you want to install the <application>Enigmail</application>
|
---|
| 379 | extension now, issue the following commands as the
|
---|
[88dd2f52] | 380 | <systemitem class="username">root</systemitem> user:</para>
|
---|
[d1981e0] | 381 |
|
---|
[7f588e9a] | 382 | <screen role="root"><userinput>make -C ../mozilla-build/extensions/ipc install &&
|
---|
| 383 | make -C ../mozilla-build/extensions/enigmail install</userinput></screen>
|
---|
| 384 |
|
---|
| 385 | <para>To install an extension from a created or download
|
---|
| 386 | <filename class='extension'>.xpi</filename> file, you simply need to
|
---|
| 387 | <quote>open</quote> the <filename class='extension'>.xpi</filename> file
|
---|
| 388 | using the <quote>Open File</quote> option of the <quote>File</quote>
|
---|
| 389 | menu of the Navigator window. You can browse to find the file (for example,
|
---|
| 390 | the <application>Enigmail</application>
|
---|
| 391 | <filename class='extension'>.xpi</filename> file is located in
|
---|
| 392 | <filename
|
---|
[ff1bb89] | 393 | class='directory'>/usr/lib/mozilla-&mozilla-version;/xpi_store</filename>),
|
---|
[7f588e9a] | 394 | select it, then follow the prompts to install the extension.</para>
|
---|
| 395 |
|
---|
| 396 | <!-- Commenting this out as there really is no need to put the Mozilla
|
---|
| 397 | Suite versions of NSS/NSPR in a system-wide location when there
|
---|
| 398 | is now a BLFS package that does this.
|
---|
[d1981e0] | 399 |
|
---|
[88dd2f52] | 400 | <para>Some libraries, including the Netscape Portable Runtime (NSPR) and
|
---|
| 401 | Network Security Services (NSS) libraries, installed by
|
---|
| 402 | <application>Mozilla</application> are also needed by other packages.
|
---|
| 403 | These libraries should be in <filename class="directory">/usr/lib</filename>
|
---|
| 404 | so that other packages can link against them. As the <systemitem
|
---|
| 405 | class="username">root</systemitem> user, move them as follows:</para>
|
---|
[f939f05] | 406 |
|
---|
[88dd2f52] | 407 | <screen role="root"><userinput>for i in \
|
---|
[5d34b74] | 408 | lib{nspr4,plc4,plds4,nss3,smime3,softokn3,ssl3}.so libsoftokn3.chk
|
---|
[f939f05] | 409 | do
|
---|
[7852d10] | 410 | mv -v /usr/lib/mozilla-&mozilla-version;/$i /usr/lib/
|
---|
| 411 | ln -v -sf ../$i /usr/lib/mozilla-&mozilla-version;/
|
---|
[88dd2f52] | 412 | done</userinput></screen>
|
---|
[f939f05] | 413 |
|
---|
[7f588e9a] | 414 | -->
|
---|
| 415 |
|
---|
| 416 | <!-- Commenting this out for now, as I believe this is only necessary
|
---|
| 417 | for the binary versions of Mozilla. I've built this and had many
|
---|
| 418 | system users access Mozilla simultaneously without having to do
|
---|
| 419 | the steps shown here.
|
---|
| 420 |
|
---|
[88dd2f52] | 421 | <para>Create the required component registries to enable multi-user
|
---|
| 422 | installs. These steps should be preformed by the <systemitem
|
---|
| 423 | class="username">root</systemitem> user each time a
|
---|
| 424 | <application>Mozilla</application> add-on is installed. This will allow
|
---|
[e615d9b] | 425 | unprivileged users to run <command>mozilla</command>. Enable multi-user
|
---|
| 426 | operation by executing the following:</para>
|
---|
[f939f05] | 427 |
|
---|
[88dd2f52] | 428 | <screen role="root"><userinput>cd /usr/lib/mozilla-&mozilla-version; &&
|
---|
[d1981e0] | 429 | export LD_LIBRARY_PATH="$PWD" &&
|
---|
| 430 | export MOZILLA_FIVE_HOME="$PWD" &&
|
---|
[f939f05] | 431 | ./regxpcom &&
|
---|
| 432 | ./regchrome &&
|
---|
[88dd2f52] | 433 | touch `find . -name *.rdf`</userinput></screen>
|
---|
[d1981e0] | 434 |
|
---|
[7f588e9a] | 435 | -->
|
---|
| 436 |
|
---|
| 437 | <para>Unset the build variables from the unprivileged user's
|
---|
| 438 | environment:</para>
|
---|
| 439 |
|
---|
| 440 | <screen><userinput>unset MOZILLA_OFFICIAL &&
|
---|
| 441 | unset BUILD_OFFICIAL</userinput></screen>
|
---|
| 442 |
|
---|
[88dd2f52] | 443 | <note>
|
---|
| 444 | <para>You should run <command>/usr/bin/mozilla</command> once as the
|
---|
| 445 | <systemitem class="username">root</systemitem> user (or any user with
|
---|
| 446 | write privileges) to create some necessary additional files in the
|
---|
[7f588e9a] | 447 | <filename class='directory'>/usr</filename> hierarchy. Also do this
|
---|
| 448 | each time you install additional extensions.</para>
|
---|
[88dd2f52] | 449 | </note>
|
---|
[f939f05] | 450 |
|
---|
[88dd2f52] | 451 | </sect2>
|
---|
| 452 |
|
---|
[7f588e9a] | 453 | <sect2 role="commands" id="add-mozconfig"
|
---|
| 454 | xreflabel="Additional .mozconfig Options">
|
---|
[88dd2f52] | 455 |
|
---|
[7f588e9a] | 456 | <title>Additional .mozconfig Options</title>
|
---|
[88dd2f52] | 457 |
|
---|
[7f588e9a] | 458 | <para>Information about some of the additional options which can be added
|
---|
| 459 | to the <filename>.mozconfig</filename> configuration file is shown below.
|
---|
| 460 | Note that this is just a few of the options. You may wish to run
|
---|
| 461 | <command>./configure --help</command> and review each of the listed options
|
---|
| 462 | to discover what affect they have on the build. Feel free to add or remove
|
---|
| 463 | options to tailor the build to your desires. Listed below are some common
|
---|
| 464 | options not in the default <filename>.mozconfig</filename> file but can be
|
---|
| 465 | added in order to have the described effect on the Mozilla compile.</para>
|
---|
| 466 |
|
---|
| 467 | <para><option>ac_add_options --enable-elf-dynstr-gc</option>: Removes
|
---|
| 468 | un-referenced strings from ELF shared objects generated during the build.
|
---|
| 469 | Note that this option breaks the build on alpha.</para>
|
---|
[88dd2f52] | 470 |
|
---|
[7f588e9a] | 471 | <para><option>ac_add_options --disable-mailnews</option>: Disables the mail
|
---|
| 472 | and news clients.</para>
|
---|
[88dd2f52] | 473 |
|
---|
[7f588e9a] | 474 | <para><option>ac_add_options --disable-ldap</option>: Disables LDAP support,
|
---|
| 475 | recommended if mail is disabled.</para>
|
---|
[88dd2f52] | 476 |
|
---|
[7f588e9a] | 477 | <para><option>ac_add_options --enable-xterm-updates</option>: Displays the
|
---|
| 478 | current command in the <command>xterm</command> window title during the
|
---|
| 479 | compilation.</para>
|
---|
[88dd2f52] | 480 |
|
---|
[7f588e9a] | 481 | <para><option>ac_add_options --enable-plaintext-editor-only</option>:
|
---|
| 482 | Disables support for HTML editing. Do not use this switch if you are
|
---|
| 483 | building the mail-news component.</para>
|
---|
[88dd2f52] | 484 |
|
---|
| 485 | </sect2>
|
---|
| 486 |
|
---|
| 487 | <sect2 role="commands">
|
---|
[7f588e9a] | 488 | <title>.mozconfig Option Explanations</title>
|
---|
| 489 |
|
---|
| 490 | <para>To simplify reading the options below, they are labeled without
|
---|
| 491 | <parameter>ac_add_options</parameter> inserted at the beginning of the
|
---|
| 492 | option.</para>
|
---|
[88dd2f52] | 493 |
|
---|
[7f588e9a] | 494 | <para><parameter>mk_add_options
|
---|
| 495 | MOZ_OBJDIR=@TOPSRCDIR@/../mozilla-build</parameter>: Creates an object
|
---|
| 496 | directory and specifies to build the package in that directory. If desired,
|
---|
| 497 | modify the location of the object directory to a directory inside the
|
---|
| 498 | source tree by removing <quote>../</quote> from the line.</para>
|
---|
[88dd2f52] | 499 |
|
---|
[7f588e9a] | 500 | <para><parameter>--enable-application=suite</parameter>: Identifies the
|
---|
| 501 | build as a <application>Mozilla</application> suite build.</para>
|
---|
[88dd2f52] | 502 |
|
---|
[7f588e9a] | 503 | <para><parameter>--with-system-zlib --with-system-png
|
---|
| 504 | --with-system-jpeg</parameter>: Uses the system-installed versions of these
|
---|
| 505 | packages.</para>
|
---|
[88dd2f52] | 506 |
|
---|
[7f588e9a] | 507 | <para><parameter>--enable-official-branding</parameter>: Uses the official
|
---|
| 508 | Mozilla logos and icons in the built binaries. Due to license restrictions,
|
---|
| 509 | you may not distribute binaries created using this option.</para>
|
---|
[88dd2f52] | 510 |
|
---|
[7f588e9a] | 511 | <para><parameter>--enable-default-toolkit=gtk2 --enable-xft
|
---|
| 512 | --disable-freetype2</parameter>: Use the GTK2 toolkit for graphics
|
---|
| 513 | rendering and XFT (automatically pulls in the
|
---|
| 514 | <application>FreeType</application> libraries) for font rendering.</para>
|
---|
[88dd2f52] | 515 |
|
---|
| 516 | <para><parameter>--enable-extensions=all</parameter>: Enables all available
|
---|
[7f588e9a] | 517 | extensions. If you want, you can disable any or all extensions other than
|
---|
| 518 | the browser by changing this switch to
|
---|
[88dd2f52] | 519 | <option>--enable-extensions="default,-venkman,-inspector,..."</option>.
|
---|
| 520 | For a short description of the various extensions available with the
|
---|
[7f588e9a] | 521 | <application>Mozilla</application> source, see <ulink
|
---|
[88dd2f52] | 522 | url="http://linuxfromscratch.org/~tushar/downloads/mozilla-extensions.txt"/>.
|
---|
| 523 | </para>
|
---|
| 524 |
|
---|
| 525 | <para><parameter>--enable-crypto</parameter>: Enable the Personal
|
---|
| 526 | Security Manager to enable SSL connections.</para>
|
---|
| 527 |
|
---|
| 528 | <para><parameter>--enable-calendar</parameter>: Builds the calendar
|
---|
[7f588e9a] | 529 | application. Remove this parameter if you don't wish to build it.</para>
|
---|
[88dd2f52] | 530 |
|
---|
| 531 | <para><parameter>--enable-xinerama; --enable-optimize; --enable-reorder;
|
---|
| 532 | --enable-strip; --enable-cpp-rtti --disable-accessibility; --disable-debug;
|
---|
| 533 | --disable-tests; --disable-logging; --disable-pedantic;
|
---|
| 534 | --disable-installer</parameter>: Various options that affect what components
|
---|
| 535 | are built and some optimization options. You can pick and choose from these
|
---|
| 536 | options. More information on them, and many other available options, can be
|
---|
| 537 | found by running <command>./configure --help</command>.</para>
|
---|
| 538 |
|
---|
[7f588e9a] | 539 | </sect2>
|
---|
| 540 |
|
---|
| 541 | <sect2 role="commands">
|
---|
| 542 | <title>Command Explanations</title>
|
---|
| 543 |
|
---|
| 544 | <para><command>export MOZILLA_OFFICIAL="1"
|
---|
| 545 | export BUILD_OFFICIAL="1"</command>: Sets some variables that affect what
|
---|
| 546 | and how the package is built. These two exports specify a distribution is
|
---|
| 547 | being built.</para>
|
---|
| 548 |
|
---|
| 549 | <para><command>make -f client.mk ...</command>: Mozilla products are
|
---|
| 550 | packaged to allow the use of a configuration file which can be used to
|
---|
| 551 | pass the configuration settings to the <command>configure</command>
|
---|
| 552 | command. <command>make</command> uses the <filename>client.mk</filename>
|
---|
| 553 | file to get initial configuration and setup parameters, then depending on
|
---|
| 554 | the target parameter (<parameter>build</parameter> or
|
---|
| 555 | <parameter>install</parameter>), either runs the
|
---|
| 556 | <command>configure</command> script and compiles the package or installs
|
---|
| 557 | the package.</para>
|
---|
| 558 |
|
---|
| 559 | <para><command>./makemake -r</command>: This command is used to recursively
|
---|
| 560 | create <filename>Makefile</filename>s in the current directory.</para>
|
---|
| 561 |
|
---|
| 562 | <para><command>make -C ... xpi</command>: This command builds the
|
---|
| 563 | <application>Enigmail</application>
|
---|
| 564 | <filename class='extension'>.xpi</filename> file which can be used to
|
---|
| 565 | install <application>Enigmail</application>.</para>
|
---|
| 566 |
|
---|
| 567 | <para><command>install .../movemail.rdf ...</command>: This
|
---|
| 568 | command is used to install a file inadvertently left out of the
|
---|
| 569 | installation script.</para>
|
---|
[88dd2f52] | 570 |
|
---|
| 571 | <para><command>if [ -d /usr/lib/mozilla/plugins ] ... fi</command>: Some
|
---|
| 572 | applications may have already installed <application>Mozilla</application>
|
---|
[7f588e9a] | 573 | plugins. This set of commands moves any existing plugins to the newly
|
---|
| 574 | created plugin directory, then removes the existing
|
---|
[88dd2f52] | 575 | <filename class='directory'>/usr/lib/mozilla</filename> directory.</para>
|
---|
| 576 |
|
---|
| 577 | <para><command>ln -nsf mozilla-&mozilla-version; ...</command>:
|
---|
[7f588e9a] | 578 | <application>Mozilla</application> installs headers and libraries in
|
---|
| 579 | version specific directories. These commands makes symbolic links so that
|
---|
[88dd2f52] | 580 | applications depending on <application>Mozilla</application> (such as
|
---|
| 581 | <application>OpenOffice</application>, <application>Galeon</application>,
|
---|
| 582 | etc.) don't need to know which version of <application>Mozilla</application>
|
---|
| 583 | is installed.</para>
|
---|
| 584 |
|
---|
| 585 | </sect2>
|
---|
| 586 |
|
---|
| 587 | <sect2 role="configuration">
|
---|
| 588 | <title>Configuring Mozilla</title>
|
---|
| 589 |
|
---|
| 590 | <para>No specific configuration is required as long as the
|
---|
| 591 | <command>mozilla</command> script is in the user's path. If
|
---|
| 592 | <application>Mozilla</application> is installed in a non-standard location,
|
---|
[7f588e9a] | 593 | then make a symlink to the <command>mozilla</command> script in the
|
---|
| 594 | <filename class="directory">/usr/bin</filename> directory.</para>
|
---|
[88dd2f52] | 595 |
|
---|
| 596 | <para>Many applications look for <command>netscape</command> when they need
|
---|
| 597 | to open a browser. You may make the following symlink for convenience (as
|
---|
| 598 | the <systemitem class="username">root</systemitem> user).</para>
|
---|
| 599 |
|
---|
| 600 | <screen role="root"><userinput>ln -v -sf mozilla /usr/bin/netscape</userinput></screen>
|
---|
| 601 |
|
---|
| 602 | <para>For installing various <application>Mozilla</application> plugins,
|
---|
| 603 | refer to <ulink url="http://plugindoc.mozdev.org/linux.html">Mozdev's
|
---|
| 604 | PluginDoc Project</ulink>. If you have <xref linkend="jdk"/> already
|
---|
| 605 | installed, create the following link as the
|
---|
| 606 | <systemitem class="username">root</systemitem> user to utilize the
|
---|
| 607 | <application>JAVA</application> plugin: </para>
|
---|
| 608 |
|
---|
| 609 | <screen role="root"><userinput>ln -v -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so \
|
---|
| 610 | /usr/lib/mozilla-&mozilla-version;/plugins</userinput></screen>
|
---|
| 611 |
|
---|
[7f588e9a] | 612 | <para>Along with using the <quote>Preferences</quote> menu to configure
|
---|
| 613 | <application>Mozilla</application>'s options and preferences to suit
|
---|
| 614 | individual tastes, finer grain control of many options is only available
|
---|
| 615 | using a tool not available from the general menu system. To access this
|
---|
| 616 | tool, you'll need to open a Navigator window and enter
|
---|
| 617 | <systemitem role='url'>about:config</systemitem> in the
|
---|
| 618 | address bar. This will display a list of the configuration preferences and
|
---|
| 619 | information related to each one. You can use the <quote>Filter:</quote> bar
|
---|
| 620 | to enter search criteria and narrow down the listed items. Changing a
|
---|
| 621 | preference can be done using two methods. One, if the preference has a
|
---|
| 622 | boolean value (True/False), simply double-click on the preference to toggle
|
---|
| 623 | the value and two, for other preferences simply right-click on the desired
|
---|
| 624 | line, choose <quote>Modify</quote> from the menu and change the value.
|
---|
| 625 | Creating new preference items is accomplished in the same way, except
|
---|
| 626 | choose <quote>New</quote> from the menu and provide the desired data into
|
---|
| 627 | the fields when prompted.</para>
|
---|
| 628 |
|
---|
| 629 | <tip>
|
---|
| 630 | <para>There is a multitude of configuration parameters you can tweak to
|
---|
| 631 | customize <application>Mozilla</application>. A very extensive and
|
---|
| 632 | up-to-date list of these parameters can be found at <ulink
|
---|
| 633 | url="http://preferential.mozdev.org/preferences.html"/>.</para>
|
---|
| 634 | </tip>
|
---|
| 635 |
|
---|
[88dd2f52] | 636 | </sect2>
|
---|
| 637 |
|
---|
| 638 | <sect2 role="content">
|
---|
| 639 | <title>Contents</title>
|
---|
| 640 |
|
---|
| 641 | <segmentedlist>
|
---|
[7f588e9a] | 642 | <segtitle>Installed Programs</segtitle>
|
---|
[88dd2f52] | 643 | <segtitle>Installed Libraries</segtitle>
|
---|
| 644 | <segtitle>Installed Directories</segtitle>
|
---|
| 645 |
|
---|
| 646 | <seglistitem>
|
---|
[7f588e9a] | 647 | <seg>mozilla and mozilla-config</seg>
|
---|
[88dd2f52] | 648 | <seg>Numerous libraries, browser, and email/newsgroup components,
|
---|
| 649 | plugins, extensions, and helper modules installed in <filename
|
---|
| 650 | class='directory'>/usr/lib/mozilla-&mozilla-version;</filename></seg>
|
---|
| 651 | <seg>/usr/include/mozilla-&mozilla-version;,
|
---|
| 652 | /usr/lib/mozilla-&mozilla-version;, and
|
---|
| 653 | /usr/share/idl/mozilla-&mozilla-version;</seg>
|
---|
| 654 | </seglistitem>
|
---|
| 655 | </segmentedlist>
|
---|
| 656 |
|
---|
| 657 | <variablelist>
|
---|
| 658 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 659 | <?dbfo list-presentation="list"?>
|
---|
| 660 | <?dbhtml list-presentation="table"?>
|
---|
| 661 |
|
---|
| 662 | <varlistentry id="mozilla-prog">
|
---|
| 663 | <term><command>mozilla</command></term>
|
---|
| 664 | <listitem>
|
---|
| 665 | <para>is a browser/email/newsgroup/calendar/chat client suite. The
|
---|
| 666 | various components such as the Composer, mail-news client, calendar,
|
---|
| 667 | IRC chat client and address book can be accessed from the menu after
|
---|
| 668 | <command>mozilla</command> starts or via command-line switches to
|
---|
| 669 | the <command>mozilla</command> script. Issue
|
---|
| 670 | <command>man mozilla</command> for additional information.</para>
|
---|
| 671 | <indexterm zone="mozilla mozilla-prog">
|
---|
| 672 | <primary sortas="b-mozilla">mozilla</primary>
|
---|
| 673 | </indexterm>
|
---|
| 674 | </listitem>
|
---|
| 675 | </varlistentry>
|
---|
| 676 |
|
---|
| 677 | </variablelist>
|
---|
| 678 |
|
---|
| 679 | </sect2>
|
---|
[f45b1953] | 680 |
|
---|
| 681 | </sect1>
|
---|