mirror of
https://github.com/gorhill/uBlock.git
synced 2024-11-06 02:42:33 +01:00
152cea2dfe
This is a first step, the ultimate goal is to remove the need for resources.txt, or at least to reduce to only hotfixes or for trivial resources targeting very specific websites. Most resources will become immutable, i.e. they will be part of uBO's code base. Advantages include easier code maintenance (jshint, syntax highlight), and to make scriptlets more easy to code review by external parties (for example extension store reviewers). TODO: - More scriptlets need to be imported before next release. - Need to make legacy versions of uBO use a legacy version of resources.txt, as all the now obsolete scriptlets will have to be removed once uBO's next release become widespread. - Possibly need to add code to load binary resources so that they can be injected as data: URI. So far it's unclear whether this is really needed. For example, this would be needed if a xmlhttprequest is redirected to an image resource.
58 lines
1.9 KiB
Bash
Executable File
58 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# This script assumes a linux environment
|
|
|
|
# https://github.com/uBlockOrigin/uBlock-issues/issues/217
|
|
set -e
|
|
|
|
echo "*** uBlock0.webext: Creating web store package"
|
|
|
|
DES=dist/build/uBlock0.webext
|
|
rm -rf $DES
|
|
mkdir -p $DES
|
|
|
|
echo "*** uBlock0.webext: copying common files"
|
|
bash ./tools/copy-common-files.sh $DES
|
|
|
|
cp -R $DES/_locales/nb $DES/_locales/no
|
|
|
|
cp platform/webext/manifest.json $DES/
|
|
cp platform/webext/vapi-usercss.js $DES/js/
|
|
|
|
# https://github.com/uBlockOrigin/uBlock-issues/issues/407
|
|
echo "*** uBlock0.webext: concatenating vapi-webrequest.js"
|
|
cat platform/chromium/vapi-webrequest.js > /tmp/vapi-webrequest.js
|
|
echo >> /tmp/contentscript.js
|
|
grep -v "^'use strict';$" platform/firefox/vapi-webrequest.js >> /tmp/vapi-webrequest.js
|
|
mv /tmp/vapi-webrequest.js $DES/js/vapi-webrequest.js
|
|
|
|
echo "*** uBlock0.webext: concatenating content scripts"
|
|
cat $DES/js/vapi-usercss.js > /tmp/contentscript.js
|
|
echo >> /tmp/contentscript.js
|
|
grep -v "^'use strict';$" $DES/js/vapi-usercss.real.js >> /tmp/contentscript.js
|
|
echo >> /tmp/contentscript.js
|
|
grep -v "^'use strict';$" $DES/js/vapi-usercss.pseudo.js >> /tmp/contentscript.js
|
|
echo >> /tmp/contentscript.js
|
|
grep -v "^'use strict';$" $DES/js/contentscript.js >> /tmp/contentscript.js
|
|
mv /tmp/contentscript.js $DES/js/contentscript.js
|
|
rm $DES/js/vapi-usercss.js
|
|
rm $DES/js/vapi-usercss.real.js
|
|
rm $DES/js/vapi-usercss.pseudo.js
|
|
|
|
echo "*** uBlock0.webext: Generating meta..."
|
|
python3 tools/make-webext-meta.py $DES/
|
|
|
|
if [ "$1" = all ]; then
|
|
echo "*** uBlock0.webext: Creating package..."
|
|
pushd $DES > /dev/null
|
|
zip ../$(basename $DES).xpi -qr *
|
|
popd > /dev/null
|
|
elif [ -n "$1" ]; then
|
|
echo "*** uBlock0.webext: Creating versioned package..."
|
|
pushd $DES > /dev/null
|
|
zip ../$(basename $DES).xpi -qr * -O ../uBlock0_"$1".webext.xpi
|
|
popd > /dev/null
|
|
fi
|
|
|
|
echo "*** uBlock0.webext: Package done."
|