Differences between revisions 3 and 4
Revision 3 as of 2012-02-21 12:04:40
Size: 3830
Editor: cust
Comment:
Revision 4 as of 2012-02-22 05:34:04
Size: 3897
Editor: cust
Comment:
Deletions are marked like this. Additions are marked like this.
Line 41: Line 41:
 * It's possible to get upgrades working with http:// , but you will then have to work with signatures. Look [[http://www.borngeek.com/firefox/automatic-firefox-extension-updates/|here]] for more details  * It's possible to get upgrades working with http , but you will then have to work with signatures. Look [[http://www.borngeek.com/firefox/automatic-firefox-extension-updates/|here]] for more details
 * After making the modifications add the file back to the .xpi file

Doing a automatic upgrade of thunderbird 3.x to 10.x

  • When you do a normal upgrade of thunderbird from version 3.1.x to 10.x, this disables all sogo extensions
  • Due to this, you will then have to manually install the TB 10 integrator and then everything works as previously

Doing the integrator update automatically

  • It is possible to tell TB where to get updated versions of the integrator
  • You need to do these 4 steps to get a working upgrade path

1. Create a new version of the integrator for TB v3.1.x

  • Take for example the TB 3.1 extension, version 109
  • Unzip it and modify the install.rdf file to look like this:

<?xml version="1.0"?>
<!DOCTYPE RDF>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:em="http://www.mozilla.org/2004/em-rdf#"
  xmlns:NC="http://home.netscape.com/NC-rdf#">
  <Description about="rdf:#$Iwquq2"
    em:id="{3550f703-e582-4d05-9a08-453d09bdfdc6}"
    em:minVersion="3.0"
    em:maxVersion="3.1.*" />
  <!-- em:optionsURL="chrome://sogo-integrator/content/general/preferences.xul" -->
  <Description about="urn:mozilla:install-manifest"
    em:name="Inverse SOGo Integrator"
    em:id="sogo-integrator@inverse.ca"
    em:version="3.109a"
    em:description="A SOGo integration plugin for Thunderbird and Lightning"
    em:iconURL="chrome://sogo-integrator/skin/sogo.png"
    em:creator="Inverse &lt;support@inverse.ca&gt;"
    em:developer="Inverse &lt;support@inverse.ca&gt;">
    <em:targetApplication resource="rdf:#$Iwquq2"/>
    <em:updateURL>https://sogo.company.com/plugins/tbupdate.php</em:updateURL>
  </Description>
</RDF> 
  • You need to modify the em:version
  • And add the <em:updateURL>.....</em:updateURL> with the correct url to your server

  • You must specify a https URL here, otherwise upgrades will not work

  • It's possible to get upgrades working with http , but you will then have to work with signatures. Look here for more details

  • After making the modifications add the file back to the .xpi file

2. Push this new version via the normal integrator upgrade path (update.php)

  • Just push this new 3.109a version like all other versions to the TB 3.1x clients

3. Create a php script to return the update description with the correct location to download the V10 integrator

<?php
  header("Content-type: text/xml; charset=utf-8");
  echo ('<?xml version="1.0"?>' . "\n");
?>
<r:RDF xmlns:r="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns="http://www.mozilla.org/2004/em-rdf#">
<r:Description about="urn:mozilla:extension:sogo-integrator@inverse.ca">
    <updates>
    <r:Seq>
    <r:li>
    <r:Description>
        <version>10.0</version>
        <targetApplication>
            <r:Description>
            <id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</id>
            <minVersion>10.0</minVersion>
            <maxVersion>10.*</maxVersion>
            <updateLink>https://sogo.company.com/downloads/extensions/sogo-integrator-10.0-company.xpi</updateLink>
            </r:Description>
        </targetApplication>
    </r:Description>
    </r:li>
    </r:Seq>
    </updates>
</r:Description>
</r:RDF>
  • You have to put this file in the location you defined as the update url, for example https://sogo.company.com/plugins/tbupdate.php

  • It's also possible to convert it into a static file, the extension must then be sure that the content type is returned as text/xml for the rdf file (See why

4. Finally do a manual update of TB 3.1.x to TB 10 ESR

  • When you did every correctly, then on first launch of TB 10 you will see a dialog similar to this one

TB-upgrade-3-to-10 (last edited 2012-02-22 05:34:04 by cust)