Утилита, превращающая обычные браузеры на основе Firefox в Developer Edition
В виду несогласия с политикой Mozilla и дистрибутивов не распространять сборки Firefox, имеющие незаблокированные возможности установки неподписанных дополнений и использования API WebExtensions Experiments, был разработан инструмент, поеобразующий обычные сборки Firefox в вариант «Developer Edition», допускающий использование дополнений без цифровой подписи. Разработка инструмента была облегчена тем, что нужная функциональность в Firefox реализована в коде на ECMAScript и входит в состав любого варианта Firefox, но включается во время выполнения кода в зависимости от установленных значений констант. Константы («MOZ_DEV_EDITION», «MOZ_REQUIRE_SIGNING») определяются в одном файле («modules/addons/AddonSettings.jsm»), который находится в zip-архиве «/usr/lib/firefox/omni.ja». Соответственно, предложенная утилита парсит нужный файл с помощью esprima-python, патчит AST, и сериализует … Читать далее Утилита, превращающая обычные браузеры на основе Firefox в Developer Edition
