From 84669a136ebcdcd49e334b6bfb268e5f6e0350b0 Mon Sep 17 00:00:00 2001 From: newbit1 Date: Wed, 23 Nov 2022 23:02:21 +0100 Subject: [PATCH] Bug fixes --- rootAVD.sh | 71 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 46 insertions(+), 25 deletions(-) diff --git a/rootAVD.sh b/rootAVD.sh index 64b19e7..adccc85 100755 --- a/rootAVD.sh +++ b/rootAVD.sh @@ -234,13 +234,31 @@ runMagisk_to_Patch_fake_boot_img() { esac } +generate_build_prop() { + echo "[*] generating Build.prop" + local BPR=$BASEDIR/build.prop + local recfstab=$BASEDIR/recovery.fstab + getprop > $BPR + sed -i -e 's/: /=/g' -e 's/\[//g' -e 's/\]//g' $BPR + + echo "[*] generating recovery.fstab from fstab.ranchu" + cp /system/vendor/etc/fstab.ranchu $recfstab + + echo "[-] adding Build.prop and recovery.fstab to Stock Ramdisk" + $BASEDIR/magiskboot cpio $CPIO \ + "add 0644 system/build.prop build.prop" \ + "add 0644 system/etc/recovery.fstab recovery.fstab" + #exit + #BASEDIR=$(pwd) +} + create_fake_boot_img() { echo "[*] Creating a fake Boot.img" FBHI=$BASEDIR/fakebootheader.img FBI=$SDCARD/fakeboot.img echo "[-] removing old $FBI" - rm -f $FBI + rm -f $FBI $RDF printf "\x41\x4E\x44\x52\x4F\x49\x44\x21" > $FBHI # ANDROID! printf "\x00\x00\x00\x00\x00\x00\x00\x00" >> $FBHI @@ -248,10 +266,13 @@ create_fake_boot_img() { printf "\x00\x00\x00\x00\x00\x00\x00\x00" >> $FBHI printf "\x00\x00\x00\x00\x00\x08\x00\x00" >> $FBHI # 00080000 (Pagesize 2048) echo "[!] Only a minimal header is required for Magisk to repack the ramdisk" - mv $RDF $CPIO + #mv $RDF $CPIO + if $DEBUG; then + generate_build_prop + fi echo "[*] repacking ramdisk.img into $FBI" - $BASEDIR/magiskboot repack -n $FBHI $FBI > /dev/null 2>&1 + $BASEDIR/magiskboot repack $FBHI $FBI > /dev/null 2>&1 InstallMagiskTemporarily runMagisk_to_Patch_fake_boot_img RemoveTemporarilyMagisk @@ -271,7 +292,6 @@ unpack_patched_ramdisk_from_fake_boot_img() { for file in `ls -tu $SDCARD/*magisk_patched*`; do rm -f $file done - else echo "[!] No magisk_patched file could be found!" abort_script @@ -1353,14 +1373,15 @@ apply_ramdisk_hacks() { } verify_ramdisk_origin() { - echo "[*] Verifying Boot Image Build Date" - local property=ro.bootimage.build.date.utc - BUILDDATEAVD=$(getprop $property) - echo "[-] Boot Image Build Date AVD=$BUILDDATEAVD" - BUILDDATERDF=$(cat $CPIO | grep -m 1 $property | cut -f 2 -d "=") - if [ "$BUILDDATERDF" != "" ]; then - echo "[-] Boot Image Build Date Ramdisk=$BUILDDATERDF" - if [ "$BUILDDATEAVD" == "$BUILDDATERDF" ]; then + echo "[*] Verifying Boot Image by its Kernel Release number:" + local KRNAVD=$(uname -r) + local KRNRDF="" + echo "[-] This AVD = $KRNAVD" + KRNRDF=$(cat $CPIO | strings | grep -m 1 vermagic= | sed 's/vermagic=//;s/ .*$//') + + if [ "$KRNRDF" != "" ]; then + echo "[-] Ramdisk = $KRNRDF" + if [ "$KRNAVD" == "$KRNRDF" ]; then echo "[!] Ramdisk is probably from this AVD" else echo "[!] Ramdisk is probably NOT from this AVD" @@ -1385,7 +1406,6 @@ test_ramdisk_patch_status(){ echo "[-] Stock boot image detected" SHA1=`$BASEDIR/magiskboot sha1 ramdisk.cpio 2>/dev/null` cp -af $CPIO $CPIOORIG 2>/dev/null - verify_ramdisk_origin ;; 1 ) # Magisk patched @@ -2277,20 +2297,21 @@ InstallMagiskToAVD() { if $FAKEBOOTIMG; then process_fake_boot_img fi - #else - #decompress_ramdisk - test_ramdisk_patch_status - if [ "$DERIVATE" == "BlueStacks" ]; then - InstallMagiskIntoBlueStacksRamdisk + + test_ramdisk_patch_status + verify_ramdisk_origin + + if [ "$DERIVATE" == "BlueStacks" ]; then + InstallMagiskIntoBlueStacksRamdisk + else + if $PATCHEDBOOTIMAGE; then + apply_ramdisk_hacks else - if $PATCHEDBOOTIMAGE; then - apply_ramdisk_hacks - else - patching_ramdisk - fi + patching_ramdisk fi - repacking_ramdisk - #fi + fi + + repacking_ramdisk rename_copy_magisk fi