[Xiaomi Mi A2 ROMs, Kernels, Recoveries, & Other De] Martinocom:
Hello everyone! Long post with details, so I will organize it in 4 points.

1. Previous ROM and first impressions: skip if not interested in feedback

2. GCam: skip if you're ok with stock camera

3. Root + Safety net API pass: skip if you are passing the SafetyNet by default

4. Bug/Glitches found: for devs

1. Previous ROM and first impressions

I'm coming from DerpFest 12 (26 Nov Build) and before it from Lineage OS 11. This ROM seems the smoothest one for now. No customisations, only the Google stock ones. It's good and bad: I immediately replaced the launcher with Nova cos I hate the bottom search bar, but for many other things, like always, less is more and I don't really need any other customizations. Battery life seems good, or at least adequate to the smoothness and the small battery of the Mi A2.

No problems: WiFi, Bluetooth, calls, 4G works all fine. Microphone volume is fixed (my volume is usually very low).

2. GCam

I'm using the MGC by BSG 8.1.101 and it seems to work. I took it from the telegram channel "Harsh's Gcam Updates" (t.me/harsh_gcam) but you can find it also on CelsoAzevedo site. Also, reference for recommended GCAM is on the official README.

3. Flash + Root + SafetyNet Pass

My benchmark is the McDonald's app. If it works, it pass. Obviously I'm checking also with some "official" checkers, but it seems like McNuggets are so good that they decided to not get the offers to "unchecked phones". How to do it? I never thought it will be so simple.

WARNINGS:

Take this guide *as is* without any warranty. I'm not responsible of various things may happen.

Sources where I get the info (everyone should be able to reproduce my steps reading them):

https://xdaforums.com/t/rom-12-xiaomi-mi-a2-pixelexperience-aosp.4379509/

roms_changelog/PE_A12_UNOF.md at main · iamimmanuelraj/roms_changelog

Change is the only thing that doesn't change so lets log it and make a chnagelog XD - roms_changelog/PE_A12_UNOF.md at main · iamimmanuelraj/roms_changelog

github.com

Loading...

[GUIDE] Flashing and updating custom ROMs

Flashing for Dummies In this guide we'll go over how to flash custom ROMs with root and TWRP in addition to updating this guide will always be updated Read the ENTIRE guide before you start Your warranty is now void. We are not responsible...

xdaforums.com

Pass SafetyNet on Rooted Android 12/13/14

In this comprehensive tutorial, we will show you detailed steps to pass the SafetyNet Test on your rooted Android 12/13/14 device.

www.droidwin.com

Releases · Magisk-Modules-Repo/MagiskHidePropsConf

This tool is now dead... Contribute to Magisk-Modules-Repo/MagiskHidePropsConf development by creating an account on GitHub.

github.com

Releases · kdrag0n/safetynet-fix

Google SafetyNet attestation workarounds for Magisk - kdrag0n/safetynet-fix

github.com

Prerequisites

I have the bootloader unlocked and TWRP installed.

I have the ADB tools installed.

I have all the drivers ok, recognizing my phone "as booted" and "as TWRP".

Check all this before proceeding!

Requisites:

As specified by post, please, read the README!

Download what you need: the Pixel Experience ROM, the recommended TWRP and recommended Magisk (all specified in the README!)

Remember that magisk.apk is also a magisk.zip flashable: just change extension!

Do not download GApps - already included!

Optionally, take the recommended GCam (you know where to find it :) ).

For the Root+SafetyNet Pass, download the latest release of MagiskHidePropsConf (current 6.1.2)

For the Root+SafetyNet Pass, download the latest SafetyNetFix (Zygisk) (current 2.2.1). Do not take the Riru version!

I take also the DM-VERITY, FORCED ENCRYPTION, AND DISC QUOTA DISABLER

Pre-Procedure:

Backup, always. NANDROID is recommended. Google how to do this.

I followed a mix of this two guides (guide1, guide2)

