Ein Tool, das gewöhnliche Browser auf Firefox-Basis in die Developer Edition verwandelt.

Aufgrund der Ablehnung der Mozilla-Politik und der Distributionen, die keine Versionen von Firefox ohne gesperrte Möglichkeiten zur Installation unsignierter Erweiterungen und zur Nutzung der API WebExtensions Experiments bereitstellen, wurde ein Tool entwickelt, das regulĂ€re Versionen von Firefox in eine „Developer Edition“ umwandelt, die die Verwendung von nicht signierten Erweiterungen erlaubt.

Die Entwicklung des Tools wurde erleichtert, da die benötigte FunktionalitĂ€t in Firefox in ECMAScript-Code implementiert ist und in jeder Version von Firefox enthalten ist, jedoch zur Laufzeit des Codes aktiv wird, abhĂ€ngig von den festgelegten Konstanten. Die Konstanten („MOZ_DEV_EDITION“, „MOZ_REQUIRE_SIGNING“) sind in einer Datei definiert („modules/addons/AddonSettings.jsm“), die im Zip-Archiv „/usr/lib/firefox/omni.ja“ zu finden ist.

Das vorgeschlagene Tool parst die benötigte Datei mit esprima-python, patcht den AST und serialisiert mit jscodegen.py. Der Umgang mit dem Zip-Format wird durch libzip.py – Bindings zu libzip – sichergestellt. Es wird empfohlen, die genannten Bibliotheken manuell aus den entsprechenden Git-Repositories zu installieren.

ZusĂ€tzlich kann das Skript unpin.py erwĂ€hnt werden, das die EinschrĂ€nkungen „{“, „==“ und „~=“ bezĂŒglich der Versionen von AbhĂ€ngigkeiten im vorgefertigten Wheel-Paket, das von vielen Entwicklern verwendet wird, aufhebt, wodurch ein automatisches Downgrade beim Installieren des benötigten Pakets ĂŒber pip mit den Standardkonfigurationen vermieden wird.

Quelle: opennet.ru

60GB SSD 8Gb DDR4