Mozilla Notes

 

Contents

The Mozilla Organization has produced several software packages that are worth promoting, so this page is my attempt to help out with spreading the good word.

 
Tech Notes
 
[Back to Top of Page]

Compiling Mozilla

Compiling Mozilla proved to be very difficult for me. gemal.dk has a great set of steps for this, which I recommend following. Other issues I encountered:

  • I tried compiling with Microsoft's free C++ tools, but I kept getting errors of the form:
    configure: error: Midl version was found. Midl version must be 5.x.x (VC6*) or 6.00.0347 (VC7) or 6.00.0361 (VC.net 2003).
    *** Fix above errors and then restart with "make -f client.mk build"
    It turns out that the midl.exe file isn't included in Microsoft's free tools, and after an hour or two of searching on Microsoft's site I couldn't figure out where to get it from.
  • So I used this site as my reference, downloading cygwin and basically following his instructions. Note that you should download exactly what he tells you to get from Mingw, and install those files exactly as specified.
  • My mozset.bat file ended up looking like this:
    @echo off
    set MOZ_TOOLS=c:\mozilla\moztools
    set PATH=c:\mozilla\mingw\bin;c:\cygwin\bin;%MOZ_TOOLS%\bin;%PATH%
    set HOME=c:\mozilla
    set CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
  • In addition you must create a .mozconfig file with at least the following in it, otherwise you will get an error about the C compiler not being able to create executables:
    # basic mozconfig file with minimum requirements for MinGW gcc build
    CC=gcc
    CXX=g++
    CPP=cpp
    AS=as
    LD=ld

    # the following options don't yet work under gcc-on-win32
    ac_add_options --disable-accessibility
    ac_add_options --disable-activex
    Place the .mozconfig file into your c:\mozilla\mozilla\ directory.
  • This error:
    make
    make[1]: Entering directory `/cygdrive/c/mozilla/mozilla'
    make[1]: *** No targets. Stop.
    make[1]: Leaving directory `/cygdrive/c/mozilla/mozilla'
    make: *** [build] Error 2
    was resolved by deleting the entire Mozilla tree, starting over, and doing a make -f client.mk build_all_depend instead of make -f client.mk build_all.
  • To get the code from CVS: make -f client.mk pull_all
  • To update the code from CVS: make -f client.mk checkout
  • If dos2unix fails, make sure the cygutils package is installed.
  • The error:
    make[4]: Entering directory `/cygdrive/c/mozilla/mozilla/nsprpub'
    cd config; /usr/bin/make -j1 export
    make[5]: Entering directory `/cygdrive/c/mozilla/mozilla/nsprpub/config'
    sh /cygdrive/c/mozilla/mozilla/nsprpub/build/cygwin-wrapper cl -Fonow.obj -
    c -W3 -nologo -GF -Gy -MDd -Od -Z7 -UNDEBUG -DDEBUG_wrh2 -UWINNT -DMOZILLA
    _CLIENT=1 -DDEBUG=1 -DXP_PC=1 -DWIN32=1 -D_DEBUG=1 -DWIN95=1 -D_PR_GLOBAL_THREAD
    S_ONLY=1 -D_X86_=1 -DFORCE_PR_LOG /cygdrive/c/mozilla/mozilla/nsprpub/config/now.c
    exec: cl: not found
    make[5]: *** [now.obj] Error 127
    was resolved by updating the PATH variable so that Cygwin was before MOZ_TOOLS.
  • Note that compiling takes a long, long, long time, and uses up whatever diskspace it can get. Compiling on a Pentium-1133 with 256MB of RAM took me over four hours and ate up 3.6GB of available disk space. You have been warned.
  • Once compiled, all executables are found in the mozilla/dist/bin directory.
[ Comments () ]
 
[Back to Top of Page]

Importing Email From Eudora

At present Mozilla will import mail from Eudora, but due to Mozilla bug 3157 it is likely that the imported mail will display HTML tags, rather than displaying the message as HTML. To clean up the imported mail I recommend using this Java utility that will automatically clean up the imported mail. It still isn't perfect (backup your mail file before running!) but it works fine on the two different (large) Eudora installations that I've tested against.

