[2aaa7e5] | 1 | <sect2>
|
---|
[21456e1] | 2 | <title>Installation of <application>Mozilla</application></title>
|
---|
[2aaa7e5] | 3 |
|
---|
[a41bc9f4] | 4 | <!--
|
---|
[904004f] | 5 | <note>
|
---|
[1c6182e] | 6 | <para>According to the financial institutions, the following hack makes your
|
---|
| 7 | browser insecure. You have been warned. Many sites use an MS-IE specific tag
|
---|
| 8 | (autocomplete=off) to prevent autocomplete from working in some forms. This
|
---|
[46bca118] | 9 | tag is now supported in <application>Mozilla</application> to appease the financial institutions. As per
|
---|
[1c6182e] | 10 | the requirements of the financial institutions, they will not even accept a
|
---|
| 11 | solution where this a preference option. However our opinion is that it should
|
---|
| 12 | be in the hands of the user. To enable autocomplete to bypass
|
---|
| 13 | this restriction, we need to make a slight modification in the code.</para>
|
---|
| 14 |
|
---|
| 15 | <para>Open the file <filename>extensions/wallet/src/wallet.cpp</filename> in
|
---|
[46bca118] | 16 | the <application>Mozilla</application> source tree and search for the line:
|
---|
[1c6182e] | 17 | <screen>#define WALLET_DONT_CACHE_ALL_PASSWORDS</screen>
|
---|
| 18 | Then delete or comment out the line. Now, if anyone tells you MS-IE is user
|
---|
| 19 | friendly, give them this example!</para>
|
---|
[904004f] | 20 | </note>
|
---|
[a41bc9f4] | 21 | -->
|
---|
[1c6182e] | 22 |
|
---|
[d62e0e42] | 23 | <warning><para>Do not install Mozilla, Mozilla Firefox and Mozilla Thunderbird
|
---|
[8a039e2] | 24 | with a single prefix since they install identically named files. The BLFS Book
|
---|
[d62e0e42] | 25 | installs Mozilla in <filename>/usr</filename> while Mozilla Firefox and Mozilla
|
---|
| 26 | Thunderbird are installed in <filename>/opt</filename>.</para></warning>
|
---|
| 27 |
|
---|
[eef5089b] | 28 | <para>If you plan to install Enigmail, extract the ipc and enigmail tarballs
|
---|
[f92a515] | 29 | in the <filename class="directory">extensions</filename> directory.</para>
|
---|
| 30 |
|
---|
| 31 | <para>Compile <application>Mozilla</application> by running the following
|
---|
[904004f] | 32 | commands:</para>
|
---|
| 33 |
|
---|
| 34 | <screen><userinput><command>export MOZILLA_OFFICIAL="1" &&
|
---|
| 35 | export BUILD_OFFICIAL="1" &&
|
---|
| 36 | ./configure --prefix=/usr \
|
---|
[cf47a113] | 37 | --with-default-mozilla-five-home=/usr/lib/mozilla \
|
---|
| 38 | --enable-default-toolkit=gtk2 \
|
---|
[2aaa7e5] | 39 | --with-x --with-system-zlib \
|
---|
| 40 | --with-system-jpeg --with-system-png --with-system-mng \
|
---|
| 41 | --enable-xft --enable-crypto \
|
---|
[f5b4f72] | 42 | --disable-accessibility \
|
---|
[2aaa7e5] | 43 | --disable-tests --disable-debug \
|
---|
| 44 | --disable-logging --enable-reorder \
|
---|
[583cf2e4] | 45 | --enable-strip --disable-pedantic \
|
---|
[0f47226] | 46 | --enable-cpp-rtti --enable-extensions=all &&
|
---|
[f92a515] | 47 | make</command></userinput></screen>
|
---|
| 48 |
|
---|
| 49 | <para>If installing Enigmail, execute the following steps:</para>
|
---|
| 50 |
|
---|
[b4169fa9] | 51 | <screen><userinput><command>build/autoconf/make-makefile extensions/ipc extensions/enigmail &&
|
---|
| 52 | make -C extensions/ipc &&
|
---|
| 53 | make -C extensions/enigmail</command></userinput></screen>
|
---|
[f92a515] | 54 |
|
---|
| 55 | <para>Install <application>Mozilla</application> as follows:</para>
|
---|
| 56 |
|
---|
| 57 | <screen><userinput><command>make install &&
|
---|
[65adb85] | 58 | install -d /usr/include/mozilla-&mozilla-version;/nss &&
|
---|
[1c6182e] | 59 | cp -Lf dist/private/nss/*.h dist/public/nss/*.h \
|
---|
[65adb85] | 60 | /usr/include/mozilla-&mozilla-version;/nss &&
|
---|
| 61 | ln -nsf mozilla-&mozilla-version; /usr/include/mozilla &&
|
---|
[f92a515] | 62 | ln -nsf mozilla-&mozilla-version; /usr/lib/mozilla</command></userinput></screen>
|
---|
| 63 |
|
---|
[167dc1dc] | 64 | <para>Some libraries installed by mozilla are also needed by other packages. These
|
---|
| 65 | libraries should be in <filename>/usr/lib</filename> so that other packages can
|
---|
| 66 | link against these. Move them as follows:</para>
|
---|
| 67 |
|
---|
| 68 | <screen><userinput><command>for i in lib{nspr4,plc4,plds4,nss3,smime3,softokn3,ssl3}.so libsoftokn3.chk
|
---|
| 69 | do
|
---|
| 70 | mv /usr/lib/mozilla-&mozilla-version;/$i /usr/lib/
|
---|
| 71 | ln -sf ../$i /usr/lib/mozilla-&mozilla-version;/
|
---|
| 72 | done</command></userinput></screen>
|
---|
| 73 |
|
---|
[f92a515] | 74 | <para>Install Enigmail as follows:</para>
|
---|
| 75 |
|
---|
[b4169fa9] | 76 | <screen><userinput><command>make -C extensions/ipc install &&
|
---|
| 77 | make -C extensions/enigmail install</command></userinput></screen>
|
---|
[f92a515] | 78 |
|
---|
| 79 | <para>To enable multi-user operation, execute the following:</para>
|
---|
| 80 |
|
---|
| 81 | <screen><userinput><command>cd /usr/lib/mozilla-&mozilla-version; &&
|
---|
[65adb85] | 82 | export LD_LIBRARY_PATH="/usr/lib/mozilla-&mozilla-version;" &&
|
---|
| 83 | export MOZILLA_FIVE_HOME="/usr/lib/mozilla-&mozilla-version;" &&
|
---|
[2aaa7e5] | 84 | ./regxpcom &&
|
---|
| 85 | ./regchrome &&
|
---|
[65adb85] | 86 | touch `find /usr/lib/mozilla-&mozilla-version; -name *.rdf`</command></userinput></screen>
|
---|
[2aaa7e5] | 87 |
|
---|
| 88 | </sect2>
|
---|
| 89 |
|
---|
| 90 | <sect2>
|
---|
| 91 | <title>Optional Extra Switches</title>
|
---|
| 92 |
|
---|
| 93 | <para>Each of these switches can be added to the configure line in order to
|
---|
[237b6d9] | 94 | have the described effect on the <application>Mozilla</application> compile.</para>
|
---|
[2aaa7e5] | 95 |
|
---|
[2be0e0d] | 96 | <para><option>--enable-elf-dynstr-gc</option>: Removes un-referenced
|
---|
[21456e1] | 97 | strings from <acronym>ELF</acronym> shared objects generated during the build.
|
---|
| 98 | Note that this option breaks build on alpha.</para>
|
---|
[766e17e] | 99 |
|
---|
[237b6d9] | 100 | <para><option>--disable-mailnews</option>: Disable the mail and news
|
---|
[2aaa7e5] | 101 | clients.</para>
|
---|
| 102 |
|
---|
[237b6d9] | 103 | <para><option>--disable-ldap</option>: Disable <acronym>LDAP</acronym>
|
---|
[21456e1] | 104 | Support, recommended if mail is disabled.</para>
|
---|
[2aaa7e5] | 105 |
|
---|
[e49080a] | 106 | <para><option>--enable-calendar</option>: Build the calendar client.</para>
|
---|
[2aaa7e5] | 107 |
|
---|
[237b6d9] | 108 | <para><option>--enable-xterm-updates</option>: This option is
|
---|
[21456e1] | 109 | for enabling the <command>xterm</command> title with the current command when
|
---|
| 110 | compiling.</para>
|
---|
[2aaa7e5] | 111 |
|
---|
[237b6d9] | 112 | <para><option>--enable-plaintext-editor-only</option>: Disable support
|
---|
[21456e1] | 113 | for <acronym>HTML</acronym> editing. Do not use this switch if you are building
|
---|
| 114 | the mail-news component.</para>
|
---|
[2aaa7e5] | 115 |
|
---|
| 116 | </sect2>
|
---|