|Dreamweaver Manual||Building Mozilla|
|MailNews Status Icons|
On computers with two operating systems (here, for example, Linux and Windows) it is quite natural that sooner or later you want to make mutative data like mail, news and bookmarks usable for both platforms. This is particularly easy with Mozilla since the suite has been designed not only platform independent but also compatible cross platform right from the start.
Mail for example exists in form of the simple mbox format and is thus interchangeable with other Mozilla instances as well as with other Linux clients or even mail servers. In addition, the news server management and bookmark file referencing has been solved the same way as with the mailboxes: cross platform on the file and configuration level. So if you allow the operating systems in question to access the very same files, the problem has almost been solved.
With Windows 98 as secondary OS you are nearly done because Linux is able to access its file system FAT32 both reading and writing. With Windows NT or XP and NTFS it is a bit more tricky since writing on Linux is problematic here — in this case a FAT32 partition should be the solution.
If only the files, like mail and news directory and bookmarks file, have
been moved to a FAT32 partition the actual work may begin. In the following,
prefs.js is of special interest. It resides in the
respective Mozilla profile directory:
|Operating System||Path (without /profile name/random.slt)|
|WinXP||C:\Documents and Settings\<User>\Application Data\Mozilla\Profiles|
Probably the best place for making the changes to the mail and news
settings is directly in Mozilla's MailNews client, or more precisely: under
"Edit/Mail & Newsgroups Account Settings..." for each relevant
mail/news server as well as for the "Local Folders".
The directories for mail, news and local folders have to be entered for each account under "Server Settings" in the "Local directory" field; for news servers you will additionally have to specify the "newsrc file" which by default has the form *.rc on Windows (on Unix/Linux: newsrc-*).
On Windows, you can simply enter the respective paths into the fields or
leave them untouched. On Linux, however, you will first have to create
"dummy configurations" to make Mozilla know the names and data of
the accounts. The easiest should be to first of all create the accounts just
like on Windows and only then replace the paths relative to the home
directory by ones that are relative to the Windows file system.
Probably the simplest method is to find out the correct directory, respectively, using a shell/console and then copy and paste it into the respective field. After that (and the obligatory Mozilla restart) you can delete the mail/news directories of the respective profile under ~/.mozilla — to be on the safe side, you might initially want to only move/rename it (do not forget to restart Mozilla!).
All information that is not directly depending on the respective data
directory like SSL, port, automatic download/deletion etc. is stored in the
prefs.js and thus directly belongs to the Mozilla profile
of the respective operating system. On the one hand this implies that these
settings have to be set again explicitly on Linux (especially SSL/port),
but on the other hand it also means that you can make different settings
depending on the operation system .
Another similar possibility is to replace the files and directories of
the dummy configurations by symbolic links to the Windows equivalents. I
will not describe that in detail; just note that the relevant files reside
within the Mozilla profile in the subdirectories
The symlink method does by the way also lend itself to other files like user.js (settings as in prefs.js which, however, do not get overwritten by Mozilla), training.dat (spam filter) or discussProfile.rdf (MozBlog settings — if you use it).
For external bookmarks, you will have to add the following entries into prefs.js (example: Windows):
user_pref("browser.bookmarks.added_static_root", true); user_pref("browser.bookmarks.file", "C:\\path\\to\\bookmark file\\bookmark.htm");
For Linux, you can analogously replace the double backslashes by simple slashes and C: by the respective mount point of the Windows partition (e.g. /windows/C/).
However, before you can go on you will have to carry out the duty: First of all, you should by all means make a backup of the external bookmarks file. If anything goes wrong (for example if the browser had still been open and thus the contents of the new bookmarks file get overwritten with the ones of the old file) there is at least no loss of data.
Caution: If you are accessing the same data (for bookmarks and mails) on a common FAT32 partition you should be very careful about activating hibernate or suspend to disk on Linux. If you for instance start the computer with Linux after you had hibernated Windows directly before you must by no means access the FAT32 partition! As this is often difficult (at least for me, all other common data are located on the FAT32 partition), you should mind never to boot the computer with the other operating system, respectively, when either one of them is currently suspended to disk...
For bookmarks and some more there is an even better possibility called roaming, maybe still known to you from Netscape Communicator (version 4.x). Mozilla 1.8x is the first to bring a new implementation of this technique, but not yet in the installer builds. So if you like to experiment you may download one of the ZIP archives for Windows and try it yourself.
Roaming (Roaming Profiles, actually) means that when you start or quit the suite a list of selected files gets synchronized between the local profile and an arbitrary server. Mozilla in principle supports FTP, HTTP (WebDAV) and HTTPS; the latter is still quite buggy, though. While FTP should work in any case, you will need a roaming extension on the web server for HTTP, e.g. mod_roaming for Apache.
However, I do not want to conceal that the current implementation is quite buggy. The bugs are known (just search Bugzilla for "roaming") but unfortunately the suite does not receive quite as much attention like it was the case some time ago...
The documentation is rather poor, too. In my experience, the easiest and best working way is FTP: just use ftp://ftp.myserver.com/path/to/initially/empty/folder/ as Base URL, add Username and Password and you are done. Since you will be accessing usin username and password, the directory does not have to (and should not) be accessibly via anonymous FTP or WWW.
April 17, 2005