Add-ons Mirror: Bumping Extensions - Add-ons Mirror

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Bumping Extensions Using old ones on new builds

#1 User is offline   Sboulema Icon

  • TEM Founder
  • Icon
  • Group: Admin
  • Posts: 1,853
  • Joined: 10-March 04
  • Gender:Male
  • Location:Amstelveen, The Netherlands
  • Platform: Vista

Post icon  Posted 12 September 2004 - 01:52 AM

Why do extensions need to be bumped?

Every time there is a new +0.1 release of Mozilla Firefox or Mozilla Thunderbird (and other Mozilla-based programs), extensions stop installing because they have too low a maxVersion of targetApplication specified. Developers are sometimes slow in updating their extensions (or they are abandoned), and in the meantime you can't use your favourite extension.

Will all bumped extensions work on my new version of Firefox or Thunderbird?

No, but many will work just as well as they did on the previous version. Some will work partially (not all features will be available or function properly; there may be bugs). Some won't work at all.

For the last two categories, the author will need to edit or rewrite the code. This isn't something you can do yourself. Contact the developer to see if he/she can update the extension to be compatible with the new version of Firefox or Thunderbird.

So what do we mean by +0.1 release?

If your current version is Thunderbird 1.5.0.7 and the new version is 1.5.0.8, that is a +0.1 increase. Sometimes there will be more than a 0.1 increase. If your current version is Firefox 1.0.7 and you're upgrading to 1.5 or 2.0, that's a good example.

=========================================================================

WARNING: These tricks would only allow you to install the extension. There is no guarantee that the extension will actually work, and it might corrupt your profile or break your Mozilla application.

AMI Staff take no responsibility for your usage of info covered in this tutorial, although many bumped extensions after these changes should work as before.
  • You'll have more luck bumping extensions (xpi files) than you will bumping themes (jar files). Bumping themes is not recommended.
  • Always back up the original extension first. Make your bump from a copy, not from the original.
  • Don't overwrite your original when saving the bump. Add -mod or -bump to the filename.
  • It is advised to test first on a new profile before installing on the default one.

=========================================================================


There are a few different ways to get your old extension to install on the new version of Mozilla Firefox or Mozilla Thunderbird. We will use Firefox in these examples, but the same rules apply for Thunderbird (and most other Mozilla-based programs).

Method 1
This method involves modifying the extension itself. You have to again change one value to allow your extension to install. This method might be a bit harder or take more time, but the benefit is that you end up with an extension that you can give to others that have the same problem. This method is the most recommended.
  • Download the extension (You should end up with an *.xpi file)
  • Open the downloaded *.xpi with any archiver (WinZip, WinRAR, 7-Zip, Izarc)
    • With 7-Zip or Izarc, you can unzip an *.xpi file directly.
    • With the other apps, use a copy of the *.xpi file and rename the .xpi on the end to .zip. Then extract.

  • Look for the file called install.rdf
  • Open it with a plain text editor like Notepad, Metapad, or EditPlus. The advantage to using EditPlus is that it automatically creates a backup of the file you're modifying. However, the backup will be overwritten each time you SAVE the modified file.
    **DO NOT use Microsoft Word, Wordpad, Write, WordPerfect, etc.)
  • Find the line that looks like <em:maxVersion>*.*</em:maxVersion> (Where *.* is a version number)
    • If there is more than one of these lines, find the one for your updated Mozilla-based program. Firefox will be probably listed by name "Firefox". If not, it'll be listed by Globally Unique Identifier (GUID) code.
      * Firefox GUID: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
      * Thunderbird GUID: {3550f703-e582-4d05-9a08-453d09bdfdc6}
      * SeaMonkey GUID: {92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}
      * Mozilla Suite GUID: {86c18b42-e466-45a9-ae7a-9b95ba6f5640}
      * Sunbird GUID: {718e30fb-e89b-41dd-9da7-e25a45638b28}
      * Flock GUID: {a463f10c-3994-11da-9945-000d60ca027b}
      * Netscape GUID: {3db10fab-e461-4c80-8b97-957ad5f8ea47}
      * Nvu / KompoZer GUID: {136c295a-4a5a-41cf-bf24-5cee526720d5}
      * Songbird GUID: songbird@songbirdnest.com
      * eMusic Remote (DLM) GUID: dlm@emusic.com
    • Don't confuse maxVersion with the Version number of the extension! The numbers may be identical in some cases.

  • Change the maxVersion number to the version of your updated Mozilla Firefox.
    • Again, be very careful that you don't bump the version of the extension. You want to bump only the maxVersion for your target app. Just watch which value you change. This is the most common mistake that newbies make. We cannot stress this enough.
    • You can also leave more room for future versions. For example, use any of the following maxVersions for Firefox 3 compatibility.
      • 3.0.*
      • 3.1.*
      • 3.1
      • 3.*

  • Now save the install.rdf (as an *.rdf file, not a *.txt file) and update (rezip) the archive.
    • If your text editor appends *.txt on the end of the *.rdf file, you must remove it, so that the file extension on the end is *.rdf.
    • When you zip the files to repack the bumped XPI, be sure to include install.rdf and all the other files/folders that were extracted from the XPI. DO NOT use any form of compression to archive the file. Save in ZIP format, not RAR or 7z.