Put all your files into the ADB.exe folder and rename them in a handy way

rom.zip for your rom

twrp.zip for your twrp

magisk.zip for your magisk

do not rename the DM-verity zip, the name includes parameters needed to flash!

Procedure of flashing (what I've done, feel free to fix my guide):

Boot into TWRP

Go to WIPE > Advanced > Select All Partitions > Confirm Wipe

DO NOT RESTART

Go into restart menu and change slot (if was A, change to B)

Go to WIPE > Advanced > Select All Partitions > Confirm Wipe

Go into restart menu and reboot into recovery

Wait until it reboots to recovery again

Swipe to allow modifications, if asked

Go to WIPE > Advanced > Select All Partitions > Confirm Wipe

DO NOT RESTART

Go into restart menu and change slot (if was B, change to A)

Go to WIPE > Advanced > Select All Partitions > Confirm Wipe

Now it's time to flash: I'm using the adb sideload method.

Go to Advanced > Sideload > (select wipe cache and dalvik) > Sideload!

Flash the ROM with adb sideload rom.zip and wait

DO NOT RESTART

Go to Advanced > Sideload > (select wipe cache and dalvik) > Sideload!

Flash the TWRP with adb sideload twrp.zip and wait

DO NOT RESTART

Go into restart menu and change slot (if was A, change to B)

Restart to recovery

Wait until it reboots

Swipe to allow modifications, if asked

Go to Advanced > Sideload > (select wipe cache and dalvik) > Sideload!

Flash the DM-VERITY blah blah with adb sideload <complex-zip-name>.zip

I actually don't know if this is needed

I just followed one of the guide that told to do this and I've done this

If asked, select the default (unsure) parameters

DO NOT RESTART

Go to Advanced > Sideload > (select wipe cache and dalvik) > Sideload!

Flash the Magisk with adb sideload magisk.zip and wait

Wipe cache + dalvik

Restart to OS.

If at this point it will tell you that "no os is installed" try to reboot anyway.

If it enters a bootloop, return to recovery, change slot (if was B, change to A) and try reboot again.

Wait and pray

You're now a happy Pixel Experienced user!

Procedure of SafetyNet (what I've done, feel free to fix my guide):

If magisk app is not visible, just bring in some way the magisk.apk and install it

Bring in some way also the files of MagishHidePropsConf and SafetyNetFix (download folder?)

Download from the PlayStore any terminal (like Termux)

Delete the TWRP folder from the SD card. It's empty.

Open magisk and enable Zygisk (Settings > Zygisk)

Reboot

Reopen magisk and enable the "Block List" (Settings > Block List, under Zygisk)

Go to modules and to "Install From Device"

Select the MagiskHidePropsConf

Wait the installation.

Reboot

Open your terminal and type su -c props

Grant Root Access

Select the "Force Basic Attestation" from the menu

Change the value of the phone (for me it worked with OnePlust 6T)

Select first the brand then the phone

The list is long, you can try your own!

Edit: this is probably conflicting, as Pixel Experience ROM maybe need a Pixel Phone signature. My advice? Try a Pixel, not the OnePlus.

Accept the changes and reboot

Pray

Open magisk and go to modules and to "Install From Device"

Select the SafetyNetFix: remeber, ZYGISK version, not the RIRU one!!!

Install it. Reboot

Pray

Remember to go into Magisk and BLOCK every Google Service or app that will gonna check for ROOT.

Congrats! If your phone survived you have your Pixel Experience, Rooted and with SafetyNet attestation.

Drawbacks? In my case my phone is recognized as OnePlus 6T. Who cares ¯\_(ツ)_/¯

Pros? I can have my McNuggets!

For checking I used the McDonald's app and the SafetyNet Device Check from SebastanG from PlayStore.

4. Bug / Glitches

My notification bar is stuck in an always-night mode, even if my all preferences are on light/day mode. Yes I checked the MessageApp bug, but it's all set to day/light. (check screenshot).