Un'utilità che trasforma i normali browser basati su Firefox in Developer Edition

A causa del disaccordo con la politica di Mozilla e delle distribuzioni di non distribuire build di Firefox che hanno funzionalità sbloccate per l'installazione di componenti aggiuntivi non firmati e l'utilizzo dell'API WebExtensions Experiments, è stato sviluppato uno strumento che converte le normali build di Firefox in una variante "Developer Edition" che consente l'utilizzo di componenti aggiuntivi senza firma digitale.

Lo sviluppo dello strumento è stato facilitato dal fatto che la funzionalità necessaria in Firefox è implementata nel codice ECMAScript ed è inclusa in qualsiasi versione di Firefox, ma è attivata in fase di runtime in base ai valori costanti impostati. Le costanti (“MOZ_DEV_EDITION”, “MOZ_REQUIRE_SIGNING”) sono definite in un file (“modules/addons/AddonSettings.jsm”), che si trova nell'archivio zip “/usr/lib/firefox/omni.ja”.

L'utilità proposta analizza il file richiesto utilizzando esprima-python, patch l'AST e lo serializza utilizzando jscodegen.py. Il lavoro con il formato zip è fornito da libzip.py - collegamenti a libzip. Si consiglia di installare manualmente le librerie specificate dai repository git corrispondenti.

Inoltre, puoi notare lo script unpin.py, che ti consente di svincolare le restrizioni “{“, “==” e “~=” sulla versione delle dipendenze in un pacchetto precostruito del formato ruota, utilizzato da molti sviluppatori, che consente di evitare il downgrade automatico durante l'installazione del pacchetto desiderato tramite pip con le impostazioni predefinite.

Fonte: opennet.ru

Aggiungi un commento