Changes

Firefox

15 bytes added, 17:13, 3 August 2010
Move extensions to their own section
</remove>
<remove cmd='"%PROGRAMFILES%\Mozilla Firefox\uninstall\helper.exe" /s' />
</package>
</source>
 
==== Firefox 3.6 Series Extension Templates ====
 
As stated in: [[Firefox#Firefox_3_extensions]] the "install-global-extension" switch doesn't work starting with Firefox 3.6.
 
So, there is a better and much smoother way deploying extensions. And: it makes adding a new extension to a WPKG repo about 80 percent easier: '''templating'''.
 
Here are some examples:
 
''packages/firefox-ext-adblock_plus.xml''
<source lang="xml">
<!DOCTYPE firefoxextension [ <!ENTITY ext-name "adblock_plus"> <!ENTITY ext-key "1.1.3-fx+sm+tb+fn"> <!ENTITY ff-extension SYSTEM "../templates/ff-extension.xml"> ]>
<packages>&ff-extension;</packages>
</source>
 
''packages/firefox-ext-ie_view.xml''
<source lang="xml">
<!DOCTYPE firefoxextension [ <!ENTITY ext-name "ie_view"> <!ENTITY ext-key "1.4.5.1-fx+sm-win"> <!ENTITY ff-extension SYSTEM "../templates/ff-extension.xml"> ]>
<packages>&ff-extension;</packages>
</source>
 
''packages/firefox-ext-screengrab.xml''
<source lang="xml">
<!DOCTYPE firefoxextension [ <!ENTITY ext-name "screengrab"> <!ENTITY ext-key "0.96.3-fx"> <!ENTITY ff-extension SYSTEM "../templates/ff-extension.xml"> ]>
<packages>&ff-extension;</packages>
</source>
 
What we see here: creating a new extension package is just as easy as putting the extension name and version key in, so that the variables "ext-name" and "ext-key" build together with "-" the name of the xpi file: ''screengrab-0.96.3-fx.xpi''.
 
And updates? Updates have never been easier: Save the xpi to packages/mozilla/fx_extensions/ and change the "ext-key" variable in firefox-ext-(extname).xml.
 
The following template is used together with install-extensions.cmd and remove-extensions.cmd. For your convenience, you can find all needed files here: [[Firefox_ext_install_downloads]].
 
''templates/ff-extension.xml''
<source lang="xml">
<package id='firefox-ext-&ext-name;' name='Firefox Extension &ext-name;' revision='&ext-key;' priority='15'>
<variable name='fxext' value='&ext-name;-&ext-key;'/>
<check type="file" condition="exists" path="%CommonProgramFiles%\Mozilla Shared\Extensions\%FXEXT%\install.rdf" />
<depends package-id="firefox-check" />
<install cmd='"%SOFTWARE%\packages\mozilla\install-extensions.cmd" Firefox %FXEXT% >nul'/>
<upgrade cmd='"%SOFTWARE%\packages\mozilla\install-extensions.cmd" Firefox %FXEXT% >nul'/>
<downgrade cmd='"%SOFTWARE%\packages\mozilla\install-extensions.cmd" Firefox %FXEXT% >nul'/>
<remove cmd='"%SOFTWARE%\packages\mozilla\remove-extensions.cmd" Firefox %FXEXT% >nul'/>
</package>
</source>
</source>
=== Firefox 2.0 series ===
 
<source lang="xml">
<package
id="firefox"
name="Mozilla Firefox 2.0"
revision="1"
reboot="false"
priority="10">
<check type="logical" condition="or">
<check type="uninstall" condition="exists" path="Mozilla Firefox (2.0)" />
<check type="uninstall" condition="exists" path="Mozilla Firefox (2.0.0.20)" />
</check>
<check type="file" condition="exists" path="%PROGRAMFILES%\Mozilla Firefox\firefox.exe"/>
<install cmd='"%SOFTWARE%\firefox\Firefox Setup 2.0.0.20.exe" -ms' />
<upgrade cmd='"%SOFTWARE%\firefox\Firefox Setup 2.0.0.20.exe" -ms' />
<remove cmd='"%PROGRAMFILES%\Mozilla Firefox\uninstall\helper.exe" -ms' />
</package>
</source>
 
=== Firefox 1.5 series ===
 
<source lang="xml">
<package
id="firefox"
name="Mozilla Firefox 1.5"
revision="1"
reboot="false"
priority="10">
<check type="uninstall" condition="exists" path="Mozilla Firefox (1.5)" />
 
<install cmd='"%SOFTWARE%\firefox\Firefox Setup 1.5.0.4.exe" -ms' />
<upgrade cmd='"%SOFTWARE%\firefox\Firefox Setup 1.5.0.4.exe" -ms' />
<remove cmd='"%PROGRAMFILES%\Mozilla Firefox\uninstall\uninstall.exe" -ms' />
 
</package>
</source>
 
== Extensions ==
==== Firefox 3.0 Series Extensions ====
</source>
=== Firefox 23.0 series 6 Series Extension Templates ===
As stated in: [[Firefox#Firefox_3_extensions]] the "install-global-extension" switch doesn't work starting with Firefox 3.6.
 
So, there is a better and much smoother way deploying extensions. And: it makes adding a new extension to a WPKG repo about 80 percent easier: '''templating'''.
 
Here are some examples:
 
''packages/firefox-ext-adblock_plus.xml''
<source lang="xml">
<package id="firefox" !DOCTYPE firefoxextension [ <!ENTITY ext-name="Mozilla Firefox 2.0" revision="1" reboot="false" priority="10adblock_plus"> <check type=!ENTITY ext-key "logical" condition="or"> <check type="uninstall" condition="exists" path="Mozilla Firefox (21.0)1.3-fx+sm+tb+fn" /> <check type="uninstall" condition="exists" path=!ENTITY ff-extension SYSTEM "Mozilla Firefox (2.0.0.20)" /> <templates/check> <check type="file" condition="exists" path="%PROGRAMFILES%\Mozilla Firefox\firefoxff-extension.exexml"/> <install cmd='"%SOFTWARE%\firefox\Firefox Setup 2.0.0.20.exe" -ms' /]> <upgrade cmd='"%SOFTWARE%\firefox\Firefox Setup 2.0.0.20.exe" -ms' /packages> <remove cmd='"%PROGRAMFILES%\Mozilla Firefox\uninstall\helper.exe" &ff-ms' /> extension;</packagepackages>
</source>
''packages/firefox-ext-ie_view.xml''<source lang=== Firefox "xml"><!DOCTYPE firefoxextension [ <!ENTITY ext-name "ie_view"> <!ENTITY ext-key "1.4.5 series ===.1-fx+sm-win"> <!ENTITY ff-extension SYSTEM "../templates/ff-extension.xml"> ]><packages>&ff-extension;</packages></source>
''packages/firefox-ext-screengrab.xml''
<source lang="xml">
<package id=!DOCTYPE firefoxextension [ <!ENTITY ext-name "firefoxscreengrab" name=> <!ENTITY ext-key "Mozilla Firefox 10.596.3-fx" revision=> <!ENTITY ff-extension SYSTEM "1../templates/ff-extension.xml" > ]> reboot="false" priority="10"<packages>&ff-extension;</packages> <check type="uninstall" condition="exists" path="Mozilla Firefox (1.5)" /source>
<install cmd='What we see here: creating a new extension package is just as easy as putting the extension name and version key in, so that the variables "%SOFTWARE%\firefox\Firefox Setup 1.5.0.4.exeext-name" and "ext-mskey" build together with "-" the name of the xpi file: ' /> <upgrade cmd='"%SOFTWARE%\firefox\Firefox Setup 1.5.screengrab-0.496.exe" 3-msfx.xpi' /> <remove cmd='"%PROGRAMFILES%\Mozilla Firefox\uninstall\uninstall.exe" -ms' />
And updates? Updates have never been easier: Save the xpi to packages/mozilla/fx_extensions/ and change the "ext-key" variable in firefox-ext-(extname).xml.
 
The following template is used together with install-extensions.cmd and remove-extensions.cmd. For your convenience, you can find all needed files here: [[Firefox_ext_install_downloads]].
 
''templates/ff-extension.xml''
<source lang="xml">
<package id='firefox-ext-&ext-name;' name='Firefox Extension &ext-name;' revision='&ext-key;' priority='15'>
<variable name='fxext' value='&ext-name;-&ext-key;'/>
<check type="file" condition="exists" path="%CommonProgramFiles%\Mozilla Shared\Extensions\%FXEXT%\install.rdf" />
<depends package-id="firefox-check" />
<install cmd='"%SOFTWARE%\packages\mozilla\install-extensions.cmd" Firefox %FXEXT% >nul'/>
<upgrade cmd='"%SOFTWARE%\packages\mozilla\install-extensions.cmd" Firefox %FXEXT% >nul'/>
<downgrade cmd='"%SOFTWARE%\packages\mozilla\install-extensions.cmd" Firefox %FXEXT% >nul'/>
<remove cmd='"%SOFTWARE%\packages\mozilla\remove-extensions.cmd" Firefox %FXEXT% >nul'/>
</package>
</source>
117
edits