[Guide] 8.1 MI PAD 4 Plus With non-gsi AICP-mordiford For microG (NanoDroid) - Xiaomi Mi Pad 4 Plus Guides, News, & Discussion

Download ROM : https://cloud.akane.blue/nextcloud/s/PbGugWPefp9fFNZ?path=/clover
Support OTA , DT2C (Status bar), exFAT, FingerPrint Scanner, USB Connect, Volte Call
Unlocked Bootloader
Backup persist partition
(There are some project that changes your WIFI MAC Address. if it happened you will lost it forever.)
It shows wifi but after entering pwd it shows only saved. Can't connect at all.
Download TWRP--- https://mega.nz/#!qcA2BQIJ!xiBnnC0B4Z7fqpARbIY2ARdDY4hJLZgsriJsWaCCzNQ
-Boot TWRP
-connect your PC with USB
-your computer -Open CMD
cmd>adb shell
cmd>cd /dev/block/platform/soc/c0c4000.sdhci/by-name/
cmd>ls -l /dev/block/platform/soc/c0c4000.sdhci/by-name/
cmd>dd if=/dev/block/platform/soc/c0c4000.sdhci/by-name/persist of=/sdcard/persist.img
(keep your persist.img in the safe place)
--------------------------
How to restore it if you have a problem.
(load your persist.img into sdcard.)
cmd>dd if=/sdcard/persist.img of=/dev/block/mmcblk0p48
Download NanoDroid https://downloads.nanolx.org/NanoDroid/Stable/
NanoDroid microG sub module
Step (clean installation)
Flash lastest Xiaomi Firmware (Clover)
https://github.com/XiaomiFirmwareUp...jKlFtxZa6wKy4bTGrLy5ptJJvfZy0d14c5fQlHypsZyLQ
Flash ROM
Reboot System
setup wifi
Flash Magisk Stable 18.1 from https://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445
Flash NanoDroid microG sub module v20.6.20190126 from https://downloads.nanolx.org/NanoDroid/Stable/NanoDroid-microG-20.6.20190126.zip
*Auto install (NanoDroid script)
++Nominatim geocoder backend
++Deja Vu Location backend
++NanoDroid microG GmsCore
+++with Maps API v1
+++with Play Store
---without Fake Store
---without Google Sync Adapters
---without swipe libraries
---without /system application override
Reboot System
-Setup MicroG setting
-Login play store configuration
Reboot
Install fdroid.apk (lastest version. https://f-droid.org/en/) --No use NanoDroid-fdroid
-open f-droid program--->set up repo (Add 3 new repos below)
https://www.nanolx.org/fdroid/repo
https://fdroid.bromite.org/fdroid/repo
https://microg.org/fdroid/repo
Install MozillaNlpBackend from f-droid App
Run microG Self-Check again but this time click UnifiedNlp setting---->Configure location backends-----Enable Mozilla Location Service

Related

[Guide] Enable Tethering on Android N Build NPC56P

As I mentioned in the "request thread...
This should work for all carriers however I've only testing on Sprint.
The problem on Android N is with dm-verity. Follow the guide to get root as well as dm-verity disabled so you can make changes to build.prop through custom recovery.
Here's how:
1) Enable USB debugging
2) In a terminal on your PC
- adb shell
- settings put global tether_dun_required 0
3) Download this boot.IMG from phh, for build NPC56P here: https://superuser.phh.me/nexus/shamu...erity-r189.img
4) Flash it using fastboot:
- sudo fastboot flash boot *path-to-downloaded.IMG*
5) Then with the volume buttons select TWRP recovery.
Then: under "Mount" check 'system' to mount system partition
- sudo adb shell
- echo net.tethering.noprovisioning=true>>/system/build.prop
6) Reboot device and enjoy tethering.
Extra) If you want root, just download Phh's SuperUser from the play store.

[MODULE] SELinux Mode Inverter (Advanced SELinux Mode Changer)