You have now "bumped" the extension, and it should install. It should probably work again, but it may not. If it doesn't, you'll need to contact the developer for an update.

Notes:
- From Mozilla Firefox Beta 2 on, its possible to bump the maxVersion to 1.* where * will be treated as infinity. This will greatly reduce the need for a new bump. Treat 1.5.* as 1.5.infinity.
- So instead of typing 1.5.0.8 to bump 1.5.0.7 to 1.5.0.8, just type 1.5.0.* instead.


Method 2
This method involves installing an extension, in order to re-enable the disabled incompatible extensions.
  • Install Nightly Tester Tools
  • Restart Firefox
  • Now open the Extension Manager and right-click a disabled incompatible extension.
  • Choose the option "Make compatible"
  • Restart Firefox and the extension will work again
Note:
- You can make several extensions compatible at once.


Method 3
This method changes one setting in your Mozilla Firefox configuration. This is really easy and quick way to get your extension to install again. However, this method is not recommended.
  • Start Mozilla Firefox
  • Type about:config in the address bar
  • Type extensions.lastApp.version in the filter bar
    - In earlier versions, the setting was called app.extensions.version
  • Right click the entry and choose modify
  • Change the value to the version number of the Mozilla Firefox version you were using before updating
    (e.g., you were using Mozilla Firefox 1.0.7 and the value now says 1.0+, change that value back to 1.0)
Notes:
- Lowering extensions.lastApp.version (formerly "app.extensions.version") will prevent you from installing extensions where min-ver exceeds the new value. (bugzilla comment)
- With the latest nightlies (Mozilla Firefox Beta 2) you will have to create the extensions.lastApp.version entry. Right-click anywhere and choose New -> String.

Method 4
This method changes one setting in your Mozilla Firefox configuration. This is really easy and quick way to get your extension to install again.
  • Start Mozilla Firefox
  • Type about:config in the address bar
  • Type extensions.checkCompatibility in the filter bar
    - only exists in Mozilla Firefox 2.0.0.0 and later
  • Right click the entry and choose modify
  • Change the value to false
Notes:
- Outdated extension will have a red exclamation mark next to them.
- Extensions may or may not work after using this method. in the worst case scenario they can corrupt your profile, so use with care.

Troubleshooting Bumped & Disabled Extensions

Sometimes an extension may still be disabled after using Method 1 or 2. A new or bumped version might not install properly, and once in a while, you'll find an extension or theme that refuses to install or uninstall. It'll be "stuck", and may look something like this even after you restart your application..

Posted Image

Here is how you fix the problem.
  • First try installing a newer (or bumped) version over the old one. Restart Firefox.
  • If it still doesn't work, uninstall the troublesome extension. Restart Firefox. Install a newer (or bumped) version. Restart again.
  • If it still doesn't work, you'll need to manually remove traces of the extension from your profile.
All Firefox windows and dialog boxes MUST be closed for this.
  • Use Windows Explorer or another desktop search utility to find files containing text of the extension name. Search only your profile folder and its subfolders, not your entire C drive. This will tell you how many files are involved, but you don't need to edit them all.
  • Always back up your original prefs.js file, extensions.rdf, and other files before making any changes -- in case something goes wrong.
  • If you plan to reinstall the extension, removing one or more lines from prefs.js and extensions.rdf is often adequate. If the extension will not be reinstalled, you can remove the entries from some of the other files or leave them alone. (Don't try to edit *.dat files.) It depends on how many files you want to mess with and how confident you are in your editing.
BE CAREFUL! Remove ONLY the lines that pertain to the extension in question. If you are not familiar enough with code to know where a line or section for a particular extension starts or stops, DO NOT PROCEED. Seek help from this forum or the MozillaZine (MZF) forum. It is better to wait for advice from an experienced coder than risk corrupting your profile.



Here is the list of related bugs that were meant to make installation of old versions of extensions more user friendly but were resolved as INVALID / WONTFIX:
  • Bug 251289 - Version comparison prevents use of extensions which may otherwise work
  • Bug 258062 - Extension/Theme Manager should allow user-override to install incompatible (wrong version) extensions/themes (100+ votes !!!)
  • Bug 258989 - Allow forced/override install of extensions/themes
  • Bug 251148 - Make install.rdf's maxVersion arc optional



FIREFOX 3 and new "SECURE UPDATE" Restrictions

From mozillazine by mossop:

Quote

What this means is that we are now enforcing a security restriction on all add-ons. To be specific, if an add-on does not provide a secure method of auto-updating then by default Firefox will refuse to install the add-on. If you have add-ons already installed that are insecure in this way then they will be automatically disabled.

The good news is that addons.mozilla.org (AMO) already uses SSL for it's updates, so any add-ons you have installed from there will be unaffected by this change. Equally any add-on authors who use SSL on their site, their add-ons will be unaffected.

For add-on authors there is an alternate way to provide secure updates without investing in an SSL key involving digital signatures...McCoy.


Users who have add-ons disabled can remove the security checking and re-enable disabled add-ons by adding this to prefs.js, which can be found in your profile folder. You can also use about:config to add this item.

user_pref("extensions.checkUpdateSecurity", false);


However, removing or <!-- commenting out --> the updateURL inside the add-on's install.rdf file is a much safer route.


:bell: What's new in this tutorial:
- Method 4 added thanks to IceDogg.
- Cautionary notes and warnings for newbies added by Seamaiden.
- Firefox 3 "secure update" information added by Seamaiden.

This post has been edited by Seamaiden: 17 July 2008 - 07:28 PM

Posted Image Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7
Mozilla Thunderbird 2.0.0.6 (20070728)
0

#2 User is offline   Seamaiden Icon

  • AMI Founder
  • Icon
  • Group: Admin
  • Posts: 2,343
  • Joined: 22-February 06
  • Gender:Female
  • Location:Fresno, California
  • Interests:INTERESTS: Computer Security; Freeware; Testing extensions & themes; Sci-Fi; Oceans, Forests,, Saving the Planet; Writing.
    DREAM: To live in a place where the forest meets the sea.
  • Platform: Windows XP

Posted 21 December 2007 - 04:44 PM

This tutorial has been updated to accommodate and/or bypass the new security restrictions for Firefox 3 (Gran Paradiso), Minefield, and other Mozilla-base applications that will incorporate them.

Please let me know if anything should be added or changed.

What are the best links at MozillaZine and elsewhere to add here for reference?
0

#3 User is offline   Philip Chee Icon

  • Add-ons Guru
  • Icon
  • Group: Admin
  • Posts: 382
  • Joined: 21-March 05
  • Location:Sol III (Tellus)
  • Platform: Unspecified

Posted 21 December 2007 - 08:52 PM

View PostSeamaiden, on Dec 22 2007, 8:44, said:

This tutorial has been updated to accommodate and/or bypass the new security restrictions for Firefox 3 (Gran Paradiso), Minefield, and other Mozilla-base applications that will incorporate them.

Please let me know if anything should be added or changed.

What are the best links at MozillaZine and elsewhere to add here for reference?
You could also bypass security restrictions by either:

1. Putting a non-existent https:// url into the <em:updateURL> field in the install.rdf of the extension you are bumping.

2. Leave <em:updateURL> out entirely. In the latter case Firefox will think that updates are hosted on A.M.O.

Phil
0

#4 User is offline   Chad Cloman Icon

  • Add-ons Guru
  • Icon
  • Group: Members
  • Posts: 111
  • Joined: 23-June 05
  • Gender:Male
  • Location:Denver, CO USA
  • Platform: Windows

Posted 22 December 2007 - 05:18 AM

Argh! I do not see why this enhanced security is necessary. So it prevents someone from corrupting the extension code as the installer makes its way across the internet from the server to the client? Or perhaps as it goes from a wireless router to the wireless-connected computer?

But at least it can be easily disabled via about:config.
Check out Chad's News
My extensions
0

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users