Převod souboru XPI do CRX
Přeneste rozšíření Firefox XPI na zdroj kompatibilní s Chromium, poté jej zabalte a nasaďte jako CRX.
Jak převést soubor xpi do formátu crx
- Internet
- Hodnocení: 3.5/5
Doplňek pro Firefox nebo Thunderbird dodaný jako XPI nelze nainstalovat přímo do Chrome, Edge, Brave nebo jiných prohlížečů založených na Chromiu. Balíček CRX je užitečný pouze poté, co byl zdroj rozšíření upraven tak, aby byl kompatibilní s platformou rozšíření cílového prohlížeče.
Co obsahují soubory XPI
XPI je formát balíčku doplňků od Mozilly, používaný především ve Firefixu a Thunderbirdu. Většina současných XPIs je založená na ZIP archívech a obsahuje manifest.json, JavaScript, HTML, ikony, lokalizační soubory a další komponenty rozšíření.
Firefox Add-ons distribuuje podepsané XPIs. Starší doplňky mohou místo toho používat install.rdf, chrome.manifest, XUL overlaye nebo legacy bootstrap kód; tyto technologie nejsou podporované Chromiem a vyžadují přepracování, nikoli pouze zabalení.
Co poskytují soubory CRX
CRX je podepsaný formát balíčku rozšíření od Chromia. Současné prohlížeče Chromia vytvářejí balíčky CRX3, jejichž podpisovací klíč určuje ID rozšíření; ponechání stejného klíče je nutné pro publikování aktualizací pod stejným ID.
CRX je primárně užitečný pro nasazení v rámci spravovaných prohlížečů a pro privátní služby aktualizací. Chrome Web Store přijímá ZIP kompatibilního zdrojového kódu rozšíření pro publikování, nikoli předem připravený CRX, a běžné instalace Chromia obecně blokují přímou instalaci stažených souborů CRX.
Připravte zdroj rozšíření
- Zkopírujte a rozbalte XPI do pracovní složky. Ve Windows použijte 7-Zip, nebo v macOS či Linuxu spusťte
unzip addon.xpi -d addon-src. Přejmenování kopieaddon.xpinaaddon.ziptaké umožní extrakci pomocí běžných nástrojů pro práci s archivy. - Zkontrolujte
manifest.json. Doplňek obsahující pouze starší soubory Mozilly se bez přenosu zdrojového kódu nemůže stát funkčním rozšířením pro Chromium. - Upravte manifest a kód pro cílový prohlížeč. Odstraňte nebo izolujte nastavení specifická pro Firefox, jako je
browser_specific_settings, nahraďte nepodporovaná oprávnění a API a použijte Manifest V3, pokud je vyžadován. Aktuální odesílání do Chrome Web Store vyžaduje Manifest V3; dostupnost Manifest V2 v prohlížečích Chromia závisí na verzi prohlížeče a podnikovém nastavení. - Projděte rozdíly v API. Kód z Firefoxu používající
browser.*může vyžadovat cílené úpravy nebowebextension-polyfillpro kompatibilitu s Chromiem. API pouze pro Firefox, privilegované stránky, proxy chování, možnosti motivů a názvy oprávnění nemusí mít v Chromiu ekvivalent. - Otestujte rozbalenou složku před zabalením. Otevřete
chrome://extensions,edge://extensionsnebo ekvivalentní stránku prohlížeče; zapněte Developer mode; zvolte Load unpacked; a vyberteaddon-src. Nejprve vyřešte chyby v manifestu, service-workeru, oprávněních a za běhu programu.
Vytvořte balíček CRX
K balení použijte cílový prohlížeč založený na Chromiu nebo přímo Chromium. Na stránce rozšíření zapněte Developer mode, vyberte Pack extension, zvolte kořenovou složku rozšíření a vytvořte nový klíč nebo vyberte existující .pem klíč.
Alternativou je příkazová řádka: chromium --pack-extension=/full/path/addon-src. Ve Windows použijte nainstalovaný spustitelný soubor prohlížeče, například chrome.exe --pack-extension="C:\work\addon-src". Balení vytvoří soubor .crx a pro nový balíček také .pem soukromý klíč.
Udržujte soubor PEM soukromý a mějte ho zálohovaný. Rekompilujte pomocí stejného klíče, například chromium --pack-extension=/full/path/addon-src --pack-extension-key=/full/path/addon-src.pem. Nový klíč vytvoří nové ID rozšíření a přeruší návaznost aktualizací.
Limity nasazení a konverze
Podpis XPI nelze znovu použít pro podepisování CRX. Rozbalení XPI poskytne soubory zdroje, nikoli přenositelný podpis Chromia ani identitu rozšíření.
Pro veřejnou distribuci Chromia nahrajte kompatibilní zdrojový ZIP do Chrome Web Store. U zařízení spravovaných organizací nasazujte CRX prostřednictvím zásady pro instalaci rozšíření podnikovými pravidly prohlížeče a tam, kde je vyžadováno, také prostřednictvím schváleného URL pro aktualizace.
Online konvertory archívů nedokážou přenést API prohlížeče, ověřit chování rozšíření ani vygenerovat použitelnou dlouhodobou identitu pro podpis. Neuploadujte zdroj rozšíření ani soukromé .pem klíče na konverzní web; místo toho používejte lokální nástroje jako 7-Zip a Chrome, Edge nebo nástroj pro balení rozšíření v Chromiu.
Stručně řečeno, nelze přímo jednoduchým způsobem zkonvertovat soubor XPI do CRX souboru.
Proto pravděpodobně nenaleznete konverzní utilitu nebo zdarma online stránky/službu, která umí převést soubory .xpi na .crx. Určitě lze nalézt webovou službu, která tuto konverzi slibuje online a zadarmo, ale pravděpodobně je to podvodná stránka slibující něco, co jednoduše nelze.
XPI vs CRX: srovnání formátů
Jak si formáty XPI a CRX stojí v nejdůležitějších vlastnostech pro tento převod.
| Vlastnost | .XPI Mozilla Add-on Package | .CRX Chrome Extension Package |
|---|---|---|
| Otevírá se ve webovém prohlížeči | Ne | Ne |
| Čitelný jako prostý text | Ne | Ne |
| Formátování textu | Žádné | Žádné |
| Obrázky | Ne | Ne |
| Interaktivní prvky | Ano | Ano |
| Další úpravy | Omezeně | Nelze přímo upravovat |
| Typická velikost souboru | Malé | Velmi malé |
| Otevřený standard | Ano | Ne |
| Zavedeno | 2004 | 2009 |
| Vývojář | Mozilla Foundation | |
| MIME typ | application/x-xpinstall | — |