Un utilitar care transformă browserele obișnuite bazate pe Firefox în Developer Edition

Din cauza dezacordului cu politica Mozilla și a distribuțiilor de a nu distribui versiuni Firefox care au capabilități deblocate pentru instalarea de suplimente nesemnate și utilizarea API-ului WebExtensions Experiments, a fost dezvoltat un instrument care convertește versiunile obișnuite de Firefox într-o variantă „Developer Edition” care permite utilizarea suplimentelor fără semnătură digitală.

Dezvoltarea instrumentului a fost facilitată de faptul că funcționalitatea necesară în Firefox este implementată în codul ECMAScript și este inclusă în orice versiune de Firefox, dar este activată în timpul rulării în funcție de valorile constante setate. Constantele (“MOZ_DEV_EDITION”, “MOZ_REQUIRE_SIGNING”) sunt definite într-un singur fișier („modules/addons/AddonSettings.jsm”), care se află în arhiva zip „/usr/lib/firefox/omni.ja”.

Utilitarul propus analizează fișierul necesar folosind esprima-python, corectează AST și îl serializează folosind jscodegen.py. Lucrul cu formatul zip este furnizat de libzip.py - legături la libzip. Este recomandat să instalați manual bibliotecile specificate din depozitele git corespunzătoare.

În plus, puteți observa scriptul unpin.py, care vă permite să deconectați restricțiile „{“, „==” și „~=” privind versiunea dependențelor într-un pachet pre-construit al formatului roată, folosit de mulți dezvoltatori, ceea ce vă permite să evitați downgrade-ul automat atunci când instalați pachetul dorit prin pip când setările implicite.

Sursa: opennet.ru

Adauga un comentariu