diff --git a/scripts/build.sh b/scripts/build.sh index de25b64..f38124e 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -742,25 +742,22 @@ if [ "$ROOT_SOL" = 'magisk' ]; then echo "Integrate Magisk" sudo cp "$WORK_DIR/magisk/magisk/"* "$ROOT_MNT/debug_ramdisk/" sudo cp "$MAGISK_PATH" "$ROOT_MNT/debug_ramdisk/stub.apk" || abort - sudo tee -a "$ROOT_MNT/debug_ramdisk/preparebin.sh" </dev/null || abort -#!/system/bin/sh -mkdir -p /data/adb/magisk -cp /debug_ramdisk/* /data/adb/magisk/ -sync -chmod -R 755 /data/adb/magisk -restorecon -R /data/adb/magisk -EOF - sudo tee -a "$ROOT_MNT/debug_ramdisk/mkpreinit.sh" </dev/null || abort + sudo tee -a "$ROOT_MNT/debug_ramdisk/loadpolicy.sh" </dev/null || abort #!/system/bin/sh MAGISKTMP=/debug_ramdisk export MAGISKTMP +mkdir -p /data/adb/magisk +cp \$MAGISKTMP/* /data/adb/magisk/ +sync +chmod -R 755 /data/adb/magisk +restorecon -R /data/adb/magisk MAKEDEV=1 \$MAGISKTMP/magisk --preinit-device 2>&1 RULESCMD="" for r in \$MAGISKTMP/.magisk/preinit/*/sepolicy.rule; do [ -f "\$r" ] || continue RULESCMD="\$RULESCMD --apply \$r" done -/debug_ramdisk/magiskpolicy --live \$RULESCMD 2>&1 +\$MAGISKTMP/magiskpolicy --live \$RULESCMD 2>&1 EOF sudo find "$ROOT_MNT/debug_ramdisk" -type f -exec chmod 0711 {} \; sudo find "$ROOT_MNT/debug_ramdisk" -type f -exec chown root:root {} \; @@ -771,44 +768,34 @@ EOF COPY_BIN_SVC_NAME=$(Gen_Rand_Str 12) sudo tee -a "$SYSTEM_MNT/etc/init/hw/init.rc" </dev/null on post-fs-data - mkdir /dev/tmp - mount none / /dev/tmp bind - mount none none /dev/tmp private + mkdir /dev/debug_ramdisk_mirror + mount none /debug_ramdisk /dev/debug_ramdisk_mirror bind + mount none none /dev/debug_ramdisk_mirror private mount tmpfs magisk /debug_ramdisk mode=0755 - copy /dev/tmp/debug_ramdisk/magisk64 /debug_ramdisk/magisk64 + copy /dev/debug_ramdisk_mirror/magisk64 /debug_ramdisk/magisk64 chmod 0711 /debug_ramdisk/magisk64 symlink ./magisk64 /debug_ramdisk/magisk symlink ./magisk64 /debug_ramdisk/su symlink ./magisk64 /debug_ramdisk/resetprop - copy /dev/tmp/debug_ramdisk/magisk32 /debug_ramdisk/magisk32 + start adbd + copy /dev/debug_ramdisk_mirror/magisk32 /debug_ramdisk/magisk32 chmod 0711 /debug_ramdisk/magisk32 - copy /dev/tmp/debug_ramdisk/magiskinit /debug_ramdisk/magiskinit + copy /dev/debug_ramdisk_mirror/magiskinit /debug_ramdisk/magiskinit chmod 0711 /debug_ramdisk/magiskinit - copy /dev/tmp/debug_ramdisk/magiskpolicy /debug_ramdisk/magiskpolicy + copy /dev/debug_ramdisk_mirror/magiskpolicy /debug_ramdisk/magiskpolicy chmod 0711 /debug_ramdisk/magiskpolicy - mkdir /debug_ramdisk/.magisk 755 + mkdir /debug_ramdisk/.magisk mkdir /debug_ramdisk/.magisk/mirror 0 mkdir /debug_ramdisk/.magisk/block 0 mkdir /debug_ramdisk/.magisk/worker 0 - copy /dev/tmp/debug_ramdisk/stub.apk /debug_ramdisk/stub.apk + copy /dev/debug_ramdisk_mirror/stub.apk /debug_ramdisk/stub.apk chmod 0644 /debug_ramdisk/stub.apk - copy /dev/tmp/debug_ramdisk/preparebin.sh /debug_ramdisk/preparebin.sh - chmod 0711 /debug_ramdisk/preparebin.sh - copy /dev/tmp/debug_ramdisk/mkpreinit.sh /debug_ramdisk/mkpreinit.sh - chmod 0711 /debug_ramdisk/mkpreinit.sh - umount /dev/tmp - rmdir /dev/tmp - rm /dev/.magisk_unblock - exec u:r:magisk:s0 0 0 -- /system/bin/sh /debug_ramdisk/mkpreinit.sh - exec_start $COPY_BIN_SVC_NAME + copy /dev/debug_ramdisk_mirror/loadpolicy.sh /debug_ramdisk/loadpolicy.sh + chmod 0711 /debug_ramdisk/loadpolicy.sh + umount /dev/debug_ramdisk_mirror + rmdir /dev/debug_ramdisk_mirror + exec u:r:magisk:s0 0 0 -- /system/bin/sh /debug_ramdisk/loadpolicy.sh exec u:r:magisk:s0 0 0 -- /debug_ramdisk/magisk --post-fs-data - wait /dev/.magisk_unblock 40 - rm /dev/.magisk_unblock - -service $COPY_BIN_SVC_NAME /system/bin/sh /debug_ramdisk/preparebin.sh - user root - seclabel u:r:magisk:s0 - oneshot on property:vold.decrypt=trigger_restart_framework exec u:r:magisk:s0 0 0 -- /debug_ramdisk/magisk --service @@ -817,8 +804,6 @@ on nonencrypted exec u:r:magisk:s0 0 0 -- /debug_ramdisk/magisk --service on property:sys.boot_completed=1 - mkdir /data/adb/magisk 755 - copy /debug_ramdisk/stub.apk /data/adb/magisk/magisk.apk exec u:r:magisk:s0 0 0 -- /debug_ramdisk/magisk --boot-complete on property:init.svc.zygote=restarting