1 | <sect2>
|
---|
2 | <title>Installation of <application>Mozilla</application></title>
|
---|
3 |
|
---|
4 | <!--
|
---|
5 | <note>
|
---|
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
|
---|
9 | tag is now supported in <application>Mozilla</application> to appease the financial institutions. As per
|
---|
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
|
---|
16 | the <application>Mozilla</application> source tree and search for the line:
|
---|
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>
|
---|
20 | </note>
|
---|
21 | -->
|
---|
22 |
|
---|
23 | <warning><para>Do not install Mozilla, Mozilla Firefox and Mozilla Thunderbird
|
---|
24 | with a single prefix since they install identically named files. The BLFS Book
|
---|
25 | installs Mozilla in <filename>/usr</filename> while Mozilla Firefox and Mozilla
|
---|
26 | Thunderbird are installed in <filename>/opt</filename>.</para></warning>
|
---|
27 |
|
---|
28 | <para>If you plan to install Enigmail, extract the ipc and enigmail tarballs
|
---|
29 | in the <filename class="directory">extensions</filename> directory.</para>
|
---|
30 |
|
---|
31 | <para>Compile <application>Mozilla</application> by running the following
|
---|
32 | commands:</para>
|
---|
33 |
|
---|
34 | <screen><userinput><command>export MOZILLA_OFFICIAL="1" &&
|
---|
35 | export BUILD_OFFICIAL="1" &&
|
---|
36 | ./configure --prefix=/usr \
|
---|
37 | --with-default-mozilla-five-home=/usr/lib/mozilla \
|
---|
38 | --enable-default-toolkit=gtk2 \
|
---|
39 | --with-x --with-system-zlib \
|
---|
40 | --with-system-jpeg --with-system-png --with-system-mng \
|
---|
41 | --enable-xft --enable-crypto \
|
---|
42 | --disable-accessibility \
|
---|
43 | --disable-tests --disable-debug \
|
---|
44 | --disable-logging --enable-reorder \
|
---|
45 | --enable-strip --disable-pedantic \
|
---|
46 | --enable-cpp-rtti --enable-extensions=all &&
|
---|
47 | make</command></userinput></screen>
|
---|
48 |
|
---|
49 | <para>If installing Enigmail, execute the following steps:</para>
|
---|
50 |
|
---|
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>
|
---|
54 |
|
---|
55 | <para>Install <application>Mozilla</application> as follows:</para>
|
---|
56 |
|
---|
57 | <screen><userinput><command>make install &&
|
---|
58 | install -d /usr/include/mozilla-&mozilla-version;/nss &&
|
---|
59 | cp -Lf dist/private/nss/*.h dist/public/nss/*.h \
|
---|
60 | /usr/include/mozilla-&mozilla-version;/nss &&
|
---|
61 | ln -nsf mozilla-&mozilla-version; /usr/include/mozilla &&
|
---|
62 | ln -nsf mozilla-&mozilla-version; /usr/lib/mozilla</command></userinput></screen>
|
---|
63 |
|
---|
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 |
|
---|
74 | <para>Install Enigmail as follows:</para>
|
---|
75 |
|
---|
76 | <screen><userinput><command>make -C extensions/ipc install &&
|
---|
77 | make -C extensions/enigmail install</command></userinput></screen>
|
---|
78 |
|
---|
79 | <para>To enable multi-user operation, execute the following:</para>
|
---|
80 |
|
---|
81 | <screen><userinput><command>cd /usr/lib/mozilla-&mozilla-version; &&
|
---|
82 | export LD_LIBRARY_PATH="/usr/lib/mozilla-&mozilla-version;" &&
|
---|
83 | export MOZILLA_FIVE_HOME="/usr/lib/mozilla-&mozilla-version;" &&
|
---|
84 | ./regxpcom &&
|
---|
85 | ./regchrome &&
|
---|
86 | touch `find /usr/lib/mozilla-&mozilla-version; -name *.rdf`</command></userinput></screen>
|
---|
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
|
---|
94 | have the described effect on the <application>Mozilla</application> compile.</para>
|
---|
95 |
|
---|
96 | <para><option>--enable-elf-dynstr-gc</option>: Removes un-referenced
|
---|
97 | strings from <acronym>ELF</acronym> shared objects generated during the build.
|
---|
98 | Note that this option breaks build on alpha.</para>
|
---|
99 |
|
---|
100 | <para><option>--disable-mailnews</option>: Disable the mail and news
|
---|
101 | clients.</para>
|
---|
102 |
|
---|
103 | <para><option>--disable-ldap</option>: Disable <acronym>LDAP</acronym>
|
---|
104 | Support, recommended if mail is disabled.</para>
|
---|
105 |
|
---|
106 | <para><option>--enable-calendar</option>: Build the calendar client.</para>
|
---|
107 |
|
---|
108 | <para><option>--enable-xterm-updates</option>: This option is
|
---|
109 | for enabling the <command>xterm</command> title with the current command when
|
---|
110 | compiling.</para>
|
---|
111 |
|
---|
112 | <para><option>--enable-plaintext-editor-only</option>: Disable support
|
---|
113 | for <acronym>HTML</acronym> editing. Do not use this switch if you are building
|
---|
114 | the mail-news component.</para>
|
---|
115 |
|
---|
116 | </sect2>
|
---|