# Odd Corruption with a Firefox Extension

**URL:** <https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163>\
**Category:** Development\
**Tags:** learning, issue\
**Created:** [February 15, 2023, 9:13pm UTC](https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163 "2023-02-15T21:13:25Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![connor](https://sea1.discourse-cdn.com/flex001/user_avatar/discourse.mozilla.org/connor/32/62986_2.png) [@connor](https://discourse.mozilla.org/u/connor)\
**Post date:** [February 15, 2023, 9:13pm UTC](https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163/1 "2023-02-15T21:13:26Z")

</div>

I’ll make it simple. I developed an extension for Chrome, that as far as I’m aware does not use any Chrome specific APIs, that runs perfectly fine in both edge & Chrome. When I zip the files and try and upload them to Firefox, it claims that my manifest.json file is not valid. This does not make sense, as I coded that file using another extension’s manifest file. Why won’t Firefox accept my extension? I have no idea.

I did research it, but got nowhere, so that’s why I came here. Thanks in advance for any help.

Here is my manifest code:  
{  
“manifest\_version”: 2,  
“name”: “New Tab by Search Crew”,  
“version”: “2.0”,  
“description”: “Easily access Search Crew from your new tab page.”,  
“icons”: {  
“48”: “icon48.png”,  
“96”: “icon96.png”,  
“16”: “icon16.png”,  
“128”: “icon128.png”  
},

```
  "homepage_url": "https://searchcrew.github.io",

  "developer": {
    "name": "Slender Studios",
    "url": "https://www.slenderstudios.github.io"
  },

  "chrome_url_overrides" : {
    "newtab": "index.html"
  },

  "browser_action": {
    "browser_style": false,
    "default_area": "navbar",
    "default_icon": "icon16.png",
    "default_title": "New Tab by Search Crew"
  },
  "omnibox": {
    "keyword" : "search crew newtab"
  },
  "options_ui": {
    "page": "pref.html",
    "open_in_tab": true
  },
  "permissions": [
    "cookies",
    "storage"
  ],
  "optional_permissions": [
    "https://launchpad.net/searchcrew",
    "https://slenderstudios.github.io",
    "https://clicksearchcrew.web.app/default.aspx",
    "https://searchcrew.github.io"
  ]
}
```

---

<div class="post-metadata">

**Author:** ![juraj.masiar](https://sea1.discourse-cdn.com/flex001/user_avatar/discourse.mozilla.org/juraj.masiar/32/30587_2.png) [@juraj.masiar](https://discourse.mozilla.org/u/juraj.masiar)\
**Post date:** [February 16, 2023, 5:28pm UTC](https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163/2 "2023-02-16T17:28:07Z")

</div>

Try to load the addon in the “about:debugging” page, it will probably print some error there saying what’s wrong.  
In any case, I think you are missing the " `browser_specific_settings`" key:

> **[browser\_specific\_settings - Mozilla | MDN](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings)**
>
> The browser\_specific\_settings key contains keys that are specific to a particular host application.

Also, when pasting code here, place triple backticks (```) on the line above and below the code to activate formatting.

---

<div class="post-metadata">

**Author:** ![connor](https://sea1.discourse-cdn.com/flex001/user_avatar/discourse.mozilla.org/connor/32/62986_2.png) [@connor](https://discourse.mozilla.org/u/connor)\
**Post date:** [February 16, 2023, 9:34pm UTC](https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163/3 "2023-02-16T21:34:28Z")

</div>

thanks for the posting tip! I’ll try adding the new key. Also, I did run it on the about:debugging page, but it said the manifest was not valid.

---

<div class="post-metadata">

**Author:** ![connor](https://sea1.discourse-cdn.com/flex001/user_avatar/discourse.mozilla.org/connor/32/62986_2.png) [@connor](https://discourse.mozilla.org/u/connor)\
**Post date:** [February 16, 2023, 10:50pm UTC](https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163/4 "2023-02-16T22:50:10Z")

</div>

When I tried uploading the extension to the Firefox Addons site, it actually showed me the problem. I had an invalid omnibox keyword. I did not actually need that key, so I resulted to getting rid of it all together. The extension now works, but there is one thing I do not understand. If I were to insert the `browser_specific_settings` key and use the `gecko` and `id`, where would I find or acquire an extension id? I can’t find the answer to this anywhere.

---

<div class="post-metadata">

**Author:** ![juraj.masiar](https://sea1.discourse-cdn.com/flex001/user_avatar/discourse.mozilla.org/juraj.masiar/32/30587_2.png) [@juraj.masiar](https://discourse.mozilla.org/u/juraj.masiar)\
**Post date:** [February 17, 2023, 8:41am UTC](https://discourse.mozilla.org/t/odd-corruption-with-a-firefox-extension/111163/5 "2023-02-17T08:41:59Z")

</div>

The extension id is any string that will identify your extension, so something unique, it’s all in the docs: [https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser\_specific\_settings#extension\_id\_format](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings#extension_id_format)

Once you submit it in the store, you won’t be able to change it.
