Narzędzie przekształcające standardowe przeglądarki oparte na Firefox w Developer Edition.

Z powodu niezgody z polityką Mozilli oraz dystrybucji, które nie rozpowszechniają wersji Firefox z odblokowanymi możliwościami instalacji niesygnowanych dodatków oraz korzystania z API WebExtensions Experiments, opracowano narzędzie, które przekształca standardowe wersje Firefox w wariant „Developer Edition”, umożliwiając korzystanie z dodatków bez podpisu cyfrowego.

Opracowanie narzędzia uproszczono, ponieważ potrzebna funkcjonalność w Firefoxie została wdrożona w kodzie ECMAScript i wchodzi w skład każdej wersji Firefox, ale jest uruchamiana w czasie wykonywania kodu w zależności od zainstalowanych wartości stałych. Stałe („MOZ_DEV_EDITION”, „MOZ_REQUIRE_SIGNING”) są definiowane w jednym pliku („modules/addons/AddonSettings.jsm”), który znajduje się w archiwum zip „/usr/lib/firefox/omni.ja”.

Proponowane narzędzie parsuje potrzebny plik za pomocą esprima-python, modyfikuje AST i serializuje za pomocą jscodegen.py. Praca z formatem zip jest obsługiwana przez libzip.py – połączenia do libzip. Zaleca się ręczne zainstalowanie wymienionych bibliotek z odpowiednich repozytoriów git.

Dodatkowo można wspomnieć o skrypcie unpin.py, który pozwala na usunięcie ograniczeń „{“, „==” i „~=” na wersje zależności w prefabrykowanym pakiecie w formacie wheel, używanym przez wielu programistów, co pozwala uniknąć automatycznego obniżania wersji podczas instalacji potrzebnego pakietu przez pip przy ustawieniach domyślnych.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster