Question

I have a very old (1992) browser plugin for a mac that works in several different browsers. However, since Firefox restricted its plugins to XPI files in Firefox 3.6, the plugin no longer works.

I haven't been able to find a useful document describing what I need to do to my plugin to make it an XPI, or at least loadable by firefox, can anyone point me at such a document? or just explain to me what I need to do? I'm using Xcode.

Was it helpful?

Solution

So if this is an NPAPI plugin, you can just create a simple XPI (it's a ZIP file):

your-plugin.xpi/
  install.rdf
  plugins/
    your-plugin.dylib

This follows from the https://developer.mozilla.org/en/Bundles page I linked earlier.

You can create the install.rdf by reading and following the install.rdf reference page on MDC or just generate a stub extension using something like Extension Wizard (here's a "more official" version on addons.mozilla.org, but I haven't used that) and take the install.rdf from it.

You should probably limit the extension to Mac in your install.rdf (for that you'll have to read the install.rdf reference).


[original answer was:] What technology does the plugin use? XPI is a packaging mechanism; the answer to your question depends on whether the technology you use is still supported in Firefox 3.6.

I didn't think there were cross-browser plugin technologies, that worked in 1992 and are still in use now, so it's hard to guess what kind of plugin you're talking about.

OTHER TIPS

Brain; the problem is most likely that in Firefox 3.6 they removed support for XPCOM interfaces on npapi plugins. you need to use npruntime instead.

http://colonelpanic.net/2010/01/firefox-3-6-has-removed-support-for-xpcom-plugins/

You could also consider using FireBreath to rewrite it with, as that abstracts a lot of the details.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top