mirror of
https://github.com/topjohnwu/Magisk.git
synced 2025-06-12 05:07:45 +02:00
Support custom legacy Sony devices with init.real setup
Custom ROM bring-ups of legacy Sony devices contain the following: /init (symlink to /bin/init_sony) /init.real (the "real" Android init) /bin/init_sony (this was /sbin/init_sony on Android <11) Kernel loads the ramdisk and starts /init -> /bin/init_sony /bin/init_sony does low-level device setup (see: https://github.com/LineageOS/android_device_sony_common/blob/lineage-18.1/init/init_main.cpp) /bin/init_sony unlinks /init and renames /init.real to /init /bin/init_sony starts /init Since init_sony needs to run first magiskinit needs to replace init.real instead, so add workarounds based on detection of init.real to boot patcher and uninstaller Thanks @115ek and @bleckdeth Fixes #3636 Co-authored-by: topjohnwu <topjohnwu@gmail.com>
This commit is contained in:
@ -125,6 +125,10 @@ case $((STATUS & 3)) in
|
||||
else
|
||||
ui_print "! Boot image backup unavailable"
|
||||
ui_print "- Restoring ramdisk with internal backup"
|
||||
if ./magiskboot cpio ramdisk.cpio "exists init.real"; then
|
||||
# Work around custom legacy Sony /init -> /(s)bin/init_sony : /init.real setup
|
||||
./magiskboot cpio ramdisk.cpio "mv .backup/init .backup/init.real"
|
||||
fi
|
||||
./magiskboot cpio ramdisk.cpio restore
|
||||
if ! ./magiskboot cpio ramdisk.cpio "exists init"; then
|
||||
# A only system-as-root
|
||||
|
Reference in New Issue
Block a user