META-INF for the flashable zip

This commit is contained in:
w1nst0n 2021-01-10 21:13:14 +01:00
parent 9283b7bbab
commit e5634dd4e6
2 changed files with 54 additions and 0 deletions

View file

@ -0,0 +1 @@
# Dummy file; update-binary is a shell script

View file

@ -0,0 +1,53 @@
#!/sbin/sh
# Template made by @osm0sis xda-developers
# https://forum.xda-developers.com/t/dev-template-complete-shell-script-flashable-zip-replacement-signing-script.2934449/
OUTFD=/proc/self/fd/$2;
ZIPFILE="$3";
# ui_print "<message>" ["<message 2>" ...]
ui_print() {
while [ "$1" ]; do
echo -e "ui_print $1
ui_print" >> "$OUTFD";
shift;
done;
}
# unmount <partition>
unmount() { umount "$1"; }
# is_mounted <partition>
is_mounted() { test "$(mount | grep " $1 ")" && echo 1 || echo 0; }
# package_extract_dir <dir> <destination_dir>
package_extract_dir() {
local entry outfile;
for entry in $(unzip -l "$ZIPFILE" 2>/dev/null | tail -n+4 | grep -v '/$' | grep -o " $1.*$" | cut -c2-); do
outfile="$(echo "$entry" | sed "s|${1}|${2}|")";
mkdir -p "$(dirname "$outfile")";
unzip -o "$ZIPFILE" "$entry" -p > "$outfile";
done;
}
# delete <file> [<file2> ...]
delete() { rm -f "$@"; }
# set_perm <owner> <group> <mode> <file> [<file2> ...]
set_perm() {
local uid gid mod;
uid=$1; gid=$2; mod=$3;
shift 3;
chown "$uid":"$gid" "$@" || chown "$uid"."$gid" "$@";
chmod "$mod" "$@";
}
########################### MAIN SCRIPT ###########################
ui_print "----- Universal Android Debloater -----"
package_extract_dir "system" "/system"
set_perm 0 0 0777 "/system/root_debloat_script.sh"
sh root_debloat_script.sh
delete "/system/root_debloat_script.sh"
unmount "/system"
ui_print "----- DONE -----"