Add-on "appears to be corrupt" when trying to install my add-on's .xpi file in Firefox
The .xpi file must use only "deflate" compression or uncompressed
The zip implementation within Firefox only supports uncompressed files or files compressed with the "Deflate" algorithm. You will need to create the .zip archive using the compression method "Deflate" instead of the "LZMA" which you are currently using. How to do so will depend on the tools you use to create your archive.
Personally, I use a batch file/shell script to create the .xpi file as I describe in detail in my answer to "Firefox extension .xpi file structure: description, contents, creation, and installation". The basics are that I use the zip
command line tool which defaults to "deflate" or uncompressed. I use the -1
option to provide the fastest compression. Firefox/Mozilla use .xpi files both to package the files, but to also increase file access speed. The important quality is not a high compression ratio, but that the files can be accessed quickly. Unless Firefox is not an WebExtension and explicitly told to unpack the add-on by the install.rdf option <em:unpack>true</em:unpack>
(WebExtensions don't have install.rdf files), the add-on will be installed as the .xpi file and all access to the add-on will be as the .xpi file.
Note: Given that your extension contains .dll files, you may need to have your add-on installed unpacked by using <em:unpack>true</em:unpack>
.
Wrong signing method used. It must be signed by Mozilla, not yourself.
While it is not the error you are currently seeing, as soon as you fix the problem with your .xpi format, you will encounter an issue with your extension being signed by the wrong signature. You signed your extension with your own signature. It was not signed by Mozilla. This will not work. It must be signed by Mozilla, not yourself.You mentioned that you followed the directions in the MDN page Signing an XPI. However, as is clearly stated at the top of that page, the directions on that page are outdated and no longer work. You should have followed the link in the note to the page Signing and distributing your add-on. The note at the top of the page states:
Note: These instructions are outdated. For an extension to work in Firefox it must be signed by Mozilla, not by yourself. See Signing and distributing your add-on. [Emphasis added]
There are also a variety of questions here on Stack Overflow which address the signing issue.
Like stated in other answer it happens for unverified/unsigned extension.
But sometimes for testing you might want to use unverified/unsigned extension. As a hack/workaround to install unverified/unsigned extensions following worked for me on Firefox version 45:
- Launch Firefox and hit - about:config
- Search for 'xpinstall.signatures.required'
- Either double click on the row OR set the value to false and close
Now retry installing the extension and it should work.
I think there is something not clearly documented, I'd like to share my experience.
- Developed my extension and
zip
ped all the files - Selected
On your own
forHow to Distribute this Version
step and uploaded.zip
to AMO - Then, on the next page, I see a signed
.xpi
file available for download. I downloaded it and tried to install via "about:addons -> Install Add-on from file"- I get
corrupt add-on
error in this case
- I get
- After receiving e-mail from
[email protected]
, I went to my add-on's page and clicked on.xpi
file link there and it worked!