Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Crack firefox so that you can run unsigned extensions on linux, without recompiling firefox
#cracks for open source software are always cool....
#requires root privileges to replace omni.ja
#needs to be reapplied on reinstall
#you'll also need to set xpinstall.signatures.required to false
#and restart your browser
#tested on arch with FF48
OMNI_PATH=${1:-/usr/lib/firefox}
#unpack
cd $OMNI_PATH
unzip omni.ja -d omni_tmp
cd omni_tmp
#set AppConstants.MOZ_REQUIRE_SIGNING to false
sed -i -e 's/MOZ_REQUIRE_SIGNING:$/MOZ_REQUIRE_SIGNING: false \&\&/g' modules/AppConstants.jsm
#set AddonConstants.MOZ_REQUIRE_SIGNING to undefined
sed -i -e 's/this, "REQUIRE_SIGNING"/this, "REQUIRE_SINGING"/g' modules/addons/AddonConstants.jsm
#remove cache
rm jsloader/resource/gre/modules/AppConstants.jsm
rm jsloader/resource/gre/modules/addons/AddonConstants.jsm
#repack
zip -qr9XD omni.ja *
cp omni.ja ..
cd ..
rm -r omni_tmp
Owner

zb3 commented Aug 22, 2016

I am currently using my own unsigned addon, so I will update this for new versions of FF, providing they don't move the verification code to CPP side, coz then the only way to disable this crap will be to recompile the package....

coz then the only way to disable this crap will be to recompile the package

Or bin-patch, although that's brittle.

Ultimately, as long as the user has control over the code they run, they have control over the code they run.

coz then the only way to disable this crap will be to recompile the package

Or bin-patch, although that's brittle.

Ultimately, as long as the user has control over the code they run, they have control over the code they run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment