This page is a work in progress !!
Packaging Mozilla FireFox 4.0+ and newer Geckos in NLS version
As of June 2011, there is no alternate way, there is only XUL -- er... one way to repackage Mozilla applications with any add-ons, because -install-global-extension has been removed from Gecko 1.9.2, as has been reported in
https://developer.mozilla.org/En/Command_Line_Options#Add-ons∞
Remarks:
- This method works for FireFox 4.0.1 (officially included with eCS 2.1 I think), ThunderBird 2.0 (but ThunderBird has no official OS/2 version as of June, 2011, so I don't think it will be included with eCS) and SeaMonkey 2.1 (a suitable substitute including an email client).
- For the old methods, please refer to the Wiki archive.
- This method might stop working in the future, just as the -install-global-extension one, so be careful.
- Language Packs are considered "special" inside Mozilla apps, but they are installed the same way as everything else. This allows us to pack and deploy Mozilla applications along any global extensions we may want; for example, language pack or spelling dictionary switchers.
- Any applications being packed aren't run anymore, so no cautions with running Mozilla applications are needed.
What you need:
Steps to take:
- Copy {program}.zip and the .xpi files to an empty directory; e.g. ?:\mztemp (where '?' is a local drive on your PC)
- Unzip {program}.zip; a folder called firefox, seamonkey or thunderbird (from now on referred to as "{program}") should be there.
- Extract install.rdf from {langpack}.xpi; i.e., type 'unzip {langpack}.xpi install.rdf'. It should look like:
[blah blah blah]
<Description about="urn:mozilla:install-manifest"
em:id="langpack-es-ES@firefox.mozilla.org"
em:name="Español (España) Language Pack"
em:version="4.0.1"
em:type="8"
em:creator="mozilla.org">
[more blah blah blah]
- Copy the package id (between the quotes in em:id="..."). (You can then delete the extracted copy of install.rdf.)
- Move and rename {langpack}.xpi to ?:\mztemp\{program}\extensions\<id>.xpi; for the the previous example it would be ?:\mztemp\firefox\extensions\langpack-es-ES@firefox.mozilla.org.xpi <- Mind all the dots!
- Optionally unpack <dictionary>.xpi, and move <lang>.dic and <lang>.aff to ?:\mztemp\{program}\dictionaries\
- Unpack {program}\omni.jar in another directory; e.g. from ?:\mztemp type 'unzip {program}\omni.jar -d omni'
- Edit ?:\mztemp\omni\defaults\pref\{something}-l10n.js, ({something} = suite for SeaMonkey, or = firefox, etc.), and change changing "en-US" to the new language for the program UI and for the spellchecking too, if you have installed the dictionary.
- Move {program}\omni.jar to ?:\mztemp as a backup; ie from ?:\mztemp type 'move {program}\omni.jar .' <-Mind the final dot!
- Repack omni.jar; i.e. from ?\mztemp, type
'cd omni'
'zip -r9 ..\{program}\omni.jar *'
'cd..'
- Optionally, repeat step 3 through 5 with any other useful packages, like language switchers. In that regard, these come to mind:
- Repack the application; from '?:\mztemp' type 'zip -r9 {program}_new.zip {program}'
- Test the new zip and commit it to CVS.
There is one comment on this page. [Display comment]