It Is Now A Part Of The Main Module Of MultiFunctions & Its Thread https://forum.xda-developers.com/apps/magisk/module-multifunctions-bootloop-t3933386.
Click to expand...
Click to collapse
Introduction:
Simple Module To Invert The Default Android SELinux Mode During Startup ([From Permissive To Enforcing] Or [From Enforcing To Permissive]).
- One Module To Switch Between Enforcing Mode & Permissive Mode
- This Module Changes The SELinux Mode For The Entirety Of The Device's Uptime Until Next Reboot
- The Default Android SELinux Mode Can Be Either Enforcing Mode Or Permissive Mode Which Depends On The Installed/Flashed Rom/Kernel
- After The Installation & 1st Reboot, The SELinux Mode = The Default Android SELinux Mode
- Disabling The Module = The Default Android SELinux Mode (Next Reboot)
- Enabling The Module = Inverting The Default Android SELinux Mode (Next Reboot)
Current Version: 1.0.3.3
- SELinux Enabled Kernel/SELinux Development Mode Is A Main Point To Use The Module So Check The General Steps
- Disabling Itself Before Getting Stuck On Bootloop For Some Roms/Kernels
- Just Install It & You Don't Need To Do Anything More
- Enforcing Mode Is Preferable For Security (Specially Banking Apps) & Permissive Mode Is Preferable For Mods (Specially Audio Mods)
- For Magisk Users, Disable Magisk Core Only Mode From The Section Of Settings In Magisk Manager Which Is Required As An Essential Step To Activate The Functionality Of SELinuxModeInverter
- For Activating The Functionality Of SELinuxModeInverter, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Copy The File Of Disable To The Folder Of Inactive --> Reboot
- Some Issues Which Are Related To Magisk/Rom/Kernel Itself Can Be Solved By Using A Different Modes [Where The Wait Mode (The Default One) Can Be Used For Resolving The Issue Of Bootloop/Bootscreen/Blackscreen Which Changes The SELinux Mode Within 5 Min. After Rebooting & The Fast Mode Can Be Used For Changing The SELinux Mode At Booting But You Need Firstly To Do What Are Mentioned In The General Steps]
- For Activating The Fast Mode, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Copy The File Of Disable To The Folder Of Wait --> Reboot
- For Activating The Wait Mode, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Delete The File Of Disable From The Folder Of Wait --> Reboot
Created: Apr.09.2018
Updated: May.09.2019
Download Link: Click Here (To Ensure That The Module Will Work Properly, Kindly Do What Are Mentioned In The General Steps)
- For The Module Which Is Ended Its Name With v1300, It Supports Magisk v13.1(1310) To v13.6(1360)
- For The Module Which Is Ended Its Name With v1400, It Supports Magisk v14.0(1400) To v15.3(1531)
- For The Module Which Is Ended Its Name With v1500, It Supports Magisk v15.0(1500) To v17.3(17300)
- For The Module Which Is Ended Its Name With v17000, It Supports Magisk v17.0(17000) To v17.3(17300)
- For The Module Which Is Ended Its Name With v18000, It Supports Magisk v18.0(18000) To v18.1(18100)
- For The Module Which Is Ended Its Name With v19000, It Supports Magisk v19.0(19000) To The Latest Version
- For The Module Which Is Ended Its Name With Unity, It Supports Any-Rooting-Tool Such As SuperSU, Lineage-AddOnSU & Magisk
Installation:
- Magisk Manager --> Modules --> Add (+) --> Choose The Downloaded File --> Reboot
- Or Flash It Thru TWRP Recovery
- Or Flash It Thru ADB Sideload --> adb sideload Module.zip --> Reboot
- Or Using A Flash-Tool (Flasher) Such FlashFire, Flashify Or Rashr --> Flash ZIP File (Flash A Flashable ZIP File) --> Choose The Downloaded File --> Reboot
Recommendation/In-Case Of Failure:
- Check The General Steps From This Post https://forum.xda-developers.com/apps/magisk/selinux-mode-inverter-t3775271/post76381334
General Info:
- To Disable The Module For Magisk Users, Open Magisk Manager --> Modules --> The Module --> Tap On The Check Box/The True Icon --> Reboot
- To Enable The Module For Magisk Users, Open Magisk Manager --> Modules --> The Module --> Tap On The Uncheck Box --> Reboot
- To Uninstall The Module For Magisk Users, Open Magisk Manager --> Modules --> The Module --> Tap On The Bin Icon --> Reboot
- To Disable The Module For All Users [Non-Magisk Users & Magisk Users], Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> The Module --> Copy The File Of Disable To The Folder Of Active (Or Delete The File Of Disable From The Folder Of Inactive) --> Reboot
- To Enable The Module For All Users [Non-Magisk Users & Magisk Users], Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> The Module --> Delete The File Of Disable From The Folder Of Active (Or Copy The File Of Disable To The Folder Of Inactive) --> Reboot
- To Uninstall The Module For All Users [Non-Magisk Users & Magisk Users] (Unity), Reflash The Module
- In-Case Of Facing A Bootloop/Bootscreen/Blackscreen Issue Due To Installing/Configuring An App, Download SafeMode4Magisk From This Thread https://forum.xda-developers.com/apps/magisk/module-safe-mode-bootloop-bootscreen-t3847422 Then Flash It
- In-Case Of Facing A Bootloop/Bootscreen/Blackscreen Issue Due To Adding App/Activity/Process To Magisk Hide, Download ClearHideList4Magisk From This Thread https://forum.xda-developers.com/apps/magisk/module-hide-list-bootloop-bootscreen-t3849208 Then Flash It
- In-Case Of Facing A Bootloop/Bootscreen/Blackscreen Issue Due To Flashing A Module, Download CoreOnlyMode4Magisk From This Thread https://forum.xda-developers.com/apps/magisk/module-core-mode-bootloop-solver-modules-t3817366 Then Flash It
Click On Thanks Button If The Module/Post Is Useful (Dreamer(3MF))
>>> Sharing A Good Thought Is Gold <<<
----------------------------------------------------------------------------------------------------------------
Core Only Mode - Microsoft Intune Company Portal Hider - Other Modules
----------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------------
permissive mode, selinux permissive, selinux permissive mode, enforcing mode, selinux enforcing, selinux enforcing mode, selinux mode changer, selinux changer, selinux switch, selinux selector, selinux toggler, setenforce, getenforce, magisk selinux, sestatus, enforce, permissive, selinux enabled kernel, selinux development mode, selinux manager, magisk module, selinux converter, selinux mode converter
---------------------------------------------------------------------------------------------------------------------------------------------------------------
Hi,
Saw your module, just wanted to tell you that not all devices have `getenforce`, some have `sestatus` instead. You might need to update accordingly.
MCMotherEffin'
SELinuxModeInverter4Magisk-v1.0.1
MCMotherEffin' said:
Hi,
Saw your module, just wanted to tell you that not all devices have `getenforce`, some have `sestatus` instead. You might need to update accordingly.
MCMotherEffin'
Click to expand...
Click to collapse
MCMotherEffin
Thanks For Your Advice & Your Modules. Kindly see the Attached Modified Module (SELinuxModeInverter4Magisk-v1.0.1(v1500)(3MF).zip) .
I would be Happy If There Is Any Recommendation/Advice.
Thanks Again.
Dreamer(3MF) said:
MCMotherEffin
Thanks For Your Advice & Your Modules. Kindly see the Attached Modified Module (SELinuxModeInverter4Magisk-v1.0.1(v1500)(3MF).zip) .
I would be Happy If There Is Any Recommendation/Advice.
Thanks Again.
Click to expand...
Click to collapse
Hi,
Instead of using `ls`, you could simply put `||` in there, also you could combine exit 1 into the same statement.
Code:
if ! selinux_mode=$(getenforce || sestatus); then exit 1; fi;
The above statement combines setenforce, sestatus and exit all in one. Also you don't need asterisks in the case statement and, setenforce takes only 1 and 0 as arguments, not enforcing or permissive, no matter what getenforce / sestatus shows.
Code:
case $selinux_mode in
enforcing|Enforcing|1 ) setenforce 0; ;;
permissive|Permissive|0) setenforce 1; ;;
esac;
will do the job while saving space.
What would one gain from inverting the status during Magisk's Startup?
MCMotherEffin' said:
Hi,
Instead of using `ls`, you could simply put `||` in there, also you could combine exit 1 into the same statement.
Code:
if ! selinux_mode=$(getenforce || sestatus); then exit 1; fi;
The above statement combines setenforce, sestatus and exit all in one. Also you don't need asterisks in the case statement and, setenforce takes only 1 and 0 as arguments, not enforcing or permissive, no matter what getenforce / sestatus shows.
Code:
case $selinux_mode in
enforcing|Enforcing|1 ) setenforce 0; ;;
permissive|Permissive|0) setenforce 1; ;;
esac;
will do the job while saving space.
Click to expand...
Click to collapse
Concerning
A- (if ! selinux_mode=$(getenforce || sestatus); then exit 1; fi , I tried Something like This But The Module doesnot change the SELinux Mode because 'sestatus' which is not Supported in My Android So The Module will get An Error which force to not Continue. So The Best Solution For Me is Using 'ls'.
B- The Other Points, Will be Reflected/Applied In The Next Version
Thanks For Sharing Your Thoughts & Efforts
SELinuxModeInverter4Magisk-v1.0.2
Dreamer(3MF) said:
Concerning
A- (if ! selinux_mode=$(getenforce || sestatus); then exit 1; fi , I tried Something like This But The Module doesnot change the SELinux Mode because 'sestatus' which is not Supported in My Android So The Module will get An Error which force to not Continue. So The Best Solution For Me is Using 'ls'.
B- The Other Points, Will be Reflected/Applied In The Next Version
Thanks For Sharing Your Thoughts & Efforts
Click to expand...
Click to collapse
I use Your Sytanx [ (if ! selinux_mode=$(getenforce || sestatus); then exit 1; fi] which works Good
oreo27 said:
What would one gain from inverting the status during Magisk's Startup?
Click to expand...
Click to collapse
For Example
- This is Useful for Certain Audio Mods.
- Some Android Versions come with Permissive As The Default SELinux Mode. Enforcing is The Preferred SELinux Mode for Security so You can choose It But It needs SELinux Enabled Kernel.
Kindly check This Link https://wiki.gentoo.org/wiki/SELinux/Tutorials/Permissive_versus_enforcing
Dreamer(3MF) said:
For Eaxample
- This is Useful for Certain Audio Mods.
- Some Android Versions come with Permissive As The Default SELinux Mode. Enforcing is The Preferred SELinux Mode for Security so You can choose It But It needs SELinux Enabled Kernel.
Kindly check This Link https://wiki.gentoo.org/wiki/SELinux/Tutorials/Permissive_versus_enforcing
Click to expand...
Click to collapse
Thank you!
Ah yes. I think I've read something similar to what you've mentioned. If mine is already Enforcing, will this change it to Permissive during the boot-up process only or for the entirety of the device's uptime until next reboot?
If the former, what benefits will I actually gain in having it use Permissive during boot-up?
oreo27 said:
Thank you!
Ah yes. I think I've read something similar to what you've mentioned. If mine is already Enforcing, will this change it to Permissive during the boot-up process only or for the entirety of the device's uptime until next reboot?
If the former, what benefits will I actually gain in having it use Permissive during boot-up?
Click to expand...
Click to collapse
This Module will change the SELinux Mode for the entirety of the device's uptime until next reboot
Notes:
- This Module Changes The SELinux Mode (Invert The Default Android SELinux Mode) For The Entirety Of The Device's Uptime Until Next Reboot
- Disabling This Module From Magisk Manager = The Default Android SELinux Mode
- Enabling This Module From Magisk Manager = Inverting The Default Android SELinux Mode
- Enforcing Mode For Security
- Permissive Mode For Mods (Specially Audio Mods)
For Magisk v1400, Download SELinuxModeInverter4Magisk-v1.0.2(v1400)(3MF).zip
Reserved for News/Updates #1
Deleted
Reserved for News/Updates #2
Changelog: More Details Have Been Added In The 1st Post.
Updated SELinuxModeInverter4Magisk To v1.0.3!
Changelog: Disabling Itself Before Getting Stuck On Bootloop For Some Roms/Kernels.
Just Install It & You Don't Need To Do Anything More.
For More Details About Enforcing Mode & Permissive Mode, Check This Link https://wiki.gentoo.org/wiki/SELinux/Tutorials/Permissive_versus_enforcing
The General Steps:
- SELinux Enabled Kernel/SELinux Development Mode Is Required Which Means The Installed/Flashed Rom/Kernel Has The Ability To Switch Between Enforcing Mode & Permissive Mode
- To Check The Above Mentioned Ability, Install Terminal Emulator From PlayStore --> Open It -->
-----> For Getting The Current Android SELinux Mode, Write su --> Click On Enter --> Write getenforce (Most Devices) Or sestatus (Some Devices) --> Click On Enter
-----> For Setting The Current Android SELinux Mode, Write su --> Click On Enter --> Write setenforce 0 (For Permissive Mode) Or setenforce 1 (For Enforcing Mode) --> Click On Enter
-----> Check Again The Current Android SELinux Mode
-----> If The Mentioned Steps Worked/Succeeded, Download SELinuxModeInverter4Magisk From This Link https://androidfilehost.com/?w=files&flid=293646 & Flash It Then Reboot
-----> Enforcing Mode Is Preferable For Security (Specially Banking Apps) & Permissive Mode Is Preferable For Mods (Specially Audio Mods)
-----> For Magisk Users, Disable Magisk Core Only Mode From The Section Of Settings In Magisk Manager
-----> For Activating The Functionality Of SELinuxModeInverter, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Copy The File Of Disable To The Folder Of Inactive --> Reboot
-----> Some Issues Which Are Related To Magisk/Rom/Kernel Itself Can Be Solved By Using A Different Modes [Where The Wait Mode (The Default One) Can Be Used For Resolving The Issue Of Bootloop/Bootscreen/Blackscreen Which Changes The SELinux Mode Within 5 Min. After Rebooting & The Fast Mode Can Be Used For Changing The SELinux Mode At Booting]
-----> For Activating The Fast Mode, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Copy The File Of Disable To The Folder Of Wait --> Reboot
-----> For Activating The Wait Mode, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Delete The File Of Disable From The Folder Of Wait --> Reboot
-----> If The Mentioned Steps Didn't Work/Succeed, It Means The Flashed Rom/Kernel Hasn't The Ability To Switch Between Enforcing Mode & Permissive Mode So Flash Another Rom/Kernel Which Supports The Ability Of Changing SELinux Mode
- P.S. Maybe The Flashed Rom/Kernel Hasn't The Ability To Switch Between Permissive Mode & Enforcing Mode During Startup So You Can Use Only The Wait Mode (Not The Fast Mode)
- For Magisk Users, If You Want To Get Accurate Feedback From getenforce/sestatus, Disable Magisk Hide (Magisk Manager --> Settings --> Disable Magisk Hide) And After Finishing, Enable Magisk Hide Again [P.S. Magisk Hide Will Hide That Your Device Is In Permissive Mode To Pass The SafetyNet]
In-Case Of Failure: After Doing Successfully The Above Mentioned Steps
- For Magisk Users, Disable All Modules From Magisk Manager (Modules) & Also Disable All Apps Except Terminal Emulator From Magisk Manager (SuperUser) Then Reboot
- For Non-Magisk Users, Disable All Apps Except Terminal Emulator From SuperUser Of The Used Rooting Tool Then Reboot
- For Activating The Functionality Of ClearDalvikCache, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> DalvikCache --> Delete The File Of Disable From The Folder Of Active --> Reboot
- For Activating The Functionality Of SELinuxModeInverter, Use Any Root File Explorer Such MiXplorer --> Root --> data --> DreamerMods --> MultiFunctions --> SELinuxModeInverter --> Copy The File Of Disable To The Folder Of Inactive --> Reboot
- Terminal Emulator --> Write su --> Click On Enter --> Write getenforce (Most Devices) Or sestatus (Some Devices) --> Click On Enter --> Write setenforce 0 (For Permissive Mode) Or setenforce 1 (For Enforcing Mode) --> Click On Enter --> Write getenforce (Most Devices) Or sestatus (Some Devices) --> Click On Enter --> Send The Screenshot Of Terminal Emulator
- Download The Test Module Of SELinuxModeInverter4Magisk From This Link https://androidfilehost.com/?w=files&flid=274655 & Flash It Then Reboot
- Wait About 30 Min.
- Terminal Emulator --> Write su --> Click On Enter --> Write getenforce (Most Devices) Or sestatus (Some Devices) --> Click On Enter --> Send The Screenshot Of Terminal Emulator
- Reboot & Wait About 30 Min.
- Terminal Emulator --> Write su --> Click On Enter --> Write getenforce (Most Devices) Or sestatus (Some Devices) --> Click On Enter --> Send The Screenshot Of Terminal Emulator
- Send A Copy Of debug-SELinux.txt & debug-SELinux-BU.txt (Their Paths Are Root --> /data/debug-SELinux.txt, /data/debug-SELinux-BU.txt & For Copying These Files, Use Any Root File Explorer Such As MiXplorer)
- For Magisk Users, Magisk Manager --> Modules --> Send Its Screenshot & Magisk Manager --> SuperUser --> Send Its Screenshot
- For Non-Magisk Users, Send The Screenshot Of SuperUser Of The Used Rooting Tool
- Send Full Logcat (Download Logcat Extreme From PlayStore)
- For Magisk Users, Send Magisk Log (Magisk Manager --> Log --> Magisk & Also The Screenshot Of Magisk Manager --> Log --> SuperUser]
P.S. In-Case Of Facing A Bootloop/Bootscreen/Blackscreen Issue Due To Flashing A Module,
- For Magisk Users, Download CoreOnlyMode4Magisk From This Thread https://forum.xda-developers.com/apps/magisk/module-core-mode-bootloop-solver-modules-t3817366 Then Flash It
- For All Users [Non-Magisk Users & Magisk Users] (Unity), Reflash The Module To Uninstall The Module
Updated SELinuxModeInverter4Magisk To v1.0.5!
Changelog: Checking Its Path.
Just Install It & You Don't Need To Do Anything More.

S10 w BeyondRom, Magisk and TWRP - Systemize not finding apps

Installed BeyondROM a few days ago with the help of:
The Proper Way to root your S10 (10+,10e) Device and get it Right! Tipps & Tricks
Hi Guys :cowboy: Today I want to bring some simple and effektive Insights on proper Device & Software Management and also about Mistakes on the Way and Solutions! :good: ;) So make yourself comfortable and check this out! It will really help...
forum.xda-developers.com
Click to expand...
Click to collapse
no boot issues, Magisk safety check cleared, TWRP working perfectly with no issues. but when i try to systemize a file trough adb shell or Terminux i run into this issue
C:\Users\Name\AppData\Local\Android\Sdk\platform-tools>adb shell
beyond1:/ $ su
beyond1:/ # systemize
==============================================
App Systemizer (Terminal Emulator) v17.3.1(70)
by veez21
==============================================
BusyBox v1.33.1-osm0sis
/system/bin/busybox
==============================================
Enter logs to upload logs
==============================================
Set SELinux Enabled: false
SELinux Status: Enforcing
==============================================
1 - Systemize Installed Apps (Listed)
2 - Systemize Installed Apps (Enter label)
3 - Systemize given APK
s - Set SELinux
0 - Exit
[CHOICE]: 1
Loading Apps [-]
==============================================
Installed Apps ===============================
==============================================
To systemize multiple apps, enter multiple number. Example: "1 0 0"
x - Back to Menu
r - Refresh list
0 - Exit
[CHOICE]:
Click to expand...
Click to collapse
Trying to move a app from standard install into app-priv, but with no success so far. i have tried to copy or move manually with TWRP file management but that just removes the app(files are there, but phone removes the install)
Tried option 2 with label but systemize cant find the Folder or the APK in the folder.
any help appreciated.

[WIP] [Redmi 2 ProT] [wt86047] [wt88047] Gnome-mobile - Phosh - Plasma mobile postmarketOS aarch64

Link lk2nd, rootfs, twrp, unlock bootloader
https://drive.google.com/drive/folders/1LnHHdc0s-CVMFgR6hCuHxJg4_BUutxxT
default user is user, passwd is 147147
Reference wiki, Redmi 2 full support on community branch:
https://wiki.postmarketos.org/wiki/Xiaomi_Redmi_2_(xiaomi-wt88047)
Xiaomi MI 2/2S (xiaomi-aries) & Xiaomi Redmi 2 (wt86047/wt88047) using factory stock ROM Android 4.2/4.4 to unlock bootloader, no need mi_unlock tool
Redmi 2 variants:
Global wt88047: HM2014811, HM2014812, HM2014817, HM2014818, HM2014819, and HM2014821
China wt86047: HM2014813, HM2014512 and HM2014112
Redmi 2 ProT factory ROM:
https://mifirm.net/model/wt86047.ttt#cn-fastboot-dev
Installing Alpine Linux on Virutalbox:
Go to MI fastboot, press Power + Volume Down
Connect Redmi 2 ProT to PC/Laptop. Using MiFlash to come back stock Android 4.4, boot to Adnroid
Go to MI fastboot, press Power + Volume Down
Using Mi Bootloader Unlock Tool [No Auth ID Required]_BY_flash-firmware.blogspot.com.zip on gdrive to unlock bootloader
Go to MI fastboot, press Power + Volume Down
Instal TWRP on gdrive twrp-3.2.1-wt86047.img
# sudo fastboot flash recovery twrp-3.2.1-wt86047.img
Install firmware LineageOS
https://wiki.lineageos.org/devices/wt88047/install#updating-firmware
Enter TWRP, press hold Power + Volume Up + Volume Down
Go to Advance → ADB Sideload → Slide to install
On PC/Laptop, flash new firmware for Lineage OS (modem, wifi driver, bluetooth, etc.):
# sudo adb sideload wt86047-firmware_20161223.zip
Go to MI fastboot, press Power + Volume Down, to flash lk2nd-msm8916.img
https://github.com/msm8916-mainline/lk2nd#installation
# sudo fastboot flash boot lk2nd-msm8916.img
Build image from pmbootstrap on PC/Laptop:
# sudo apk add pmbootstrap python3 coreutils procps git android-tools
# pmbootstrap init
Channel []: edge
Vendor []: xiaomi
Device codename []: wt88047
Kernel []: mainline-modem
Enable this package? (y/n) [y]: y
Username []: user
User interface [gnome-mobile]: gnome-mobile ← phosh or plasma-mobile
Extra packages []: nano,vim
Choose default locale installation [en_US.UTF-8]: en_US.UTF-8
Device hostname (short form, e.g ‘foo’) []: wt86047-gnome-mobile
Build outdate packages during ‘pmbootstrap install’? (y/n) [y]: y
# pmbootstrap status
Before build image, get packages on chroot local
# pmbootstrap chroot
~/# apk add abuild build-base ccache git devicepkg-dev mkbootimg postmarketos-base ccache-cross-symlinks gcc-aarch64 g++-aarch64 crossdirect ncurses-dev bash bc bison elfutils-dev flex gmp-dev installkernel linux-headers openssl-dev perl sed binutils-aarch64
# pmbootstrap --details-to-stdout install
*** SET LOGIN PASSWORD FOR: 'user' ***
(rootfs_xiaomi-wt88047) % passwd user
New password: 147147
Retype new password: 147147
# pmbootstrap export
Image folder: /home/[username]/.local/var/pmbootstrap/chroot_native/home/pmos/rootfs/xiaomi-wt88047.img
Boot folder: /home/[username]/.local/var/pmbootstrap/chroot_rootfs_xiaomi_wt88047/boot
Install rootfs, go to lk2nd fastboot: Power on the device. After it vibrates, hold Volume Down
On PC/Laptop, go to Redmi 2 ProT image folder
Unzip if you download image from gdrive
# sudo unxz -v xiaomi-wt88047.img.xz
# sudo fastboot flash userdata xiaomi-wt88047.img
# sudo fastboot erase system
# sudo fastboot reboot
Enjoy Phosh pmOS on Xiaomi Redmi 2 ProT!!!
Reference link: https://tinhte.vn/thread/postmarket...-wt86047-wt88047-kernel-5-14-aarch64.3413747/
GNOME Shell on Mobile aka Gnome-mobile
Docker run on redmi2 ProT like RaspberryPi

How To Guide How to install Magisk into the boot partition using a script

HI
Update 13.04.2023 /bs
To install Magisk v26.0 or newer the script version 25.01.2023 v2.5.1.0 is necessary.
Unfortunately there is a new feature in Magisk v26.x that prevents the full installation of Magisk from within a booted recovery; from the Magisk docs:
This means that any installation of Magisk v26+ using custom recovery will be incomplete; a subsequent re-installation through the Magisk app after booting up is required.
Click to expand...
Click to collapse
Therefor currently the installation of Magisk v26.x via script without user intervention does not yet work
I wrote a little shell script for Linux (bash) to add Magisk to the boot partition of a phone without user intervention called install_magisk_via_twrp.sh.
This is useful for example to re-install Magisk into the boot partition after an OS upgrade .
The script uses only the commands fastboot and adb, a recovery image (e.g. TWRP), and the patch script from Magisk to re-install Magisk into the boot partition.
Notes
Note that the script version 1.1.0.0 or newer also works if the phone is secured via PIN or something similar.
Since version 2.0.0.0 it is not necessary anymore to install Magisk via Magisk App into a boot image file before starting the script.
Since version 2.0.0.0 the script can install Magisk into the partition even if the Magisk app is not installed yet.
SInce version 2.1.0.0 the script will also copy the Magisk apk to the phone file if requested via parameter.
Version 2.5.1.0 of the script install_magisk_via_twrp.sh or newer of the script is necessary to install Magisk v26.1 or newer
The usage for the script is:
Code:
[ OmniRom 13 Dev - [email protected] /data/develop/android/scripts_on_linux ] $ ./install_magisk_via_twrp.sh -h
install_magisk_via_twrp.sh version - v2.3.0.0 - add Magisk to the boot partition of a phone running Android using TWRP
install_magisk_via_twrp.sh [-h|help|-H] [boot_slot] [wait=n] [dd|fastboot] [twrp_image] [cleanup] [delete_adb_dir] [adb_only] [use_apk] [copy_apk]
[ OmniRom 13 Dev - [email protected] /data/develop/android/scripts_on_linux ] $
Use the parameter -H to print the detailed usage:
Spoiler: Detailed usage
Code:
[ OmniRom 13 Dev - [email protected] /data/develop/android/scripts_on_linux ] $ ./install_magisk_via_twrp.sh -H
install_magisk_via_twrp.sh version - v2.3.0.0 - add Magisk to the boot partition of a phone running Android using TWRP
Usage
install_magisk_via_twrp.sh [-h|help|-H] [boot_slot] [wait=n] [dd|fastboot] [twrp_image] [cleanup] [delete_adb_dir] [adb_only] [use_apk] [copy_apk]
All parameter are optional. The parameter can be used in any order.
Use the parameter "help" or "-H" to print the detailed usage help; use the parameter "-h" to print only the short usage help
The parameter "boot_slot" can be a, b, active, inactive, next, current; default is the current boot slot of the phone
The value for the parameter "wait" is the number of seconds to wait before starting the script to install Magisk on the phone
This seems to be necessary to avoid errors while repacking the boot image. The default wait time is 10 seconds.
Use the parameter "dd" to request repatching via dd in an adb session ; use the parameter "fastboot" to request repatching via "fastboot"
Default is to use "dd" to flash the patched boot image.
The parameter "twrp_image" can be used to define another TWRP image to use. The parameter is optional - the
default for "twrp_image" is hardcoded in the script (variable TWRP_IMAGE)
The default TWRP image of the script is the TWRP for the ASUS Zenfone 8.
Use the parameter "cleanup" to delete the directory /data/MagiskInst at script end
If the parameter "delete_adb_dir" is used the script will delete all files and directories created in the directory /data after Magisk
was successfully installed into the boot partition
If the parameter "adb_only" is used the script will only install the directories and binaries for Magisk in the directory /data/adb.
The script will unpack the necesseray files for adding Magisk to the boot partition from the installed Magisk apk file to
the temporary directory /data/MagiskInst if the files in /data/adb/magisk are missing.
Use the parameter "use_apk" to force the script to use the files from the Magisk app even if the files in /data/adb/magisk exist.
If the parameter "copy_apk" is used the script will copy the Magisk apk file to the phone.
The script now can also install Magisk into a boot partition without an installed Magisk app. To use this feature copy the Magisk apk file
(Magisk*apk) to the directory /data or /sdcard/Download on the phone before starting the script or use the parameter "copy_apk".
The phone to patch must be attached via USB.
The phone can be either in fastboot mode, in normal mode with enabled adb support, or already booted from the TWRP image
To change some of the values used by the script you can set environment variables before starting the script:
Set the environment variable REBOOT to "yes" before starting the script to automatically reboot the phone after patching the new image
Set the environment variable REBOOT to "no" before starting the script to disable the automatic reboot after patching the new image.
Set the environment variable SERIAL_NUMBER to the serial number of the phone to patch if there is more then one phone connected via USB
Set the environment variable ADB_OPTIONS to the options to be used with the adb command
Set the environment variable FASTBOOT_OPTIONS to the options to be used with the fastboot command
Set the environment variable DOWNLOAD_DIR_ON_PHONE to the data directory to use on the phone (def.: /sdcard/Download)
Set the envionment variable MAGISK_APK_FILE to the Magisk apk file to use
The default TWRP image to use is "/data/backup/ASUS_ZENFONE8/twrp/current_twrp.img"
[ OmniRom 13 Dev - [email protected] /data/develop/android/scripts_on_linux ] $
In the default the script will ask the user for input before rebooting the phone from the patched boot partition.
To disable this request call the script like this
Code:
REBOOT=yes install_magisk_via_twrp.sh
Additional infos
Prerequisites
the Magisk App; either installed or as apk file
a computer running Linux with working adb and fastboot binaries available via PATH variable
a phone with unlocked boot loader
a working recovery image (e.g. TWRP) for the attached phone that automatically mounts /data and has enabled adb support (For the ASUS Zenfone 8 the official TWRP image from https://twrp.me/asus/zenfone8.html version 3.7.0 or newer can be used)
Test Environment
Tested on an ASUS Zenfone 8 and with
OmniROM 12 (Android 12) and Magisk v24.3
OmniROM 12 (Android 12) and Magisk v25.0
OmniROM 12 (Android 12) and Magisk v25.2
OmniROM 13 (Android 13) and Magisk v25.2
AospExtended 9.0 w/o GAPPS (Android 12) and Magisk v24.3
AospExtended 9.0 w/o GAPPS (Android 12) and Magisk v25.0
ASUS Original Android 11 and Magisk v24.3
ASUS Original Android 12 and Magisk v24.3
ASUS Original Android 13 Beta 1 and Magisk v25.0
Details
The script uses the scripts and binaries from the directory /data/adb/magisk. If these executables do not exist the script searches for the installed Magisk apk file /data/app/*/com.topjohnwu.magisk*/base.apk and extracts the scripts and binaries from that file. If the Magisk apk is not installed the script searches for the Magisk APK file Magisk*.apk in the directories /sdcard/Download and /data and extracts the scripts and executables from that file if found.
If the parameter copy_apk is used the script copies the Magisk apk file to the directory /sdcard/Download on the phone or, if that directory does not exist, to the directory /data on the phone
The patched boot images will be created in the directory /sdcard/Downloads on the phone (variable DOWNLOAD_DIR_ON_PHONE)
The script uses the original script called boot_patch.sh from Magisk to patch the boot image.
You can execute the script as often as you like.
The script will not delete the created files in the directory /sdcard/Download on the phone so you might do a cleanup of that directory manual
If the directory /sdcard/Download is not available the script will use the directory /tmp for temporary files (Note: /tmp is mounted on a ramdisk)
If the check sum of the boot image before the patching is equal to the check sum after the successfull patching then Magisk was already installed in the boot partition
The script will boot the phone up to 4 times.
Trouble Shooting
- Error message like this
Code:
/data/adb/magisk/boot_patch.sh[211]: can't create /proc/self/fd/: Is a directory
can be ignored (these are only error messages from the function to print some additional messages)
Note: Since version 2.0.0.0 these error messages should not occur anymore.
- Patching the boot partition via "dd" fails sometimes for unknown reason so you should only use it if you know how to fix a damaged boot partition!
- Downloading the patched boot image via "adb pull" (neccessary for patching the boot partition using fastboot) sometimes fails for unknown reason:
So if you get an error message like this:
Code:
[ 77%] /sdcard/Download/patched_boot_a.391985.img
ERROR: Error downloading the file "/sdcard/Download/patched_boot_a.391985.img" from the phone!
just restart the script again (or download the file and flash the boot partition manually)
- If the adb connection dies and there are error messages like this
Code:
adb: insufficient permissions for device
restart the adb server using
Code:
adb kill-server
if that does not work disconnect and reconnect the USB cable
Spoiler: Sample output of the script
Code:
[[email protected] /data/backup/Android/scripts_on_linux]$ ./install_magisk_via_twrp.sh
./install_magisk_via_twrp.sh version - 2.0.0.0 - add Magisk to the boot partition of a phone running Android using TWRP
Using the TWRP image hardcoded in the script: "/data/backup/ASUS_ZENFONE8/twrp/twrp-3.7.0_12-0-I006D.img"
Checking the script prerequisites ...
Will wait 10 second(s) before starting the script on the phone
The script is running as user "xtrnaw7" -- will use "sudo" for the fastboot commands ...
Will patch the boot partition on the attached phone with the serial number "M6AIB760D0939LX"
Using the options "-d -s M6AIB760D0939LX " for the adb commands
Using the options " -s M6AIB760D0939LX " for the fastboot commands
Checking for a connected phone booted into fastboot mode ...
No attached phone in fastboot mode found
Checking for an attached phone with working access via adb (USB) ...
Linux localhost 5.4.147-Omni-qgki-perf-gea6f815f5af9-dirty #42 SMP PREEMPT Tue Sep 27 18:03:41 CEST 2022 aarch64
... found a phone connected via USB with working adb access
The phone is booted in normal mode
The installed OS is based on Android 12 (Wed Aug 10 06:59:46 CEST 2022); the description for the distribution is "omni_zenfone8-user 12 SQ3A.220605.009.A1 eng.xtrnaw.20220810.065947 release-keys"
The installed version of Magisk is com.topjohnwu.magisk versionCode 25200
Booting the phone into the fastboot mode now ...
Waiting up to 60 seconds for the boot into the fastboot mode ...
Booting the phone from the TWRP image "/data/backup/ASUS_ZENFONE8/twrp/twrp-3.7.0_12-0-I006D.img" now ...
Sending 'boot.img' (98304 KB) OKAY [ 2.489s]
Booting OKAY [ 10.359s]
Finished. Total time: 12.888s
Waiting up to 60 seconds for the boot of the phone ....
Retrieving the current boot slot from the phone ...
The current boot slot is "_b"
The boot slot to patch is "_b"
The boot partition to patch is "boot_b"
Checking if the Magisk patch script "boot_patch.sh" exists on the phone ....
-rwxr-xr-x 1 root root 5987 2022-10-27 07:33 /data/adb/magisk/boot_patch.sh
Checking if the download directory "/sdcard/Download" exists on the phone ....
/sdcard/Download
Creating the boot image file "/sdcard/Download/boot_b.732627.img" from the partition "/dev/block/by-name/boot_b" ...
196608+0 records in
196608+0 records out
100663296 bytes (96 M) copied, 0.308243 s, 311 M/s
Checking the result ...
-rw-rw---- 1 root media_rw 100663296 2022-10-28 09:51 /sdcard/Download/boot_b.732627.img
The check sums are:
The check sum of the boot partition "/dev/block/by-name/boot_b" on the phone is "4108888341"
The check sum of th boot image file on the phone is "/sdcard/Download/boot_b.732627.img" is "4108888341"
Patching the boot image file "/sdcard/Download/boot_b.732627.img" ...
Waiting now 10 seconds ...
- Unpacking boot image
Parsing boot image: [/sdcard/Download/boot_b.732627.img]
HEADER_VER [3]
KERNEL_SZ [42025472]
RAMDISK_SZ [34080597]
OS_VERSION [12.0.0]
OS_PATCH_LEVEL [2022-05]
PAGESIZE [4096]
CMDLINE []
KERNEL_FMT [raw]
RAMDISK_FMT [gzip]
VBMETA
- Checking ramdisk status
Loading cpio: [ramdisk.cpio]
- Stock boot image detected
- Patching ramdisk
Loading cpio: [ramdisk.cpio]
Add entry [init] (0750)
Create directory [overlay.d] (0750)
Create directory [overlay.d/sbin] (0750)
Add entry [overlay.d/sbin/magisk64.xz] (0644)
Patch with flag KEEPVERITY=[false] KEEPFORCEENCRYPT=[false]
Found fstab file [system/etc/fstab.postinstall]
Remove pattern [,avb_keys=/product/etc/security/avb/system_other.avbpubkey]
Loading cpio: [ramdisk.cpio.orig]
Backup mismatch entry: [init] -> [.backup/init]
Record new entry: [overlay.d] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin/magisk64.xz] -> [.backup/.rmlist]
Backup mismatch entry: [system/etc/fstab.postinstall] -> [.backup/system/etc/fstab.postinstall]
Create directory [.backup] (0000)
Add entry [.backup/.magisk] (0000)
Dump cpio: [ramdisk.cpio]
- Repacking boot image
Parsing boot image: [/sdcard/Download/boot_b.732627.img]
HEADER_VER [3]
KERNEL_SZ [42025472]
RAMDISK_SZ [34080597]
OS_VERSION [12.0.0]
OS_PATCH_LEVEL [2022-05]
PAGESIZE [4096]
CMDLINE []
KERNEL_FMT [raw]
RAMDISK_FMT [gzip]
VBMETA
Repack to boot image: [new-boot.img]
HEADER_VER [3]
KERNEL_SZ [42025472]
RAMDISK_SZ [34331854]
OS_VERSION [12.0.0]
OS_PATCH_LEVEL [2022-05]
PAGESIZE [4096]
CMDLINE []
Checking the result ...
-rw-r--r-- 1 root root 100663296 2022-10-28 09:51 /data/adb/magisk/new-boot.img
The patched boot image is "/sdcard/Download/patched_boot_b.732627.img"
Waiting now 5 seconds ...
Patching the partition "/dev/block/by-name/boot_b" from the patched boot image file "/sdcard/Download/patched_boot_b.732627.img" via dd ...
196608+0 records in
196608+0 records out
100663296 bytes (96 M) copied, 4.721236 s, 20 M/s
Checking the result ....
The check sums for the images and devices on the phone are:
4108888341 100663296 /sdcard/Download/boot_b.732627.img
3369959638 100663296 /sdcard/Download/patched_boot_b.732627.img
3369959638 100663296 /dev/block/by-name/boot_b
OK, patching the boot partition "/dev/block/by-name/boot_b" was successfull
*** Press return to reboot the phone now
Rebooting the phone now ...
[[email protected] /data/backup/Android/scripts_on_linux]$
Update 03.07.2022 /bs
The script now uses the directory /tmp for temporary file if the directory /sdcard/Download is not available. Therefor it will also work if the phone is secured by a PIN or something similar.
Update 05.07.2022/bs
The script is also available on my web site:
http://bnsmb.de/files/public/Android/install_magisk_via_twrp.sh
Update 30.12.2022/bs
Updated the usage help for the script to match the version 2..3.0 of the script
Update 28.10.2022 /bs
Updated the post to match the new script version 2.0.0.0
Update 17.12.2022 /bs
Updated the post to match the new script version 2.1.0.0
see here for How to install TWRP via script
Update 13.04.2023 /bs
To install Magisk v26.0 or newer the script version 25.01.2023 v2.5.1.0 is necessary.
Unfortunately there is a new feature in Magisk v26.x that prevents the full installation of Magisk from within a booted recovery; from the Magisk docs:
This means that any installation of Magisk v26+ using custom recovery will be incomplete; a subsequent re-installation through the Magisk app after booting up is required.
Click to expand...
Click to collapse
Therefor currently the installation of Magisk v26.x via script without user intervention does not yet work
In Magisk v26.0 the developer changed the code so that it's not possible anymore to install Magisk into the boot partition while booted from a recovery image.
from the Magisk change log:
"This means that any installation of Magisk v26+ using custom recovery will be incomplete; a subsequent re-installation through the Magisk app after booting up is required."
The installation of Magisk v26.x while booted into the recovery (for example using my script install_magisk_via_twrp.sh; see How to install Magisk into the boot partition using script) will succeed but executing the Magisk app after the necessary reboot will end with this dialog:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
After pressing OK in that dialog Magisk will reinstall itself in the boot partition and reboot. And afterwards Magisk works again. But that step needs user intervention.
Without executing this additional step Magisk won't work. There is no way to trigger this reinstallation via an CLI command that is usable in a script (at least I did not found it until now ...)
Unfortunately, Magisk also does not execute the init scripts from /data/adb/post-fs-data.d or /data/adb/service.d in this state.
Therefor the automatic installation of Android, TWRP, Magisk, etc like implemented in the tasks in prepare_phone.include (see How to install and configure the Android OS for details) will fail.
To get around this I added some code to the script install_magisk_via_twrp.sh to support the installation of Magisk v26:
install_magisk_via_twrp.sh version v3.1.0.0 (or newer) can now be used to also install Magisk v26 into the boot partition. There are two new parameter for the script install_magisk_via_twrp.sh to select the method to use for the installation:
oldmethod - install Magisk into the boot partition while booted into a recovery
newmethod - install Magisk into the boot partition image while booted into the Android OS
The installation using the "newmethod" only works if their is a working adb connection to the running Android OS on the phone.
Without one of the two new parameter the script will check the Magisk apk file to detect the necessary method to install Magisk into the boot partition. The default method if no apk file is used is still the old method.
Patching the boot image with Magisk v26 is done using these steps:
boot the phone from a TWRP image
create an image of the boot partition while booted from the TWRP image
copy the boot partition image and the Magisk executables to a directory that can be accessed by the user shell while booted into the Anroid OS
boot the phone into the Android OS
patch the boot partition image using the Magisk binaries (that can be done by the non-root user shell)
reboot the phone from a TWRP image
install the patched boot image via dd or fastboot
To do an automatic installation via script using Magisk v26 I added another task to prepare_phone.include:
install_magisk_v26_in_boot_partition
This task will install Magisk using the new method described above.
Because the installation of Magisk v26 needs a working adb connection the tasks in prepare_phone.include will first install Magisk v25.x and enable adb via Magisk init script like before. After this is done Magisk v26 can be installed via script.
So the new task list to install and configure the Android OS using the tasks in the file prepare_phone.include is:
Bash:
DEFAULT_TASKS="
enable_disable_abort_on_error:enable
boot_phone_from_twrp_image
install_os:noreboot:factory_reset
install_twrp:noreboot:next
#
# first install Magisk v25.x into the boot partition; this installation is necessary to
# enable the access via adb to the phone; the Magisk installation will be overwritten later
# with Magisk v26 or newer
#
install_magisk_in_boot_partition_only:noreboot:next
enable_adb:reboot
#
install_magisk_in_data_adb_only:noreboot:copy_apk
enable_root_access_for_the_shell:reboot
wait_for_access_via_adb:120:kill
#
# the next step is necessary to install Magisk v26 or newer
#
install_magisk_v26_in_boot_partition:active:reboot
install_the_magisk_app
wait_for_access_via_adb:120:kill
enable_disable_abort_on_error:disable
install_essential_scripts
install_essential_apps
install_essential_magisk_modules
enable_root_access_for_apps:reboot
execute_script_on_the_phone:ignorerc
"
To distinguish between the apk files for Magisk v25 and Magisk v26 two new variables must be defined in the config file prepare_phone.conf for the tasks in prepare_phone.include:
Bash:
MAGISK_v26_APK_FILE="/data/backup/Android/EssentialApps/Magisk-v26.1.apk"
MAGISK_v25_APK_FILE="/data/backup/Android/EssentialApps_Backup/Magisk-v25.2.apk"
see here for the log of an update of Magisk v25 to Magisk v26 via script using the command
Bash:
./prepare_phone.sh install_magisk_v26_in_boot_partition
see here for the log of an automated installation using the tasks in prepare_phone.include with the installation of Magisk v26 using the command
Bash:
./prepare_phone.sh all
Testenvironments for the installation of Magisk v26 via script
an ASUS Zenfone 8 running
OmniROM 13 with MicroG and Magisk v26.1
OmniROM 12 with MicroG and Magisk v26.1
ASUS Android 13 and Magisk v26.1
ASUS Android 12 and Magisk v26.1
LineageOS 19 and Magisk v26.1
All tests were done using TWRP 3.7.0.12

Categories

Resources