Firefox logo 2019J'ai eu envie/besoin de porter une extension fonctionnant sous Chrome/Chromium vers Firefox. Il s'agissait de l'extension "EdScratch en Français" que l'on trouve ici : https://chrome.google.com/webstore/detail/edscratch-en-fran%C3%A7ais/aeiklncejanjjjannoindchdblikjhkb/related?hl=fr

Il a fallu tout d'abord ajouter cette extension sous Chromium : CRX Extractor/Downloader qui permet de récupérer l'extension dans un fichier au format .crx.

Ensuite, il faut tester si cette extension est utilisable sous Firefox en utilisant le site : https://www.extensiontest.com/. On peut aussi bien tester les fichiers .crx que .zip. Le rapport obtenu nous permet de voir quels sont les éventuels problèmes à corriger. Attention la correction recommandée peut parfois entraîner des bugs d'affichage (j'ai eu le cas pour quelques .innerHTML qu'il ne fallait pas remplacer par .textContent).

Le problème est qu'en l'état, l'extension non signée (validée) par Firefox ne peut pas s'installer directement. Pour le faire, il faut se placer sur la page "about:debugging" et cliquer dans la colonne de gauche sur "Ce Firefox". Le problème est que lorsque l'on redémarrera Firefox, l'extension aura disparu.

Pour installer de façon pérenne une extension non signée (ça n'a pas marché dans mon cas...) : https://wiringbits.net/browser-extensions/2020/11/27/installing-unsigned-extensions-permanently-to-firefox.html -> Depuis la version 48 de Firefox, ceci n'est plus possible sur les versions classiques de Firefox. Si on veut faire cela, il faut utiliser une version Développeur ou ESR de Firefox. Dans ce cas, il faudra dans "about:config" mettre l'option "xpinstall.signatures.required" à "false" et ne pas l'enlever (sinon ça désactivera l'extension).

Remarque : j'ai voulu déposer "mon" extension pourtant pleinement fonctionnelle pour Firefox (notamment pour qu'elle soit signée) mais celle-ci a été refusée car il y avait du code "minifié". N'étant pas l'auteur de l'extension initiale (ce dont je serais complètement incapable) et ne disposant pas du code source, je ne pouvais pas répondre aux injonctions de Mozilla... Dommage...