How to make Firefox extension hidden, but downloadable from AMO - firefox

Mozilla Add-ons provides an ability to upload your extension to their servers. I need to make it hidden on https://addons.mozilla.org, but be downloadable from my website by direct link to it on https://addons.mozilla.org.
I see that on an add-on page I have a Hidden visibility option:
Hidden: Hosted on https://addons.mozilla.org, but hidden to anyone but authors. Used to temporarily hide listings or discontinue them.
If I will use it, will I have an ability to download this extension directly from Mozilla Add-ons servers?
P.S. I can't switch to it now because I will need to upload a new version of extension for review.

Related

Mozilla extension publishing options

I am working on the mozilla firefox extension and my requirement is that It should be private extension so only user who gets email with the link can download this extension. The Extension should not be visible to public. Second thing I want to know that is there any way to add firefox extension without leaving my company's existing application page? I want functionality like Google Chrome is providing "Inline installation" for adding the pluging without leaving the existing page..
If anyone has answers for these questions then please share... thanks.
All the info on distribution is here https://developer.mozilla.org/en-US/Add-ons/Distribution

How to access firefox functionality with an add-on for which no api exists

How does one access parts of firefox with an add-on, if no suitable api exists?
Specifically I would like to read and modify the content of the list of past downloads.
Many parts of Firefox are written in XUL, which can be easily extended to add your own scripts and XUL to the page, which is a bit like inserting JS files and HTML into a web page, but for privileged content (addons and Firefox itself). For example, this manifest describes some additions I made to non-api'd code of Firefox to tweak some developer tools.

Crossrider : How to Uninstall browser extension

I created browser extension using crossrider code, we can install this extension in all 4 browsers(Chrome,IE,Firefox,Safari).After installation a icon will be displayed beside the url. If we click on that icon a popup will displayed which contains one button
1)delete/uninstall
so, what I have to do is If user click on "uninstall/delete" button then the extension will remove from the browser.How can I achieve this functionality using crossrider code.
To the best of my knowledge, extension removal by the extension itself is not supported by any browser regardless of which platform the extension is written with. So whilst the Crossrider platform tries to provide as much common functionality as possible, I'm afraid this feature is not available.
[Disclosure: I am a Crossrider employee]
Chrome extensions can remove themselves using chrome.management.uninstallSelf. This does not require any permissions.
Firefox add-ons are trusted at the same level as the browser, so it is technically possible to remove the add-on. I don't know the API from the top of my head, but you could look at the source code of the Addon Manager for inspiration.
Internet Explorer extensions are binary code. Depending on how they're implemented, they might be able to uninstall themself. If you've written a basic BHO that runs in Internet Explorer's (low-integrity) process, then you cannot fully uninstall the extension, because it cannot write to the registry, or remove files from C:\Program Files.
Safari: Extensions don't have any method to remove themselves.

Firefox displays outdated information from MDN on newly self-hosted extension

Firefox displays outdated information from MDN on newly self-hosted extension
I'm trying to switch the Firefox extension I'm developing from being hosted on MDN/mozilla.org to being self-hosted. This involves adding an entry to install.rdf pointing to an update.rdf on my own server.
However, I am finding that if a given Firefox profile has ever had the older, hosted-on-MDN version installed in it, it will then continue to look up information from MDN instead of just using the information contained in the extension's install.rdf. This means that the information on the extension displayed in about:addons stays out of date.
Here is a detailed walkthrough:
Create a new Firefox profile.
Manually install newest version of the Firefox extension by dropping it into extensions/ and then confirming the install. This extension is self-hosted: it has a updateURL set in its install.rdf.
Go to about:addons and confirm that the information displayed about the plugin is the information from the extension's install.rdf. (Description, creator, etc.)
Uninstall the extension.
Install the old non-self-hosted version of the extension from MDN, via the add-ons manager interface.
Go to about:addons and confirm that the information displayed about the extension is information sourced from MDN. (Description, creator, etc.) Search all files that comprise this version of the extension to make sure that the information displayed is definitely not contained within it, and hence is sourced from MDN.
Uninstall this version of the extension.
Again install the new, self-hosted version of the extension by dropping it into extensions/ and confirming the install with Firefox.
Go to about:addons. Observe that the displayed information is still sourced from MDN, despite this being the self-hosted version. Specifically, the creator and description are sourced from MDN, while the icon is sourced from install.rdf.
Firefox appears to be caching information about the extension even when the extension has been uninstalled, and once a given extension has been seen to be hosted on MDN, it will continue getting information from MDN even if the extension is now self-hosted.
Is there some step of this I'm missing beyond setting a updateURL value in the extension's install.rdf? Is this a bug in Firefox? Is there a workaround?
By default, Firefox grabs information from AMO for your add-on and it overwrites the information in the install.rdf.
So if you've moved your add-on from AMO to self hosting, the information will still be retrieved.
To prevent that, you can set a preference:
pref("extensions.YOUR_ADDON_ID.getAddons.cache.enabled", false);
This will keep Firefox from getting info about your add-on from AMO.
It might not take effect immediately for you, but it should take effect within 24 hours.

Plan to make a SO indicator for Firefox

Problem: to show that a Not-SO-page has been discussed in SO when you at the Not-SO-site by a SO indicator at Firefox bottom bar
How should the extension work?
It should show a colorful SO indicator if the not-SO-page has been at SO.
I assume that we cannot use
Google (because the addon is apparently against its TOS)
SO has no similar search as the following Google search
The Google search which we are not allowed to use
site:url_in_firefox
Is there any to see whether the Not-SO-page has been discussed elsewhere or not?
Check out these tutorials at David Walsh's blog:
Firefox Extension Template
Package Your Firefox Extension into an XPI
Adding the XPI MIME Type for Firefox Extension Installs – if you want to make users able to install your add-on from your server and not the official add-on repository

Resources