Et verktøy som gjør vanlige Firefox-baserte nettlesere til Developer Edition

På grunn av uenighet med Mozillas policy og distribusjoner om ikke å distribuere Firefox-bygg som har ulåste muligheter for å installere usignerte tillegg og bruke WebExtensions Experiments API, er det utviklet et verktøy som konverterer vanlige Firefox-bygg til en "Developer Edition"-variant som tillater bruk av tillegg uten digital signatur.

Utviklingen av verktøyet ble forenklet av det faktum at den nødvendige funksjonaliteten i Firefox er implementert i ECMAScript-kode og er inkludert i enhver versjon av Firefox, men slås på under kjøring avhengig av de angitte konstantverdiene. Konstantene ("MOZ_DEV_EDITION", "MOZ_REQUIRE_SIGNING") er definert i én fil ("modules/addons/AddonSettings.jsm"), som ligger i zip-arkivet "/usr/lib/firefox/omni.ja".

Det foreslåtte verktøyet analyserer den nødvendige filen ved å bruke esprima-python, patcher AST og serialiserer den ved å bruke jscodegen.py. Arbeid med zip-formatet leveres av libzip.py - bindinger til libzip. Det anbefales å installere de spesifiserte bibliotekene manuelt fra de tilsvarende git-repositoriene.

I tillegg kan du legge merke til unpin.py-skriptet, som lar deg fjerne begrensningene "{", "==" og "~=" på versjonen av avhengigheter i en forhåndsbygd pakke av hjulformatet, brukt av mange utviklere, som lar deg unngå automatisk nedgradering når du installerer ønsket pakke via pip når standardinnstillinger.

Kilde: opennet.ru

Legg til en kommentar