Una utilidad que convierte los navegadores habituales basados ​​en Firefox en Developer Edition

Debido al desacuerdo con la política de Mozilla y las distribuciones de no distribuir compilaciones de Firefox que tienen capacidades desbloqueadas para instalar complementos no firmados y usar la API WebExtensions Experiments, se ha desarrollado una herramienta que convierte las compilaciones normales de Firefox en una variante de "Edición para desarrolladores" que permite el uso de complementos sin firma digital.

El desarrollo de la herramienta se vio facilitado por el hecho de que la funcionalidad necesaria en Firefox se implementa en código ECMAScript y está incluida en cualquier versión de Firefox, pero se activa en tiempo de ejecución dependiendo de los valores constantes establecidos. Las constantes (“MOZ_DEV_EDITION”, “MOZ_REQUIRE_SIGNING”) se definen en un archivo (“modules/addons/AddonSettings.jsm”), que se encuentra en el archivo zip “/usr/lib/firefox/omni.ja”.

La utilidad propuesta analiza el archivo requerido usando esprima-python, parchea el AST y lo serializa usando jscodegen.py. Trabajar con el formato zip lo proporciona libzip.py: enlaces a libzip. Se recomienda instalar las bibliotecas especificadas manualmente desde los repositorios de git correspondientes.

Además, puede observar el script unpin.py, que le permite desvincular las restricciones “{“, “==” y “~=” en la versión de las dependencias en un paquete prediseñado del formato rueda, utilizado por muchos desarrolladores, lo que le permite evitar la degradación automática al instalar el paquete deseado a través de pip cuando la configuración predeterminada.

Fuente: opennet.ru

Añadir un comentario