Uslužni program koji obične preglednike temeljene na Firefoxu pretvara u izdanje za razvojne programere

Zbog neslaganja s politikom Mozille i distribucija da ne distribuiraju nadogradnje Firefoxa koje imaju otključane mogućnosti za instaliranje nepotpisanih dodataka i korištenje WebExtensions Experiments API-ja, razvijen je alat koji pretvara obične nadogradnje Firefoxa u varijantu "Developer Edition" koja omogućuje korištenje dodataka bez digitalnog potpisa.

Razvoj alata je olakšan činjenicom da je potrebna funkcionalnost u Firefoxu implementirana u ECMAScript kodu i uključena je u bilo koju verziju Firefoxa, ali je uključena tijekom rada ovisno o postavljenim konstantnim vrijednostima. Konstante (“MOZ_DEV_EDITION”, “MOZ_REQUIRE_SIGNING”) definirane su u jednoj datoteci (“modules/addons/AddonSettings.jsm”), koja se nalazi u zip arhivi “/usr/lib/firefox/omni.ja”.

Predloženi uslužni program analizira potrebnu datoteku pomoću esprima-pythona, zakrpa AST i serijalizira je pomoću jscodegen.py. Rad sa zip formatom omogućuje libzip.py - vezanje na libzip. Preporuča se ručno instalirati navedene biblioteke iz odgovarajućih git repozitorija.

Osim toga, možete primijetiti skriptu unpin.py koja vam omogućuje da poništite ograničenja "{", "==" i "~=" na verziji ovisnosti u unaprijed izgrađenom paketu formata kotača, koji koriste mnogi programera, što vam omogućuje da izbjegnete automatsko vraćanje na stariju verziju kada instalirate željeni paket putem pip-a kada su zadane postavke.

Izvor: opennet.ru

Dodajte komentar