It seems there are some conflicting reports on the issue. Some people say that rooting Oreo can't be done because there is an issue with Magisk/SuperSU preventing it, while others says they've managed to root their Oreo A8.
I would just like to get an idea of anyone who has tried to root Oreo. Please share your experience to date.
Did it fail or was it successful?
Is everything running smoothly?
What method and steps did you use?
I'm sure I'm not the only one who would appreciate the feedback.
it failed
no natter what i did
on modifying the /system through twrl, on reboot, the os locks the sim, uninstalls the Samsung apps like pay/health etc and then re encrypts the phone
shunsai said:
It seems there are some conflicting reports on the issue. Some people say that rooting Oreo can't be done because there is an issue with Magisk/SuperSU preventing it, while others says they've managed to root their Oreo A8.
I would just like to get an idea of anyone who has tried to root Oreo. Please share your experience to date.
Did it fail or was it successful?
Is everything running smoothly?
What method and steps did you use?
I'm sure I'm not the only one who would appreciate the feedback.
Click to expand...
Click to collapse
Yep
https://forum.xda-developers.com/ga...--other-development/root-magisk-oreo-t3825096
Used Ashyx TWRP and no-verity-opt-encrypt_ashyx, from corsicanu's thread. I've used Magisk v16.0 stable as well as beta v16.7.
Root is working for ADB, Termux and Xposed (installed as Magisk module). Root is not working for Titanium (says it can't detect root; used Magisk busybox) and for Stericson's Busybox (says unverified binary and won't install). Another thing I've noticed is that microG's UnifiedNlp "self check" says NO to "UnifiedNlp is registered in system".
Magisk was showing as "not installed" in Magisk Manager for a while, but switched to green (installed) after a few reboots. Not sure what I've done to change it. I suspect it's a certain combination of TWRP and no-verity-opt-encrypt that does the trick, because I've been alternating between Mesa's and Ashyx's versions. Magisk root was working even when Manager was saying "not installed".
I will retry with a clean reinstall of Oreo 8.0.0, Mesa's TWRP and no-verity-opt-encrypt-6.0.zip from his TWRP thread. I'm on official ROM A530FXXU2BRG1.
I haven't tested SuperSU much, I will try it more thoroughly. (Personally I don't care about systemless and hiding from SafetyNet or *Pay stuff, so whatever root method works is fine with me.)
Whatever you do, a piece of advice: follow whatever guide you're using carefully, because not doing all the steps properly can end up in a mess (eg. bootloops, or you get a screen asking for password to decrypt phone that won't go away). Also, it seems that mixing flashable stuff from different sources is a bad idea unless you know what you're doing.
Same as above. Best working combination I've found is Mesa's TWRP and no-verity, with Magisk 16.7 and Manager 5.8.3.
Root works with mostly everything I've thrown at it, with the following notable exceptions:
* Titanium Backup triggers the popup to ask for root, but says "Sorry, I could not acquire root privileges."
* UnifiedNlp's self check says "can't integrate with system".
* As soon as you flash Magisk, MTP and ADB stop working. When you connect to the PC there's no popup for either "allow connection" or ADB fingerprint.
Mesa's kernel fixes the MTP issue, and PC connection "allow" popup starts working again.
On the flip side, attempting to enter developer settings while running Mesa's kernel crashes the settings app. I've used a terminal app (Termux) to enable ADB manually (or you can enable it before you flash the kernel):
Code:
settings put global development_settings_enabled 1
settings put global adb_enabled 1
Here's everything I've gathered about the process (or as I like to call it, "how to get root on A8 2018 in 20 easy steps"):
* Start the phone, enable OEM lock from developer settings. Never disable it again, it prevents the phone from booting if any of the partitions are unofficial.
* Use Odin 3.13 or later, earlier versions can't deal with the new LZ4 compression Samsung applies to the partition images. Heimdall is very old and will not work. If you're on Linux, use a virtual machine to run Odin under Windows. VirtualBox is excellent (remember to connect the phone from VB's USB menu when in download mode).
* Power+VolDn+VolUp from any situation will force reboot. Power+VolDn+VolUp immediately after start enters download mode.
* Flash BL, AP, CP and CSC from an official ROM to bring the device to factory status.
* At this point you phone is functional, if you don't want root and just want to use it, stop here.
* If you intend to continue, I recommend that you don't boot to system.
* Reboot and re-enter download mode, flash Mesa's TWRP.
* Reboot and immediately press Power+VolUp to enter TWRP. Do NOT boot to system just yet, you can trip the anti-theft protection.
* [Always] swipe to allow modifications when entering TWRP.
* You may want to grab a TWRP backup of various partitions at this moment. Recovery is obviously not official anymore, but you can grab boot, system, efs, baseband, modem etc. Very good idea. If your SD card is not large enough for system (has 3.5 GB) at least grab the others.
* From Wipe menu, choose format data. Boot to RECOVERY. Do not install TWRP app.
* From Mount menu, verify that Data is mounted.
* Flash in this order: RMM fix and no-verity.
* Reboot to system, let it work (Samsung logo and blue led flashing). Yes, it may take a lot of time, let it work.
* At this point you have a clean system with custom recovery but no root. Check that stuff is still working fine.
* During phone setup, do NOT check "send diagnostic data".
* Reboot to TWRP, flash Magisk.
* Again, the first boot may take a long time, let it work.
wirespot said:
Same as above. Best working combination I've found is Mesa's TWRP and no-verity, with Magisk 16.7 and Manager 5.8.3.
Root works with mostly everything I've thrown at it, with the following notable exceptions:
* Titanium Backup triggers the popup to ask for root, but says "Sorry, I could not acquire root privileges."
* UnifiedNlp's self check says "can't integrate with system".
* As soon as you flash Magisk, MTP and ADB stop working. When you connect to the PC there's no popup for either "allow connection" or ADB fingerprint.
Mesa's kernel fixes the MTP issue, and PC connection "allow" popup starts working again.
On the flip side, attempting to enter developer settings while running Mesa's kernel crashes the settings app. I've used a terminal app (Termux) to enable ADB manually (or you can enable it before you flash the kernel):
Here's everything I've gathered about the process (or as I like to call it, "how to get root on A8 2018 in 20 easy steps"):
* Start the phone, enable OEM lock from developer settings. Never disable it again, it prevents the phone from booting if any of the partitions are unofficial.
* Use Odin 3.13 or later, earlier versions can't deal with the new LZ4 compression Samsung applies to the partition images. Heimdall is very old and will not work. If you're on Linux, use a virtual machine to run Odin under Windows. VirtualBox is excellent (remember to connect the phone from VB's USB menu when in download mode).
* Power+VolDn+VolUp from any situation will force reboot. Power+VolDn+VolUp immediately after start enters download mode.
* Flash BL, AP, CP and CSC from an official ROM to bring the device to factory status.
* At this point you phone is functional, if you don't want root and just want to use it, stop here.
* If you intend to continue, I recommend that you don't boot to system.
* Reboot and re-enter download mode, flash Mesa's TWRP.
* Reboot and immediately press Power+VolUp to enter TWRP. Do NOT boot to system just yet, you can trip the anti-theft protection.
* [Always] swipe to allow modifications when entering TWRP.
* You may want to grab a TWRP backup of various partitions at this moment. Recovery is obviously not official anymore, but you can grab boot, system, efs, baseband, modem etc. Very good idea. If your SD card is not large enough for system (has 3.5 GB) at least grab the others.
* From Wipe menu, choose format data. Boot to RECOVERY. Do not install TWRP app.
* From Mount menu, verify that Data is mounted.
* Flash in this order: RMM fix and no-verity.
* Reboot to system, let it work (Samsung logo and blue led flashing). Yes, it may take a lot of time, let it work.
* At this point you have a clean system with custom recovery but no root. Check that stuff is still working fine.
* During phone setup, do NOT check "send diagnostic data".
* Reboot to TWRP, flash Magisk.
* Again, the first boot may take a long time, let it work.
Click to expand...
Click to collapse
Were you able to test from a non-tripped Knox and if so was it tripped by your process?
I don't have another phone with the e-fuse not tripped so I can't test, but USB works perfectly fine until you flash root and also after you flash Mesa's kernel.
Pipsname said:
Were you able to test from a non-tripped Knox and if so was it tripped by your process?
Click to expand...
Click to collapse
Un-tripped Warranty Bit and Root are two thing that can't stay together lol
---------- Post added at 06:01 PM ---------- Previous post was at 06:00 PM ----------
wirespot said:
On the flip side, attempting to enter developer settings while running Mesa's kernel crashes the settings app.
Click to expand...
Click to collapse
Never heard about this issue; Could you please share a log of the error to look at it to fix it? A new version of the kernel is under-the-hood so would be nice to fix all the possible issues
BlackMesa123 said:
Un-tripped Warranty Bit and Root are two thing that can't stay together lol
Click to expand...
Click to collapse
I am currently rooted on 7.1.1 with no tripped Knox so I was wondering if it was possible with Oreo.
Pipsname said:
I am currently rooted on 7.1.1 with no tripped Knox so I was wondering if it was possible with Oreo.
Click to expand...
Click to collapse
Rooted without tripping Warranty Bit? And how since bootloader checks binary signatures at each boot lol
BlackMesa123 said:
Never heard about this issue; Could you please share a log of the error to look at it to fix it? A new version of the kernel is under-the-hood so would be nice to fix all the possible issues
Click to expand...
Click to collapse
Kernel log? Would an export from logcat do?
wirespot said:
Kernel log? Would an export from logcat do?
Click to expand...
Click to collapse
Nah a simple logcat is what I need lol. Use Logcat Extreme if you don't wanna use adb
BlackMesa123 said:
Nah a simple logcat is what I need lol. Use Logcat Extreme if you don't wanna use adb
Click to expand...
Click to collapse
Lel I use matlog
In some hour (or maybe less lol) the new version of my custom kernel will be released, with a good present for you all... ?
BlackMesa123 said:
In some hour (or maybe less lol) the new version of my custom kernel will be released, with a good present for you all... ?
Click to expand...
Click to collapse
I can't open the therd image.
BlackMesa123 said:
Rooted without tripping Warranty Bit? And how since bootloader checks binary signatures at each boot lol
Click to expand...
Click to collapse
I used your guide.
https://forum.xda-developers.com/ga...recovery-twrp-3-2-2-0-galaxy-a8-2018-t3818201
Pipsname said:
I used your guide.
https://forum.xda-developers.com/ga...recovery-twrp-3-2-2-0-galaxy-a8-2018-t3818201
Click to expand...
Click to collapse
Lol that's faked userspace warranty bit prop. Go in Download Mode and you see Warranty Bit is actually blown
BlackMesa123 said:
Lol that's faked userspace warranty bit prop. Go in Download Mode and you see Warranty Bit is actually blown
Click to expand...
Click to collapse
Well would you look at that! Thank you.
Is Magisk 16.7 Beta?
Samsung Galaxy (SM-A530F/DS) A8 (2018), Android 8.0.0.
After 129 hours I got OEM Unlock. I installed TWRP 3.2.3-0. In TWRP > Wipe>Format Data and follow the instructions in screen. After I flashed latest no-verity-opt-encrypt zip and RMM Bypass zip. Reboot System.
In TWRP I flashed MCK-Oreo_A8_BRG1_v1-fix.zip. Reboot System.
In TWRP I flashed Magisk 16.7 Beta. Reboot System.
I installed Magisk Manager 5.8.3. and I got this:
Related
Code:
Code:
/*
* Your probably long expired warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you
* and point my finger right back at you.
*/
Installation Instructions
It will wipe your entire SD card! In order to make things work better, I've set it up to use the entire SD card as /data as opposed to having two partitions. The advantage is that you don't have to pick a size of /data.
If on a BML rom (stock-based GB)...
Untested, but is setup to hopefully work. If it doesn't flash my 6.0 Omni first
1. Reboot to recovery
2. Make sure your version of CWM is at least 5.x
3. Install zip. First time will fail and let you know its repartionning. Second time it will reboot a couple of times, don't be worried.
4. If you want gapps, reboot to recovery, wipe data+cache and install gapps.
5. If you want root, flash according to instructions in Post #3
If on an MTD rom (CM7 and all ICS+)
1. Reboot to recovery
2. Wipe data, dalvik/art cache, system, and cache partitions
3. Install zip. First time will fail and let you know its repartionning. Second time it will reboot a couple of times, don't be worried.
4. If you want root or Gapps, install them now.
The first boot can take several minutes. Be patient. If it takes 20+ minutes, pull the battery and reboot to recovery.
Things to Take Note Of
I actually have a T959P, not a T959V... It was released by Telus in Canada. It is a very similar device (I can run ROMs for the T959V with limited problems - ie sometimes I get wakelocks and the gps never works), it has a different GPS chipset and also uses different cell bands (but I can still use your guys modems but I lose access to the 850Mhz band). I have created a build specifically for the T959V as best as I can guess.
If you're coming from either the last Lollipop build or the initial pre-release Marshmallow build, there is a bug in TWRP that will prevent flashing anything but the ROM. To get around this, please flash the Marshmallow zip, then reboot to recovery, and then follow the typical instructions.
If you decide to install gapps at a later date (ie after you've installed the ROM), you must do a factory reset first - otherwise you will get force-closes upon bootup
If you come across a bug, feel free to let me know by posting in this thread. I will not be working non-stop on this project, but will try to fix bugs that affect me as this is still my main phone (out of choice, not necessity).
This build is very close to the official AOSP source code. Recovery is TWRP but otherwise there aren't any added "features"
Gapps eat up about an extra 30MB of RAM so they slow down the device - tread carefully. Opengapps pico works on the latest 7.0 build, untested on 7.1 but should work just fine
Backup Backup Backup! I'm not responsible for you losing any data.
Working
Camera (built-in app needs workaround, see below)
RIL
SMS
Recovery
Bluetooth - first time it won't enable if enabling through settings, back out and then second time it will. Works just fine from status bar pulldown
Wifi
Vibration
Automatic Brightness
Compass
GPS on T959P, untested on T959V
Headset Buttons
SElinux in enforcing mode - this may have broken the T959V's gps...
Partially working
Camera and Browser apps need to have all their permissions manually enabled through settings for full functionality. This is because I've used the older Camera app (which hasn't been updated for dynamic permissions) and the older Browser app as the new one is simply a test shell with no features (thanks Google!)
What's been removed
TV-Out - It was removed upstream plus I think binary blobs would need a ton of shimming in Lollipop+
Everything else is not tested!!!
XDA:DevDB Information
AOSP 7.x for Galaxy S 4G, ROM for the Samsung Galaxy S 4G
Contributors
xc-racer99
Source Code: https://github.com/xc-racer99/
ROM OS Version: 7.x Nougat
ROM Kernel: Linux 3.0.x
Based On: AOSP
Version Information
Status: Beta
Created 2016-10-22
Last Updated 2016-10-21
Thanks Time!
Thanks Time!
This would not have been possible without the following people:
Thanks to humberos for bringing Lollipop to the first-gen Galaxy S series. This would not have been possible without his work.
Thanks to FB and Dao for their work on the CM-11 device tree. I used several of their fixes.
Thanks to noiphonehere for his device trees and kernel, most of my work was based off of his.
Thanks to the OMAP4 AOSP team for their work on porting CMA to a 3.0 kernel.
Thanks to bhundven and the other members of teamacid for their work on the aries kernel.
Thanks to all others that have helped get this phone to where it is today!
Thanks to vcmerritt. A name you're probably not familiar with, but he was the only one to create something for the T959P and without him I'd still be on stock...
Build your own!
Follow https://source.android.com/source/initializing.html. The branch you want when you run repo init is the latest tag from https://source.android.com/source/build-numbers.html#source-code-tags-and-builds for your desired android version (7.0 or 7.1). Before you run repo sync, from the WORKING_DIRECTORY/.repo folder, run "git clone https://github.com/xc-racer99/local_manifests -b BRANCH" where BRANCH is either aosp-7.0 or aosp-7.1. Continue on with the build guide, the device codename you want is "galaxys4gmtd".
If you want to build the kernel, follow the instructions in WORKING_DIRECTORY/kernel/samsung/aries/AOSP_README. Put the resulting arch/arm/boot/zImage in device/samsung/galaxys4gmtd-kernel
Other aries devices (captivate, i9000, i9000B, vibrant) should be fairly easy to do (ie the galaxysmtd on my github as well as the captivate trees work). The fascinate and p1 would need a fair bit of work.
Changelogs
Changelog for 2016-12-19
December security patches
goes back to the older graphics drivers so hardware recording works but has a kernel patch to prevent crashes
Tweaked the graphics drivers options so it seems a little bit faster
Tweaked the RIL a little bit for better stability
Other things I've forgotten about, see github for details
Changelog for 2016-12-19-V2
Kernel without slowdowns....
Changelog for 2017-1-19
selinux to enforcing - this may break the T959V's GPS - if it does, let me know and send me a dmesg and I'll fix it
Update to the interactive governor - should have less slowdowns if using the default governor
Slightly better RIL reliability (I think)
Better low memory killing - we now don't run out of memory as often
Hardware decoding re-enabled
Slightly less intensive background services
Based on 7.1.1_r13
Source Code, Downloads, Root Options
Main Source
https://android.googlesource.com/
Device Specific Source Code
http://github.com/xc-racer99/android_device_samsung_telusgalaxys4gmtd for the device tree (see aosp-7.x branch)
http://github.com/xc-racer99/android_device_samsung_aries-common for the common device tree (see aosp-7.x branch).
http://github.com/xc-racer99/android_kernel_samsung_aries for the kernel (see aosp-7.x branch)
http://github.com/xc-racer99/proprietary_vendor_samsung for the prop blobs (see aosp-7.x branch)
http://github.com/xc-racer99/android_patches for all the patches necessary for the device to work properly (see aosp-7.x branch)
Downloads!
All builds can be downloaded from AndroidFileHost at https://www.androidfilehost.com/?w=files&flid=58191
Gapps
The smallest http://opengapps.org/ package for 7.0 is known to work, but any small 7.0 gapps package should work. However, they will cause the device to slowdown significantly as they use a fair bit of RAM. Gapps are untested on 7.1
This ROM is compatible with MicroG (https://microg.org/ and http://forum.xda-developers.com/android/apps-games/app-microg-gmscore-floss-play-services-t3217616) gapps. This is an open-source reimplementation of Google Play Services that doesn't track you and uses way less battery than the original.
Root
Root is achieved via Magisk or SuperSU.
MagiskDue to our odd partition layout, you need to use my custom Magisk install zip (source code here) attached to this post and not the official install or the Magisk Manager install. Then follow the instructions on how to root/install other modules from http://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445 Also, don't try to use the official Magisk uninstall tool as it won't work.
SuperSU
Please note: I've been told this doesn't work any more, YMMV
Again, we need a custom SuperSU install zip for it to work due to our partition scheme. It should be an all-in-one zip so it's simplier than Magisk (but not open source). This is based off of the latest (at time of writing) 2.79SR1 release, the diff is below
Code:
diff --git a/META-INF/com/google/android/update-binary b/META-INF/com/google/android/update-binary
index d437f6f..3a312bf 100644
--- a/META-INF/com/google/android/update-binary
+++ b/META-INF/com/google/android/update-binary
@@ -642,16 +642,23 @@ detect_systemless_required() {
find_boot_image
CONTINUE=true
+if false ; then
if [ -z "$BOOTIMAGE" ]; then
# no boot image partition detected, abort
return
fi
+fi
# extract ramdisk from boot image
rm -rf /sutmp
mkdir /sutmp
+if false ; then
check_zero "" "" "" "LD_LIBRARY_PATH=$RAMDISKLIB $BIN/sukernel --bootimg-extract-ramdisk $BOOTIMAGE /sutmp/ramdisk.packed"
+else
+ mount /ramdisk
+ cp /ramdisk/ramdisk.img /sutmp/ramdisk.packed
+fi
check_zero "" "" "" "LD_LIBRARY_PATH=$RAMDISKLIB $BIN/sukernel --ungzip /sutmp/ramdisk.packed /sutmp/ramdisk"
if (! $CONTINUE); then return; fi
@@ -1331,6 +1338,8 @@ else
ui_print_always "Boot image patcher"
ui_print "******************"
+if false ; then
+ # SGS Modification - we don't have a "real" boot image
ui_print "- Finding boot image"
find_boot_image
@@ -1357,6 +1366,10 @@ else
fi
check_zero_def "- Extracting ramdisk" "LD_LIBRARY_PATH=$SYSTEMLIB /su/bin/sukernel --bootimg-extract-ramdisk $BOOTIMAGE /sutmp/ramdisk.packed"
+else
+ mount /ramdisk
+ cp /ramdisk/ramdisk.img /sutmp/ramdisk.packed
+fi
check_zero_def "- Decompressing ramdisk" "LD_LIBRARY_PATH=$SYSTEMLIB /su/bin/sukernel --ungzip /sutmp/ramdisk.packed /sutmp/ramdisk"
if ($CONTINUE); then
@@ -1545,6 +1558,7 @@ else
check_zero_def "- Calling user boot image patch script" "sh /data/custom_boot_image_patch.sh /sutmp/boot.img"
fi
+if false ; then
if ($CONTINUE); then
DEV=$(echo `resolve_link $BOOTIMAGE` | grep /dev/block/)
if [ $? -eq 0 ]; then
@@ -1564,6 +1578,10 @@ else
dd if=/sutmp/boot.img of=$BOOTIMAGE bs=4096
fi
+else
+ cp /sutmp/ramdisk.packed /ramdisk/ramdisk.img
+ umount /ramdisk
+fi
rm -rf /sutmp
fi
Link for the download ROM is not working... it is private... ?!?
Here is the link to the rom that is not private https://www.androidfilehost.com/?w=files&flid=58191
pickandrew said:
Link for the download ROM is not working... it is private... ?!?
Click to expand...
Click to collapse
Shaggy_thecat said:
Here is the link to the rom that is not private https://www.androidfilehost.com/?w=files&flid=58191
Click to expand...
Click to collapse
Thanks, I used the link that I would use if I was already logged in, my bad. OP is now updated.
It's been a while, no home internet and very busy life lately but the time I did get The 7.0 zip to flash (0930) it was running very well, no random reboots and limited freezes (just 1 really)
BUT. I always reinstall a new ROM to get the process down and- I haven't been able to get it running again. Let alone with root which I haven't managed to do. When I install the ROM now it gives me a quick first boot however it says encryption unsuccessful and asks me to reset. Resetting and factory resetting as well as formatting won't help it.
Excellent work ^_^ you're becoming the new SGS4G guru around here
As for a new setting in the dev options, labeled Consistent Logging-- if I turn this on is it A: Safe in terms of information vulnerability and B: Will it fill up my SD card quickly with a mass amount of logging data?
graycow9 said:
It's been a while, no home internet and very busy life lately but the time I did get The 7.0 zip to flash (0930) it was running very well, no random reboots and limited freezes (just 1 really)
BUT. I always reinstall a new ROM to get the process down and- I haven't been able to get it running again. Let alone with root which I haven't managed to do. When I install the ROM now it gives me a quick first boot however it says encryption unsuccessful and asks me to reset. Resetting and factory resetting as well as formatting won't help it.
Excellent work ^_^ you're becoming the new SGS4G guru around here
As for a new setting in the dev options, labeled Consistent Logging-- if I turn this on is it A: Safe in terms of information vulnerability and B: Will it fill up my SD card quickly with a mass amount of logging data?
Click to expand...
Click to collapse
Hmm, flash the ROM, go into recovery, change the filesystem of /data to ext4 or f2fs. The error sounds as if the sdcard is formatted as fat while it shouldn't be. If that doesn't work, please send me the contents of /sdcard/aries_mtd.log after you've installed it.
Hadn't noticed the new "persistent logging" section. I suspect that what it does it keep the logcat contents over a reboot. Since the logcat does have a max size, it is probably safe to enable it. I highly doubt it contains any more info than a regular logcat.
Thanks for keeping this device alive in this community! My kids wanted to use it for simple games so I dusted it off and came here to see if anything was still in development and sure enough there was!
I tested going from BML stock and it worked! I had to restart the install 5 times, but it ultimately took. The first two times installed TWRP, then it rebooted into TWRP. Then it took 3 additional times before it went through the whole install. It booted up fine, but I had messed up and forgot to do a full reset before install gapps. So it would boot the encryption screen telling me it was interrupted and I had to reset the phone. Unfortunately at that point no matter what I did it would always boot to that encryption error screen. So I wiped completed and started over but mistakenly flashed the 7.1 build. It went through but was stuck on a boot loop. So now i can't install 7.0 because it keeps telling me it can't install over newer builds. Is there anything I can do to fix this or do i have to start from stock all over again?
Edited* Update
I went ahead and started from scratch but still ran in to the same problem with the encryption. Didn't install gapps this time.
Domunus said:
Thanks for keeping this device alive in this community! My kids wanted to use it for simple games so I dusted it off and came here to see if anything was still in development and sure enough there was!
I tested going from BML stock and it worked! I had to restart the install 5 times, but it ultimately took. The first two times installed TWRP, then it rebooted into TWRP. Then it took 3 additional times before it went through the whole install. It booted up fine, but I had messed up and forgot to do a full reset before install gapps. So it would boot the encryption screen telling me it was interrupted and I had to reset the phone. Unfortunately at that point no matter what I did it would always boot to that encryption error screen. So I wiped completed and started over but mistakenly flashed the 7.1 build. It went through but was stuck on a boot loop. So now i can't install 7.0 because it keeps telling me it can't install over newer builds. Is there anything I can do to fix this or do i have to start from stock all over again?
Edited* Update
I went ahead and started from scratch but still ran in to the same problem with the encryption. Didn't install gapps this time.
Click to expand...
Click to collapse
Ok, sounds like a messed up somewhere. I'll do some testing and try to release an updated build. Could you please post the output of /sdcard/aries_bml.log and /sdcard/aries_mtd.log? The "Encryption Unsuccessful" message sounds as if the SD wasn't properly formatted to ext4/f2fs.
Hi xc-racerr99, I found what the issue was. Apparently I had an extra partition on the sdcard. After removing it and running the install script again everything booted up and i'm now using the ROM! It's awesome I have Nougat on this old Galaxy S. Without Gapps it's been running really stable and very responsive..
However, at this point, I've tried opengapps pico and TKgapps pico and neither work. The script runs and says update completed, but it's too fast. When I boot to the ROM no gapps were installed. Is there another gapps you would recommend trying?
Domunus said:
Hi xc-racerr99, I found what the issue was. Apparently I had an extra partition on the sdcard. After removing it and running the install script again everything booted up and i'm now using the ROM! It's awesome I have Nougat on this old Galaxy S. Without Gapps it's been running really stable and very responsive..
However, at this point, I've tried opengapps pico and TKgapps pico and neither work. The script runs and says update completed, but it's too fast. When I boot to the ROM no gapps were installed. Is there another gapps you would recommend trying?
Click to expand...
Click to collapse
Odd, I thought my install script removed the extra partition.
Anyways, it sounds as if there's some issue with recovery. You could try replacing the ramdisk-recovery.img in the ROM zip you downloaded with the one from https://www.androidfilehost.com/?fid=457095661767105384. Then reboot to recovery and flash your gapps package again.
Doesn't work....
I'll try to do some more testing with gapps and from stock with 1 or 2 partitions when I get a chance.
I figured out a sure fire way to boot 7.0, I'm running it as I respond with XDA app right now. But to keep it short if possible, I just fix permissions then factory wipe before I run the zip- do this while on CWM right after you heimdall to BML.
So to recap:
1- Flash to stock via heimdall
2- Fix permissions + factory wipe
3- Flash 7.0 zip
4- TWRP should boot- so flash ROM once more - wipe caches
5- Reboot and chew some nougat
Will follow up with a log next time I try to get the 7.1 rolling. ?
Oh! And when I add my email (hotmail) I get a bad handshake everytime. Do I need gapps to sync my contacts?
Sent from my SGH-T959V using XDA-Developers mobile app
graycow9 said:
I figured out a sure fire way to boot 7.0, I'm running it as I respond with XDA app right now. But to keep it short if possible, I just fix permissions then factory wipe before I run the zip- do this while on CWM right after you heimdall to BML.
So to recap:
1- Flash to stock via heimdall
2- Fix permissions + factory wipe
3- Flash 7.0 zip
4- TWRP should boot- so flash ROM once more - wipe caches
5- Reboot and chew some nougat
Will follow up with a log next time I try to get the 7.1 rolling.
Oh! And when I add my email (hotmail) I get a bad handshake everytime. Do I need gapps to sync my contacts?
Sent from my SGH-T959V using XDA-Developers mobile app
Click to expand...
Click to collapse
Yeah, I get a bad handshake as well. Only happens with hotmail/oulook accounts, my gmail and my other email work just fine.
I figured out what was causing the issues with install from BML - on TWRP boot, it wasn't setting up the sdcard properly. I've now fixed it so that it should work regardless (in the next build, obviously).
Anyways, it sounds as if there's some issue with recovery. You could try replacing the ramdisk-recovery.img in the ROM zip you downloaded with the one from https://www.androidfilehost.com/?fid=457095661767105384. Then reboot to recovery and flash your gapps package again.
Click to expand...
Click to collapse
Gave this a try and still no luck.
Update **
It actually killed the recovery. Recovery just keeps crashing and rebooting when trying to get in to it. Tried it from the a clean install and same results. Will wait for your next build. Thanks for putting time in to this!
Odd, it lets me add my gmail but only syncs my emails- no option for contacts still. I ought to keep a vcf from my other device jic.
The performance is even better than M and it doesn't have the weird battery glitch anymore ?? (I think the new partition layout helped a lot.)
Another thing I noticed, sometimes my SIM won't register or gives me a no signal indicator. I can't get root still either[emoji14]still poking around. Looking forward to the next build ?
Edit: Another bug I noticed is the inability to save files through the browser or Tumblr app for example.
(By the way, just wanted to add, I hope I'm still being more help than a nag or something. I aim to be helpful. So I look for things that seem astray. Heh)
Sent from my SGH-T959V using XDA-Developers mobile app
graycow9 said:
Odd, it lets me add my gmail but only syncs my emails- no option for contacts still. I ought to keep a vcf from my other device jic.
The performance is even better than M and it doesn't have the weird battery glitch anymore (I think the new partition layout helped a lot.)
Another thing I noticed, sometimes my SIM won't register or gives me a no signal indicator. I can't get root still either[emoji14]still poking around. Looking forward to the next build
Edit: Another bug I noticed is the inability to save files through the browser or Tumblr app for example.
(By the way, just wanted to add, I hope I'm still being more help than a nag or something. I aim to be helpful. So I look for things that seem astray. Heh)
Sent from my SGH-T959V using XDA-Developers mobile app
Click to expand...
Click to collapse
I've never used the contact sync.
With SIM not registering, it's because Google introduced a bug and the workaround the bug causes the SIM to occasionally not work. One of the problems with legacy devices I guess.
With the files not saving, manually grant the storage permission in Settings->Apps - it doesn't seem to automatically update for most apps.
With root, sounds like I should modify the SuperSU install zip as it's easier to use (but not open-source). For the PHH Superuser, you need
1) The Magisk-7-SGS.zip from my thread.
2) The phh-superuser-r259.zip from the Magisk root thread (link in OP)
3) The PHH Superuser app from the Play Store or FDroid
Even then, it only works for certain apps as it doesn't mount anything to /system/xbin/su which is what some apps look for
Edit: And I have no issues if you keep posting here with the problems you find, it's good to know.
bootloop
just tried to flash this 7.1 rom from your omnirom 6.0. Seemed to flash ok as described. couldn't get pico opengapps to flash but ignored it. Now it's stuck in a bootloop and I can't get into recovery using hardware buttons. Any guidance as to how I should proceed? As a relative novice, can I push a new recovery through ADB and try again?
asmalldharma said:
just tried to flash this 7.1 rom from your omnirom 6.0. Seemed to flash ok as described. couldn't get pico opengapps to flash but ignored it. Now it's stuck in a bootloop and I can't get into recovery using hardware buttons. Any guidance as to how I should proceed? As a relative novice, can I push a new recovery through ADB and try again?
Click to expand...
Click to collapse
Well, it depends on where you are bootlooping. If you're stuck at either of the first two splash screens, then you're out of luck with ADB as it isn't available yet. If you're bootlooping but getting to the bootanimation, then you can. To do so, run
Code:
$ adb root
$ adb shell mkdir /data/ramdisk
$ adb shell mount /dev/block/mtdblock5 /data/ramdisk
$ adb push ramdisk-recovery.img /data/ramdisk
$ adb reboot recovery
where ramdisk-recovery.img is from the AOSP 7.0 zip.
If you're stuck at the first or second splash screens, then you need Odin or Heimdall. With heimdall, you can do
Code:
$ heimdall flash --KERNEL boot.img
where the boot.img is the one from Omni 6.0, the one from 7.x won't work on its own as the recovery is not stored in it. You can use Odin to go back to stock.
I haven't tried gapps so I guess I should sometime and see what the issue with them is.
Gets to the second splash screen. I'll give that a shot when i have some free time. I'm really looking forward to getting this working as I'm amused by the idea of my oldest android phone running the newest OS before my other two.
Update: couldn't get it to work with my cheap laptop. Kept throwing up the libusb 12 error. Then when i finally gave up and pulled the battery, I noticed it was starting to bulge a little. I think I'm out for a while. I'm hoping i can come back to this soon.
Sent from my A0001 using XDA-Developers mobile app
Team Win Recovery Project 3.x, or twrp3 for short, is a custom recovery built with ease of use and customization in mind. Its a fully touch driven user interface no more volume rocker or power buttons to mash. The GUI is also fully XML driven and completely theme-able. You can change just about every aspect of the look and feel.
Code:
#include <std_disclaimer.h>
/*
*
* We are not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at us for messing up your device, we will laugh at you.
*
*/
Prerequisites
1. Unlocked bootloader.
Bugs
1. No tested yet, be the tester and,
2. If you have found a bug, please consider posting it to my GitHub Issues.
Instructions
1. Go to the fastboot mode.
2. Download the recovery.img and transfer it to the adb folder.
3. Open the cmd/terminal and change directory into the adb folder.
4. Now confirm/check that device is connected by typing:-
Code:
fastboot devices
If you got your device seriel number there then you are ready to continue otherwise try connecting device again and make sure USB debugging is on and you have granted permission to the PC to debug.
5. After that we will flash this TWRP recovery to the recovery partition by below command:-
Code:
fastboot flash recovery twrp-name.img
BooM ! TWRP flashed successfully.
6. Now unplug your device and then hold power button untill the phone turned off,after that press power button while holding vol down(-) button simultaneously and you will boot into TWRP recovery mode.
Enjoy !
Downloads
Test Build : https://androidfilehost.com/?fid=6006931924117887773
Official TWRP Website : Not submitted yet
Version Information
ROM OS Version: 9.0 Pie
Source Code: Device Tree
Based On: TWRP
Credits
Omni Team for minimal TWRP source
@chankruze (myself) for device tree and compilation.
SUPPORT
Official Telegram Group
Official Telegram Channel
Works very well. Just flashed the latest update with it. Thank you very much
Works real good so far.backed up,restored,formatted flash.everything I've tried so far works.was having trouble with forced encryption on stock rom but finally got past it.thanks for ur time to make this for community.
1. BlissOS latest GSI with device PIN selected during setup:
Data partition shows as 0mb in TWRP and asks for password to decrypt. Can't decrypt it with selected phone PIN.
Removing PIN from phone did not help either (still asked for password)
2. phh-AOSP 9v114 with device PIN and secure start-up selected during setup:
Data partition asks for pattern(?) to unlock in TWRP, even though pattern was not set.
Also the header at the top changes/flashes colors when on pattern screen.
3. Factory reset and setup with PIN but with secure start-up disabled:
This time it doesn't ask for pattern but password again. And can't decrypt with PIN.
4 .Factory reset again and setup without any kind of pin/pattern/password.
TWRP still asks for password to decrypt data.
5. Factory reset and setup pattern
TWRP asks for password
6. Repeat steps but this time with stock ROM from Umidigi. Same problems.
Code:
E:Decrypt took too long, killing process
Failed to decrypt data.
Unable to decrypt with default password. You may need to perform a Format Data
Unable to mount storage
Unable to mount /data/media/TWRP/.twrps
marcukial said:
was having trouble with forced encryption on stock rom but finally got past it
Click to expand...
Click to collapse
Why not share your solution?
@shookica
https://forum.xda-developers.com/showpost.php?p=79740894&postcount=263
marcukial said:
@shookica
https://forum.xda-developers.com/showpost.php?p=79740894&postcount=263
Click to expand...
Click to collapse
So you just flashed Magisk over stock ROM if I understand correctly from that post?
You say you flashed disable dm-verity but after that you restored from a full backup. That means the disable dm-verity package was removed anyway.
I tried flashing Magisk as well and even disabling persist force encrypt in Magisk app but that didn't solve my issue.
In any case I would like to be able to backup my data partition without flashing magisk and disable dm verity forceencrypt, simply by entering the password I set in Android.
That is how it is supposed to work anyway from my understanding.
shookica said:
So you just flashed Magisk over stock ROM if I understand correctly from that post?
You say you flashed disable dm-verity but after that you restored from a full backup. That means the disable dm-verity package was removed anyway.
I tried flashing Magisk as well and even disabling persist force encrypt in Magisk app but that didn't solve my issue.
In any case I would like to be able to backup my data partition without flashing magisk and disable dm verity forceencrypt, simply by entering the password I set in Android.
That is how it is supposed to work anyway from my understanding.
Click to expand...
Click to collapse
Yes.lol...i know that's what's so crazy.i gave up trying when I flashed the backup and just flashed magisk maybe something got left behind that didn't get wiped I don't know.i was shocked when I checked in settings/security and phone not encrypted. Rebooted to recovery and no password prompt all storage visible.
Hello,
can anybody help me for my Problem with my Galaxy S4 GT-I9506
i have do the following
1. TWRP install the actual version
2. flash lineage-16.0-20190609-UNOFFICIAL-ks01ltexx https://forum.xda-developers.com/galaxy-s4/i9506-develop/rom-lineageos-16-0-unofficial-galaxy-s4-t3848597
3. flash open_gapps-arm-9.0-pico-20190612 TWRP
4. flash Magisk-v19.3 mit TWRP
But i have problems with them
https://prntscr.com/o7onem
https://prntscr.com/o7oneu
https://prntscr.com/o7oner
i have no idea what i can do can anybody help me please?
Does the ROM come rooted? It may have system root inside still, my s5 ROMs always did I think. I always had to use adb shell or flash a zip inside twrp. Usually did both.
Search XDA for osm0sis tool called unsu, it should be a .zip. Flash in twrp after installing gapps and booting once. This should clear system root, and allow you to pass once magisk is installed.
The other issue I can think of is maybe signature verification or something with the playstore. I don't remember what it is, my phones and ROMs have always worked after magisk. If the above steps don't work maybe that's related. We will have to look around if that's the case
I had a look at the device tree and I can see a couple of things for your dev @kyasu to possibly add
- we had safetynet start failing a few weeks back on i9505 and these were the fixes I found
- Product_name - Samsung never released a product called full_ks01ltexx - will need to be set to correct product that google recognises by a build_prop_override ("GT-I9506" or similar).
- Change build fingerprints to pixel3 versions.
- hide permissive with init script.
these 2 commits here show what needs done:
https://github.com/JDCTeam/android_...mmit/ea27cf29e4084d860fb8549be2e3cdb1599a6d08
https://github.com/PixelExperience-...mmit/045dc32219172a288c10f503478deb3eb3b2aee5
andrew2432 said:
Does the ROM come rooted? It may have system root inside still, my s5 ROMs always did I think. I always had to use adb shell or flash a zip inside twrp. Usually did both.
Search XDA for osm0sis tool called unsu, it should be a .zip. Flash in twrp after installing gapps and booting once. This should clear system root, and allow you to pass once magisk is installed.
The other issue I can think of is maybe signature verification or something with the playstore. I don't remember what it is, my phones and ROMs have always worked after magisk. If the above steps don't work maybe that's related. We will have to look around if that's the case
Click to expand...
Click to collapse
is this tool correct? https://forum.xda-developers.com/showpost.php?p=63615067
is the rom correct what i use?
OK i have unSu the device and have reinstall Magisk ..
https://prnt.sc/o929eu
but i have the same problem
tuvok1981de said:
OK i have unSu the device and have reinstall Magisk ..
https://prnt.sc/o929eu
but i have the same problem
Click to expand...
Click to collapse
- have you tried changing fingerprint with Magiskhide?
- has it worked previously and just recently stopped working or is this your first attempt?
- do other users on the same ROM have similar results?
I incidentally also checked DT if the ROM is rooted and doesn't look like it. Kernel also has namespace commits too, so it's not that.
Buff99 said:
- have you tried changing fingerprint with Magiskhide?
- has it worked previously and just recently stopped working or is this your first attempt?
- do other users on the same ROM have similar results?
I incidentally also checked DT if the ROM is rooted and doesn't look like it. Kernel also has namespace commits too, so it's not that.
Click to expand...
Click to collapse
- yes i have make with MagiskHidePropsConf-v.4.0.3 and terminal props S4 and S4 Active variante but it will not do this
- it will not work all the time where i have flash my S4
- i have no idea iam not the developer from the rom iam only a User
1. Flash twrp
2. Full wipe, system data internal
3. Flash ROM, boot
4. Flash gapps, boot
5. Flash magisk, should pass
6. If not, change selinux to enforcing
Let us know?
andrew2432 said:
1. Flash twrp
2. Full wipe, system data internal
3. Flash ROM, boot
4. Flash gapps, boot
5. Flash magisk, should pass
6. If not, change selinux to enforcing
Let us know?
Click to expand...
Click to collapse
Point 1. is on the Phone
ähm where must i make Point 6 ?
andrew2432 said:
1. Flash twrp
2. Full wipe, system data internal
3. Flash ROM, boot
4. Flash gapps, boot
5. Flash magisk, should pass
6. If not, change selinux to enforcing
Let us know?
Click to expand...
Click to collapse
OK i have make flash new all 5 Points
but ctsProfile: false / basicIntegrity: false on Magisk Manager
tuvok1981de said:
-
- i have no idea iam not the developer from the rom iam only a User
Click to expand...
Click to collapse
Yeah, well this is a developer forum. There is a thread for the ROM you use. It is assumed you have already seeked advice there from other users of the same rom...?
Being aware of whether others have this working or not shows whether you are wasting your time or not.
Buff99 said:
Yeah, well this is a developer forum. There is a thread for the ROM you use. It is assumed you have already seeked advice there from other users of the same rom...?
Being aware of whether others have this working or not shows whether you are wasting your time or not.
Click to expand...
Click to collapse
in this forum say the users i must go in the Samsung S4 Forum and ask my Question!
tuvok1981de said:
in this forum say the users i must go in the Samsung S4 Forum and ask my Question!
Click to expand...
Click to collapse
I searched safety net inside the ROM forum, it said to change selinux to enforcing. I am not sure how. Maybe with a magisk module
Edit: credit for these instructions goes to @DiamondJohn
The user only installed magisk and safety net passed. Are you installing xposed or anything?
stecko said:
Can you guide me how to switch selinux to enforcing?
Click to expand...
Click to collapse
in a terminal, or part of a boot script
Code:
su;
setenforce 1;
or you could try the app I built, where you will find it under the menu
Code:
Current State>SELinux>Set SELinux Enforcing.
https://forum.xda-developers.com/android/apps-games/app-temefi-comprehensive-documentation-t3806260
andrew2432 said:
I searched safety net inside the ROM forum, it said to change selinux to enforcing. I am not sure how. Maybe with a magisk module
Edit: credit for these instructions goes to @DiamondJohn
The user only installed magisk and safety net passed. Are you installing xposed or anything?
in a terminal, or part of a boot script
Code:
su;
setenforce 1;
or you could try the app I built, where you will find it under the menu
Code:
Current State>SELinux>Set SELinux Enforcing.
https://forum.xda-developers.com/android/apps-games/app-temefi-comprehensive-documentation-t3806260
Click to expand...
Click to collapse
Very Nice .. this part have help ..
Code:
su;
setenforce 1;
https://prnt.sc/o9gchi
thank you!
[SOLUTION FOUND! SOLUTION IN THE FIRST ANSWER]
https://forum.xda-developers.com/showpost.php?p=83545573&postcount=2
Hello everybody.
I need help about how to install GSIs on my device. I am trying to install GSIs on my Samsung Galaxy A7 (2018) (SM-A750G) device.
After learning about the requirements to use GSIs I was able to see that my device is Treble (A-Only) compatible, so I looked for GSIs A-Only and with ARM64 architecture (the architecture of the CPU of my device).
Once everything was prepared and the OEM Unlock was done I tried to use fastboot from my PC to install GSIs but I not obtain results and I tried to use the "traditional" way with TWRP and after flashing the image (.img) in System with TWRP I did not obtain either any result. I was getting bootloops or stuck at startup (even for hours). This forced me to reinstall the official Samsung firmware (downloaded from samfw [dot] com) and I am currently using that same one.
I used this reference guide as it is the closest I could find: https://forum.xda-developers.com/galaxy-a7/how-to/guide-guide-how-to-flash-gsi-t3933968
Could someone tell me what I may be doing wrong, or what is wrong with my device?
Thank you very much.
Solution
After "struggling" with the bootloop, I finally managed to find an answer.
APPEARINGLY a kernel problem. My solution was the following:
* In an SD Card, place; Magisk-phh, Quantum Kernel (GSI and ONEUI), the RMM Bypass, the boot fix and the GSI. Put the memory card inside the device.
* Enter in the recovery mode pressing the VOLUME UP + VOLUME DOWN keys and inserting a USB cable connected to a PC.
* Install stock firmware using Odin.
[DO NOT START THE SYSTEM YET]
* Unplug the USB, and restart (or close and open) Odin.
* Install TWRP using Odin.
[IMPORTANT: Disable Odin's "Auto Restart" AND DO NOT ALLOW THE SYSTEM TO START UP ON FINISH. Automatically go to TWRP by pressing the POWER + VOLUME UP keys for a few seconds until you see the Samsung startup].
* Flash the RMM Bypass zip.
* Reboot in recovery.
* Format (not wipe) /data.
* Wipe normally the partitions.
* Flash Quantum kernel (WARNING: The version I used was the "ONEUI" version, not the one that says GSI).
* Start the system (just seeing the welcome screen is enough).
* Go to TWRP again.
* Flash the GSI (in my case I used the one provided by Google, I don't know if this will work with other GSIs).
* Flash Magisk-phh.
* Flash RMM Bypass again.
* Flash Quantum Kernel (this time YES the one that says GSI).
* Flash the boot fix.
After this, the bootloop disappeared and I was able to use the GSI without any problem. I'm not sure why this is, I can only say that it is the only thing that worked for me.
The links of the tools that I used are the following (I don't know if this works with other tools):
Android 10 GSI: https://developer.android.com/topic/generic-system-image/releases#android-gsi-10
Quantum Kernel: https://forum.xda-developers.com/ga...ernel-quantum-kernel-v1-0-updated-20-t4085585
phh-magisk: https://sourceforge.net/projects/expressluke-gsis/files/Extras/phh-magisk-ten/
RMM Bypass: https://drive.google.com/file/d/1UvqcYUbVTFomAmKCVkMyfTWeuz1sEz8n/view
Boot Fix: https://forum.xda-developers.com/galaxy-a7/how-to/guide-guide-how-to-flash-gsi-t3933968
Odin: https://samsungodin.com/
I hope it has been helpfull.
"The links of the tools that I used are the following (I don't know if this works with other tools):"
@gsosacristian
where did you get twrp for A7 2018?
me-droid said:
"The links of the tools that I used are the following (I don't know if this works with other tools):"
@gsosacristian
where did you get twrp for A7 2018?
Click to expand...
Click to collapse
https://forum.xda-developers.com/galaxy-a7/development/recovery-twrp-3-2-3-1-galaxy-a7-2018-t3876798 i took from this link everything works
The link for the boot fix image is expired. Do you still have it by any chance? I want to use it for GSI 13 but I'm not even sure that it will work
I am deleting this guide since M12 will soon recieve an unofficial build of LineageOS 19.1. Don't ask when, as I'm not the lead developer but I helped with it
Update 1: I figured out how to make script run on boot. Instructions revised. If you followed earlier check them again
Update 2: Magisk 24.1 is now stable. Instructions revised.
Update 3: I contacted phh and he implemented the script inside his trebleapp. Instructions revised and modified trebleapp is attached. NOTE: GSIs newer than 7/Feb/2022 will include this workaround by default.
Update 4: This guide is now unnecessary now that unofficial LineageOS is very close to release
Achievement unlocked: flashed GSI with FBE enabled!
{
"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"
}
In short, I've successfully done flashing of @phhusson's latest version of Android 12 GSI (which is v402 as of today). To do this, I needed to modify the multidisabler script so it won't disable FBE, format the userdata using the stock recovery, flash TWRP, resize tmpfs to proper size, push GSI image into tmpfs and flash it using TWRP. I used the securized image with vndklite variant, since there was no securized images for regular vndk releases (but it seemed that vndk was working better for me, at least I have no USB connection anymore where with VNDK I was able to have USB debugging). Maybe I'll try re-flashing it once I'll patch the regular images and securize them (since I'm on *nix, I can just mount them and modify their contents) and take an approach of finding how Samsung ROMs are working OK. For now, I need to take a break from all bootloops I had in the process of FBE flashing .
Anyway, the goal of this experiment was to use GSI ROMs as a daily driver and having FBE disabled could otherwise cause a serious problem on device loss.
So, onto the list what's been tested (that wasn't noted before):
Screen locking – it seems that the workaround for the screen is not applied before unlocking the phone, probably because the app is not running yet. This might work with the script used as postfs module.
EDIT: I've found some notes in the Magisk documentation that both post-fs data and late_start services are run after data is decrypted, which basically means applying this workaround using Magisk seems to be pointless for now (maybe not after PPH app will stop providing the workaround)... Probably the best option would be patching the ROM itself, either with flashable ZIPs or directly before flashing it (most GSIs can be mounted under Linux and tweaked).
Adaptive brightness – not working, since all virtual sensors are not working for now. Might be easy to fix through as I've found some stuff in the official ROM that I had an idea to experiment with putting them into GSIs (as a Magisk module, to avoid a breakage).
USB – as I said, a data transfer via USB is not working for me for some reason. It worked for me once I had VNDK Android 12 GSI installed (same version).
Booting with stock kernel – I had some successful attempts doing that, but it further was a cause of a bootloop, at least once I had installed Magisk. Therefore, I'll recommend patching the Magisk the way as in tutorial (after patching the kernel) to have everything working for now.
For people who wants to play with stock images but don't know how: you can use simg2img, lpunpack and Linux to extract and mount the official ROM image in approach of finding there some tips like in initrc services why some stuff is working fine on Samsung while it doesn't on GSIs. Maybe I would tinker with it a bit, trying to export a few services and libraries in an approach to create a Magisk module with all stuff needed to have a fully functional GSI, but I'm tired of modding for now, especially when this is my first Samsung phone I had to deal with.
Edit: Typo fixes, added additional text formatting.
Amazing work. If you need testers feel free to PM me. As a sidenote, poking in sysfs led me to believe that android is sending the info needed to read the proximity but the kernel is sending garbage which gets interpreted as the sensor not being triggered. Also phh should have added the workaround into his trebleapp starting from phh AOSP 12 v401, so aside from installing magisk no post install workarounds should be needed.
Attached is a photo of what cmd_result reads when a whatsapp voice message is played which reads proximity to play the message in the earpiece and turn screen off when proximity is triggered
ap4ss3rby said:
Also phh should have added the workaround into his trebleapp starting from phh AOSP 12 v401, so aside from installing magisk no post install workarounds should be needed.
Click to expand...
Click to collapse
Unfortunately, the commit was reverted as of master branch, so we should prepare for it to stop to work unless phh will work on it before releasing an another version. Also I wrote that the workaround didn't seem to apply itself before unlocking the phone (FBE encrypted) the first time and therefore decrypting sensitive data after boot. For now this makes it an requirement when using PHH app to unlock the phone before it sleeps so the touch is going to be responsive.
Anyway, it seems that even Magisk (v24.1) is not capable of running the services before data is decrypted, so now I have no idea how to bypass that in other way than patching the ROM itself and creating the `initrc` service... Anyway, this is also a hint that what samsung is doing starts before basically everything, so no APK file nor script is going to really fix it since they are meant to start after data is decrypted...
SB3P said:
Unfortunately, the commit was reverted as of master repo, so we should prepare for it to stop to work unless phh will work on it before releasing an another version. Also I wrote that the workaround didn't seem to apply itself before unlocking the phone (FBE encrypted) the first time and therefore decrypting sensitive data after boot. For now this makes it an requirement when using PHH app to unlock the phone before it sleeps so the touch is going to be responsive.
Anyway, it seems that even Magisk (v24.1) is not capable of running the services before data is decrypted, so now I have no idea how to bypass that in other way than patching the ROM itself and creating the `initrc` service... Anyway, this is also a hint that what samsung is doing starts before basically everything, so no APK file nor script is going to really fix it since they are meant to start after data is decrypted...
Click to expand...
Click to collapse
I guess for now we have two options:
A: Build custom kernel/vendor specifically for GSIs that correctly reports sensors as GSIs expect them to
B: Fix GSI issues through Magisk services implementing various workarounds in scripts. (an example is the touchscreen sleep/wake issue)
ap4ss3rby said:
Attached is a photo of what cmd_result reads when a whatsapp voice message is played which reads proximity to play the message in the earpiece and turn screen off when proximity is triggered
Click to expand...
Click to collapse
Also that's interesting those virtual sensors are still present, I personally thought that Samsung made it the way there's an virtual device create as on Linux and there's their proprietary software running somewhere in the system that uses the camera as an input and calculates it to provide the data... On the other hand, when I think about that logic, even some (if not all) virtual devices on Linux (e.g. v4l2loopback) needs to have their module loaded with the kernel to work. I'm glad at least there's no need to reinvent the wheel and no one really needs to recreate the entire algorithm for it if it's going to be in the kernel sources...
ap4ss3rby said:
I guess for now we have two options (...)
Click to expand...
Click to collapse
I feel like the B option is worse than patching the GSI ROMs, either via flashable ZIPs or on your own... This is because I couldn't find anything in docs that would let me run services before /data is going to be decrypted... Personally, I've made myself a such service using the statically-compiled Linux ARM binary (non-NDK, using GNU libs – yes, it is still runnable on Android as well) – it applies the workaround for now both when screen is turned on and off (I had no idea on which event it should really run, so I made it to run on both just to be safe) by watching the file changes based on (AFAIK) filesystem events – so it has a major advantage over your script, as it won't run in endless loop, yet watch the file responsible for brightness to change and then do its job. But even with that, TSP doesn't seem to make touch available immediately and it is still expected to be revived after 1-2 seconds.
Also, as of the methods of applying these workarounds, the other way could be modifying the ramdisk (maybe with the help of Magisk, which I believe has documented how it's actually doing it itself and how others could modify the root and init as Magisk does to load files before the OS will properly initalize itself. Yet I don't like an idea of messing myself with the boot partition, at least for now...
Debug info: I tried flashing stock to grab logs from the touchscreen driver. The logs attached here do not appear at all on an unpatched GSI (I.E flashing the GSI as is without any touch workaround).
ap4ss3rby said:
Hi, I installed LineageOS 18.1 GSI on my M127F. I want to share my guide to installing this GSI.
Code:
DISCLAIMER:
By following this guide you accept that you
may do irreversible damage to your phone.
If something breaks the responsibility is
yours only. If you want stable software that
is guaranteed to work 100% don't follow
this guide.
I assume you are running a fully stock system and and locked bootloader and firmware U3/U4.
Installing TWRP and custom kernel
Enable Developer Options by tapping on software information > build number 7 times
Enter developer options then toggle OEM Unlocking on.
Power off your phone.
Hold Vol Up + Vol Down then plug in your phone to enter download mode
THIS WILL ERASE ALL YOUR DATA AND VOID YOUR WARRANTY. Follow on screen instructions to unlock your bootloader. THIS WILL ERASE ALL YOUR DATA AND VOID YOUR WARRANTY
After this you want to download and install attached Orangefox recovery using odin. After odin is done flashing enter recovery
Format data (not wipe) in recovery
Enter terminal and type multidisabler twice
Reboot to system and verify that under security encryption is disabled
Download TWRP and custom kernel for your phone
Reboot into recovery and locate the downloaded twrp image
Select recovery.
Reboot into recovery
Install kernel, then wipe cache and reboot. You should now see that it is complaining about some internal issue. This is normal.
Installing the GSI
Download your favorite ROM from the list provided below. You want to install an arm64 a/b image.
Extract the image file
Reboot to recovery.
Select install then install image
Locate the GSI image
Select install system
After that is done return to recovery and select factory reset.
Reboot then do setup (if applicable) then download attached magisk and phh trebleapp. If your phone is stuck on bootanimation check under to fix it.
IMPORTANT: DO NOT LET THE SCREEN TURN OFF OR YOU WILL HAVE TO REBOOT TO MAKE TOUCH WORK AGAIN.
Install attached magisk
Open magisk and click on install then direct install
Download and install the attached phh-treble app apk.
Touch should now work. Enjoy your GSI.
Extras
Magisk 24.1
Open Magisk
Go to settings
Update Magisk Manager app to version 24.1
Relaunch Magisk then install magisk
Choose direct instal
Migrating to patched trebleapp
Download and install attached trebleapp
Open your root file manager
go to /data/adb/service.d
Delete the script you added earlier
Tips in case things don't work
In case after rebooting to the GSI the phone bootloops:
Download stock image from wherever you download your firmware (I use a python program called samloader)
Extract the AP of the downloaded firmware
Find userdata.img.lz4 and create a .tar archive only containing this file
Reboot to download mode
In odin select AP then locate the newly created .tar archive Then click on flash
Reboot
Continue from step 7 under the "Installing the GSI" portion of the guide
To revive the touchscreen using ADB:
In case you didn't grant adb root access but installed magisk, run adb shell then su. A root access for the app shell will appear. Grant root permission
Plug in phone to a computer with ADB
adb shell
su
cat /sys/class/sec/tsp/cmd_result
echo check_connection > /sys/class/sec/tsp/cmd
What works:
Boots
RIL
Fingerprint
Main rear camera
Front camera
Sleep/Wake (workaround in steps above, may need to sleep wake several times before it works)
WiFi
Flashlight
Rotation
Magisk 24
90Hz (M12 only. A12 doesn't have 90Hz refresh rate)
LineageOS 18.1
LineageOS 19
CAOS (GApps variant available)
phh AOSP 11 v313
phh AOSP 12 v400h
Untested
GPS
Flashing GApps. (I use fdroid and aurora store on LineageOS and CAOS has built in GApps)
USB-OTG
A127F
M127G
If I didn't list it under broken or working I didn't try it or forgot to test it.
Broken
Double tap to wake. Touchscreen turns off and I have no idea how to keep it alive while lcd is off
MTP
Virtual Proximity. Screen will stay on in phone calls and WhatsApp will always play voice messages through speaker
Flashlight brightness. Flashlight will always stay on weakest brightness with no way to adjust.
Adaptive refresh. The framerate you set in phh addons is what you get. Be prepared for slightly reduced battery.
You tell me (even though I probably don't have the solution)
Bugs
You may need to wait a little bit before touchscreen responds or sleep/wake several times before screen responds after turning the screen off
Credits
@physwizz for kernel, TWRP and orangefox
@phhusson for implementing workaround in trebleapp as well as GSI list
me for touch workaround
Links
Kernels and recoveries: https://t.me/a127f_res/113
GSIs: https://github.com/phhusson/treble_experimentations/wiki/Generic-System-Image-(GSI)-list
Click to expand...
Click to collapse
Great guide.
Well done
Thanks for the great guide. Unfortunately, I don't know how to resize tmpfs. Can anybody tell me how to do that? I only have 4 GB or less on my Samsung Galaxy A12 with 64 GB of Storage (it should have, it only shows something like 3 or 4 gigabytes like I mentioned)
matahbeyz said:
Thanks for the great guide. Unfortunately, I don't know how to resize tmpfs. Can anybody tell me how to do that? I only have 4 GB or less on my Samsung Galaxy A12 with 64 GB of Storage (it should have, it only shows something like 3 or 4 gigabytes like I mentioned)
Click to expand...
Click to collapse
You don't have to resize TMPFS if you don't want to have FBE encryption or have the external SD card (you can use microSD for flashing, which might be a better choice if you need to flash a larger devices). Also you can't resize TMPFS to 64 GB, it uses your RAM to store regular data instead of storage (this is basically the concept of TMPFS). What I was mentioning is that /data won't work under FBE and custom recoveries for now, so you need to use your RAM instead if you don't have any external storage device to save images somewhere via ADB.
As of resizing the TMPFS, you should be able to find some Linux tutorial how to do that, on Android this is works basically the same (even on both Linux and Android you have /tmp directory with TMPFS by default).
Anyway, I've decided to share some stuff that you may need for that. Here's the multidisabler script I was using for flashing GSIs with FBE encryption preserved. I was also working on the native binary that would work as the workaround for the touchscreen so it can be used instead of the script. The advantages are that it actually listens to filesystem events and therefore does not need to read file in loop in order to get the information if brightness has changed. Maybe I'll share it with you once I find it to be ready, right now I'll just share my multidisabler script with patches.
BTW, I've tested LineageOS GSIs (both 11 and 12) and noticed they behave completely different, no matter of variant (the USB actually uses some driver, which is not fully compatible with M12 but close enough to provide basic communication through ADB). I guess pphusson just changed something and now these drivers aren't applied by default, yet I think I've noticed the issues with Bluetooth's HSP/HFP profiles which as I remember was not the case with latest stable pphusson's vanilla Android 12 GSIs. Now I just hope these problems are going to be resolved in the next builds of Android's GSIs with phhusson's patches and with the knowledge that MTP just worked fine on TWRP I used, there's a little hope that we will gain the proper combination of drivers/firmware to have both USB and Bluetooth functional at the same time someday.
I've also approached patching the kernel under newer kernel base 4.19.112, yet I gave up on properly resolving its conflicts. I may work on that as well in order to patch some vulnerabilities, with a hope that I'll succeed updating kernel as closest to the latest patch as possible. The 4.19.112 is going to be just a test if Samsung is capable of actually booting from it and if I may be able to use git with common human logic and my limited programming skills to actually patch it the way it would do so (without much understanding about the code itself, yet basic knowledge about C syntax). For now I've only succeed reproducing the upstream Linux kernel commit structure from 4.19.111, with a single additional commit for Samsung changes and another one for physwizz ones.
can anyone guide me how to unlock bootloader on Samsung Galaxy M12G ?
@SB3P Thanks so much. Sorry for my late reply, but thank you!
SB3P said:
Achievement unlocked: flashed GSI with FBE enabled! View attachment 5533799In short, I've successfully done flashing of @phhusson's latest version of Android 12 GSI (which is v402 as of today). To do this, I needed to modify the multidisabler script so it won't disable FBE, format the userdata using the stock recovery, flash TWRP, resize tmpfs to proper size, push GSI image into tmpfs and flash it using TWRP. I used the securized image with vndklite variant, since there was no securized images for regular vndk releases (but it seemed that vndk was working better for me, at least I have no USB connection anymore where with VNDK I was able to have USB debugging). Maybe I'll try re-flashing it once I'll patch the regular images and securize them (since I'm on *nix, I can just mount them and modify their contents) and take an approach of finding how Samsung ROMs are working OK. For now, I need to take a break from all bootloops I had in the process of FBE flashing .
Anyway, the goal of this experiment was to use GSI ROMs as a daily driver and having FBE disabled could otherwise cause a serious problem on device loss.
So, onto the list what's been tested (that wasn't noted before):
Screen locking – it seems that the workaround for the screen is not applied before unlocking the phone, probably because the app is not running yet. This might work with the script used as postfs module.
EDIT: I've found some notes in the Magisk documentation that both post-fs data and late_start services are run after data is decrypted, which basically means applying this workaround using Magisk seems to be pointless for now (maybe not after PPH app will stop providing the workaround)... Probably the best option would be patching the ROM itself, either with flashable ZIPs or directly before flashing it (most GSIs can be mounted under Linux and tweaked).
Adaptive brightness – not working, since all virtual sensors are not working for now. Might be easy to fix through as I've found some stuff in the official ROM that I had an idea to experiment with putting them into GSIs (as a Magisk module, to avoid a breakage).
USB – as I said, a data transfer via USB is not working for me for some reason. It worked for me once I had VNDK Android 12 GSI installed (same version).
Booting with stock kernel – I had some successful attempts doing that, but it further was a cause of a bootloop, at least once I had installed Magisk. Therefore, I'll recommend patching the Magisk the way as in tutorial (after patching the kernel) to have everything working for now.
For people who wants to play with stock images but don't know how: you can use simg2img, lpunpack and Linux to extract and mount the official ROM image in approach of finding there some tips like in initrc services why some stuff is working fine on Samsung while it doesn't on GSIs. Maybe I would tinker with it a bit, trying to export a few services and libraries in an approach to create a Magisk module with all stuff needed to have a fully functional GSI, but I'm tired of modding for now, especially when this is my first Samsung phone I had to deal with.
Edit: Typo fixes, added additional text formatting.
Click to expand...
Click to collapse
Could you explain how you done this.... i mean please explain step by step... i am using Galaxy M12G Varient....thanks in advance
milindbhaliwade said:
Could you explain how you done this.... i mean please explain step by step... i am using Galaxy M12G Varient....thanks in advance
Click to expand...
Click to collapse
If you would see the *untested* section at the initial post of this thread, it is unknown whetever this works or not for M127G phones (if it bootloops it might not work at all). Anyway, here's how I did it on M127F (at least how I remember this):
1. I did steps from 1-6, I believe I skipped 7 since I was aware it will mess something up with the data partition.
2. I modified the multidisabler script and pushed it to my phone via the ADB (to TMPFS). You can find this script pushed as xz compressed file. Before executing multidisabler script I have done a backup of the recovery and system partitions (using dd tool) which I am going to reflash later.
3. I rebooted to download mode and flashed TWRP image.
4. After TWRP ended flashing, I booted into the recovery. I flashed the physwizz kernel and then my own GSI image as it was described in the instructions at the initial post. Just remember that /data partition is not functional with FBE and TWRP so you need to push your images somewhere else like microSD card or TMPFS partition. OTG might work here as well, this is something I haven't tested yet through...
5. Once you are done with flashing you need to restore the original recovery partition via the download mode. TWRP won't boot the GSIs with FBE encryption enabled actually it does boot now for me, yet I still recommend switching to stock recovery if your phone bootloops or you need to format/wipe userdata partition. You can then safely format your /data partition with the stock recovery.
ap4ss3rby said:
Hi, I installed LineageOS 18.1 GSI on my M127F. I want to share my guide to installing this GSI.
Code:
DISCLAIMER:
By following this guide you accept that you
may do irreversible damage to your phone.
If something breaks the responsibility is
yours only. If you want stable software that
is guaranteed to work 100% don't follow
this guide.
I assume you are running a fully stock system and and locked bootloader and firmware U3/U4.
Installing TWRP and custom kernel
Enable Developer Options by tapping on software information > build number 7 times
Enter developer options then toggle OEM Unlocking on.
Power off your phone.
Hold Vol Up + Vol Down then plug in your phone to enter download mode
THIS WILL ERASE ALL YOUR DATA AND VOID YOUR WARRANTY. Follow on screen instructions to unlock your bootloader. THIS WILL ERASE ALL YOUR DATA AND VOID YOUR WARRANTY
After this you want to download and install attached Orangefox recovery using odin. After odin is done flashing enter recovery
Format data (not wipe) in recovery
Enter terminal and type multidisabler twice
Reboot to system and verify that under security encryption is disabled
Download TWRP and custom kernel for your phone
Reboot into recovery and locate the downloaded twrp image
Select recovery.
Reboot into recovery
Install kernel, then wipe cache and reboot. You should now see that it is complaining about some internal issue. This is normal.
Installing the GSI
Download your favorite ROM from the list provided below. You want to install an arm64 a/b image.
Extract the image file
Reboot to recovery.
Select install then install image
Locate the GSI image
Select install system
After that is done return to recovery and select factory reset.
Reboot then do setup (if applicable) then download attached magisk and phh trebleapp. If your phone is stuck on bootanimation check under to fix it.
IMPORTANT: DO NOT LET THE SCREEN TURN OFF OR YOU WILL HAVE TO REBOOT TO MAKE TOUCH WORK AGAIN.
Install attached magisk
Open magisk and click on install then direct install
Download and install the attached phh-treble app apk.
Touch should now work. Enjoy your GSI.
Extras
Magisk 24.1
Open Magisk
Go to settings
Update Magisk Manager app to version 24.1
Relaunch Magisk then install magisk
Choose direct instal
Migrating to patched trebleapp
Download and install attached trebleapp
Open your root file manager
go to /data/adb/service.d
Delete the script you added earlier
Tips in case things don't work
In case after rebooting to the GSI the phone bootloops:
Download stock image from wherever you download your firmware (I use a python program called samloader)
Extract the AP of the downloaded firmware
Find userdata.img.lz4 and create a .tar archive only containing this file
Reboot to download mode
In odin select AP then locate the newly created .tar archive Then click on flash
Reboot
Continue from step 7 under the "Installing the GSI" portion of the guide
To revive the touchscreen using ADB:
In case you didn't grant adb root access but installed magisk, run adb shell then su. A root access for the app shell will appear. Grant root permission
Plug in phone to a computer with ADB
adb shell
su
cat /sys/class/sec/tsp/cmd_result
echo check_connection > /sys/class/sec/tsp/cmd
What works:
Boots
RIL
Fingerprint
Main rear camera
Front camera
Sleep/Wake (workaround in steps above, may need to sleep wake several times before it works)
WiFi
Flashlight
Rotation
Magisk 24
90Hz (M12 only. A12 doesn't have 90Hz refresh rate)
LineageOS 18.1
LineageOS 19
CAOS (GApps variant available)
phh AOSP 11 v313
phh AOSP 12 v400h
Untested
GPS
Flashing GApps. (I use fdroid and aurora store on LineageOS and CAOS has built in GApps)
USB-OTG
A127F
M127G
If I didn't list it under broken or working I didn't try it or forgot to test it.
Broken
Double tap to wake. Touchscreen turns off and I have no idea how to keep it alive while lcd is off
MTP
Virtual Proximity. Screen will stay on in phone calls and WhatsApp will always play voice messages through speaker
Flashlight brightness. Flashlight will always stay on weakest brightness with no way to adjust.
Adaptive refresh. The framerate you set in phh addons is what you get. Be prepared for slightly reduced battery.
You tell me (even though I probably don't have the solution)
Bugs
You may need to wait a little bit before touchscreen responds or sleep/wake several times before screen responds after turning the screen off
Credits
@physwizz for kernel, TWRP and orangefox
@phhusson for implementing workaround in trebleapp as well as GSI list
me for touch workaround
Links
Kernels and recoveries: https://t.me/a127f_res/113
GSIs: https://github.com/phhusson/treble_experimentations/wiki/Generic-System-Image-(GSI)-list
Click to expand...
Click to collapse
try to install @phhusson (system-squeak-arm64-ab-vndklite-gapps-secure.img) GSI using above method on Samsung Galaxy M12G (SM-M127G) BUT failed to boot up
facing following issue:
1) unable to boot in OrangeFox Recovery
2) boot in TWRP Recovery but not detected MicroSD Card
3) samehow manage to push Kernal.zip, SystemGSI.img by adb push file_name_with_extension /sdcard BUT not flash properly as TWRP reboot again and again in 2-3 minutes
so friends, don't try this method on Samsung Galaxy M12G (SM-M127G) unless Senior member come up with this specific model
For anyone who has starred this thread, I and other devs have released a proper build of LineageOS with /vendor. Aside from VoLTE (which I don't think worked in GSIs anyways) everything should work. Moderators, please close this thread
ap4ss3rby said:
For anyone who has starred this thread, I and other devs have released a proper build of LineageOS with /vendor. Aside from VoLTE (which I don't think worked in GSIs anyways) everything should work. Moderators, please close this thread
Click to expand...
Click to collapse
LineageOS is not only GSI available, I think someone might still find it useful if they want to flash another ROMs. Also Phhuson's GSI also contains some features that unofficial GSI release don't have (i.e. flashlight control in Phhusson's app), so they still might be useful for someone.
This is why I think it is better to not close this thread and maybe revive original guide.
SB3P said:
LineageOS is not only GSI available, I think someone might still find it useful if they want to flash another ROMs. Also Phhuson's GSI also contains some features that unofficial GSI release don't have (i.e. flashlight control in Phhusson's app), so they still might be useful for someone.
This is why I think it is better to not close this thread and maybe revive original guide.
Click to expand...
Click to collapse
Our rom is built completely from source, not a GSI, and it is more or less a complete replacement of stock firmware. If you want you can use a GSI over that instead, and it should function much better than just replacing stock firmware
ap4ss3rby said:
Our rom is built completely from source, not a GSI, and it is more or less a complete replacement of stock firmware. If you want you can use a GSI over that instead, and it should function much better than just replacing stock firmware
Click to expand...
Click to collapse
I haven't said GSI are better, I personally use this unofficial LineageOS build. But what I've said, GSI brings much more variety of picking the OS you can install. Even Linux can be installed on phones nowadays using GSI with only Halium-patched kernel as an requirement. This is why I think leaving this tutorial archived (no updates, interest on fixing bugs etc.) is better than removing it.