If you prefer the more painful manual approach you can do the following:

  1. Compact all Mozilla mail folder using the File -> Compact Folders option in Mozilla.
  2. Close Mozilla and then back up all of the Mozilla mail files located in C:\Documents and Settings\user\Application Data\Mozilla\Profiles\default\xxxxxxx.slt\Mail\mailbox\.
  3. Using a text editor, open any mailbox file within the C:\Documents and Settings\user\Application Data\Mozilla\Profiles\default\xxxxxxx.slt\Mail\mailbox\ directory. First, delete all opening and closing <x-flowed> tags.
    From - Mon Jan 1 00:00:00 1965
    Return-Path: foo@bar.com
    Received: from first.bar.com (first.bar.com [255.255.255.255]) by second.yahoo.com
    Message-ID: <580F4ACFCD8F4E439B06B815110418C750DE77@third.bar.com>
    From: "Foo, Bar" <foo@bar.com>
    To: "Ryan Holliday" <ryan.holliday@gmail.com>
    Subject: Hello
    Date: Wed, 22 May 2002 12:29:42 -0700
    Content-transfer-encoding: 8bit

    <x-flowed>
    <x-html>
    <b>This is an HTML e-mail</b>
    </x-html>
    </x-flowed>
  4. Now look for any messages containing HTML. For each message, verify that the message headers contain a Content-Type type tag and that the Content-Type is an HTML type. If no Content-Type entry is present, add the line "Content-type: text/html" to the message headers.
    From - Mon Jan 1 00:00:00 1965
    Return-Path: foo@bar.com
    Received: from first.bar.com (first.bar.com [255.255.255.255]) by second.yahoo.com
    Message-ID: <580F4ACFCD8F4E439B06B815110418C750DE77@third.bar.com>
    From: "Foo, Bar" <foo@bar.com>
    To: "Ryan Holliday" <ryan.holliday@gmail.com>
    Subject: Hello
    Date: Wed, 22 May 2002 12:29:42 -0700
    Content-type: text/html
    Content-transfer-encoding: 8bit

    <x-flowed>
    <x-html>
    <b>This is an HTML e-mail</b>
    </x-html>
    </x-flowed>
  5. Delete the *.msf file that corresponds to the mailbox that was edited. For example, if the Inbox file was modified, delete the Inbox.msf file.
  6. Restart Mozilla mail. A new *.msf file should be generated and the mail should appear correctly.
[ Comments () ]
 
[Back to Top of Page]

Importing Mozilla Email Into Thunderbird

The ability to import existing email from the Mozilla suite into Thunderbird will probably be added in a future release, but for now the steps listed below are the best way of importing that I'm aware of. Note that there is a FAQ about this, but it suggests importing the entire Mozilla profile which is overkill. Please be aware that the suggestions below are not guaranteed to work, although they work for me. Use at your own risk.

  1. Start Thunderbird for the first time and create a mailbox with the same name and settings as your current Mozilla mailbox.
  2. Copy the C:\Documents and Settings\user\Application Data\Mozilla\Profiles\default\xxxxxxx.slt\Mail\ folder to C:\Documents and Settings\user\Application Data\Thunderbird\Profiles\default\xxxxxxx.slt\Mail\. This will copy all existing email messages.
  3. Copy the abook.mab file to import your address book.
  4. To transfer mail server settings you can either copy the prefs.js file, or you can copy only those preferences within prefs.js that deal with mail.
  5. To copy the junk mail training file, copy the training.dat file. Be aware that Thunderbird may use different junk mail settings, so this may actually adversely affect junk mail handling.
[ Comments () ]
 
[Back to Top of Page]

Dual-Boot Configurations

I'm running both Linux and Windows XP on my laptop, so to share data between the two I did the following:

Thunderbird

  1. Create a FAT32 partition that can be read by both Windows and Linux.
  2. Copy all files from the Windows C:\Documents and Settings\user\Application Data\Thunderbird\Profiles\default\xxxxxxx.slt\Mail\mail-account/ folder to a folder on the shared partition.
  3. In Thunderbird, under the "Tools->Account Settings->Server Settings" tab, change the "Local Directory" folder to be the directory created in step two.

Firefox

  1. Copy the Windows C:\Documents and Settings\user\Application Data\Mozilla\Firefox\Profiles\xxxxxxx.default\bookmarks.html file to a location on the shared partition.
  2. Add the new location of the bookmarks.html file to the C:\Documents and Settings\user\Application Data\Mozilla\Firefox\Profiles\xxxxxxx.default\prefs.js file as follows:
    // this is the shared bookmark location for Windows
    user_pref("browser.bookmarks.file", "E:\\application-data\\mozilla\\firefox\\bookmarks.html");
[ Comments () ]
 
[Back to Top of Page]

Spam Filtering

http://robert.accettura.com/archives/000235.shtml

[ Comments () ]