Portable Firefox Launcher 1.0.1
===============================
Written by John T. Haller
- with additional code from Free The Fox by mai9 and fflaunch by tracon

Website: http://portablefirefox.mozdev.org/


ABOUT PORTABLE FIREFOX
======================
The Portable Firefox Launcher allows you to run Firefox from a removable drive whose letter changes as you move it to another computer.  The browser and the profile can be entirely self-contained on the drive and then used on any Windows computer.  Specific configuration changes are made to the chrome.rdf so that your extensions will still work as the drive letter changes.


LICENSE
=======
This code is released under the GPL.  The full code is included with this package as PortableFirefox.nsi.


INSTALLATION / DIRECTORY STRUCTURE
==================================
By default, the program expects one of 3 directory structures:

-\ <--- Directory with PortableFirefox.exe
  +\profile\
  +\firefox\

OR

-\ <--- Directory with PortableFirefox.exe
  +\PortableFirefox\
    +\profile\
    +\firefox\

OR

-\ <--- Directory with PortableFirefox.exe
  +\PortableApps\
    +\PortableFirefox\
      +\profile\
      +\firefox\

It can be used in other directory configurations by including the PortableFirefox.ini file in the same directory as PortableFirefox.exe and configuring it as details in the INI file section below.


PORTABLEFIREFOX.INI CONFIGURATION
=================================
The Portable Firefox Launcher will look for an ini file called PortableFirefox.ini within its directory.  If you are happy with the default options, it is not necessary, though.  The INI file is formatted as follows:

[PortableFirefox]
firefoxdirectory=firefox
profiledirectory=profile
allowmultipleinstances=yes
additionalparameters=-commandline -parameters

The firefoxdirectory and profiledirectory entries should be set to the *relative* path to both the directory containing firefox.exe and the directory containing your profile from the current directory.  Both must be a subdirectory (or multiple subdirectories) of the directory containing PortableFirefox.exe.  The default entries for these are described in the installation section above.

The allowmultipleinstances entry will allow Portable Firefox to run alongside your regular local copy of Firefox if you set it to yes (lowercase).  The default is no.

The additionalparameters entry allows you to pass additional commandline parameter entries to firefox.exe.  Whatever you enter here will be appended to the call to firefox.exe.


PROGRAM HISTORY / ABOUT THE AUTHORS
===================================
This launcher contains elements from multiple sources.  It began as a batch file launcher written by myself (John T. Haller) and posted to the mozillaZine.org thread about running Firefox from a USB key.  tracon later released a launcher called fflaunch which I enhanced and re-released as Portable Firefox.  mai9 later improved on fflaunch's techniques and released it as Free The Fox.  Multiple suggestions back and forth as well as improvements from mai9, myself and others lead to the launcher we have today.  This most recent version adds some of mai9's methods for running multiple copies of Firefox and my methods for allowing the code to be run from anywhere on first launch (as opposed to a specific directory), pass in commandline options, run without an ini file and allow the use of profiles from local installations.


CURRENT LIMITATIONS
===================
SOME THEMES FAIL - Some themes may not work correctly with Portable Firefox

LOCAL FILES CREATED - A directory (%userprofile%\Application Data\Mozilla\Firefox) is created on the local machine (if Firefox is not installed locally) and a pluginreg.dat file is created within it. A Talkback directory is also created.  This is a limitation of Firefox itself.

INCOMPATIBLE EXTENSIONS - Certain extensions use additional local files or prefs.js to store information, neither of which are handled by the Portable Firefox launcher when moving between machines. Issues have been reported with the following extensions: QuickNote, SendTo, ForecastFox, Flashgot.

NO PORTABLE JAVA - Sun's Java VM needs to be installed locally as it makes a slew of registry entries, etc. There is no way to make it portable at present, so you will only be able to use Java-enabled sites on machines that have the Sun Java VM installed locally.

WRITE ACCESS REQUIRED - Both the Firefox directory and the profile directory must be writeable on the USB drive. Drives with a writable switch can not be in read-only mode.