Historically a Client Customization Kit (CCK) could be used, by ISP's, Universities, and businesses to customize a web browser to their personal needs. Common things to customize are: 1. Bookmarks 2. Preferences 3. Throbber/Throbber URL 4. Homepage 5. Mail Settings How it could work initially: There should be 2 modes. By default, the installer looks in it's parent directory for an override file (custom.js). In this file, it would specify, what files (and where they are located), override what. By simply adding the path to a new user.js file, the installer would automatically override the default user.js file with the one specified. Same for things like bookmarks, and the product name. If the custom.js has the ability to forward (be a mere alias to a temporary directory), it could perhaps point to a server, or a place on the user's hard drive where the real files exist, allowing for more options. Going all out: To take it one step further, allow the Installer to check it's parent directory for the presence of any .xpi or .jar file, and add them to the custom install option (or as a default if referenced in the custom.js file). Thus allowing an organization to offer their favorite theme (or a custom theme), and extension(s). This could effectively replace the need for a CCK by large installations sucha s ISP's and Universities. It provides for a mechanism to easily modify Firefox without needing advanced programming skills. There could even perhaps be a small app to create a custom.js file. Another advantage is that if installers were created for other platforms in the future, itw ould be easy for an ISP to support, since they could drop the same custom.js file, and appropriate files, and the Installer does the magic.
The customization work that happened in Fx3 made this far easier, and we're working on a self-serve repack tool that works on all platforms (we already have an internal version since last spring)