[AOSP 10.0_r40][all-in-one] microG ufOfficial (cve Aug, 2020) arm32/64 - Treble-Enabled Device Development A/AB ROMS

[10.0_r40/v222] download : https://androidfilehost.com/?a=show&w=files&flid=286761​All-in-one: "Regular" #phhusson Quack AOSP 10.0 vanilla build with microG patches, embedded #su /system, and multiple foss apps:
(/system partition requires: [arm64:>1.9Gb] [arm32:>1.3Gb] minimum)​
official microG: GmsCore(mapbox) GoogleServicesFramework DroidGuard
addons: NominatimGeocoderBackend DejaVuBackend IchnaeaNlpBackend LocalWifiNlpBackend openbmapRadiocellsOrg LocalGsmNlpBackend
hot-built: emailExchange2 snapMusic calendarEtar Terminal screenRecorder testDevCamera Calculator
prebuilt: Fdroid F-DroidPrivilegedExtension browserQuarks ZxingClient kDI Superuser BromiteWebview NeoLinker
system/bin* : aapt32 grep64(pcre2grep version 10.22 2016-07-29)
Also included are these non-foss 3 Google : Playstore, Calendar/Contact_Sync; like phh-Superuser apk, they are disabled by default, and can be activated via Settings/Apps.
Click to expand...
Click to collapse
not included: Latest compatible Google Maps 9.84.2 optional https://androidfilehost.com/?fid=11410963190603886579​
Extra(s): Nfc and Cafeine tiles, basic photoEditor*, experimental WakelockBlocker via Settings/{}DevOptions <USE WITH CAUTION>.
Nota: android Webview v87 is signed & upgradable from Bromite, Terminal is activated via Settings/System/Advanced/DeveloperOptions and Playstore has to be ForceStop-ed once after registration/wizard, and relaunch. F-Droid V.102.3 auto-update needs FDroid/Settings/ExpertMode/Privileged disabled.
After first rom flash and MicroG prim-initialization, for immediate working location, toggle /Settings /Security&Location /Location off&on. Switching between vtm & mapbox can need wipe for apk cache & account re-creation.
All included prebuilds are fdroid signed editions.
donations: Consider prim-origin @phhusson @MaR-V-iN @csagan5(Bromite)
others : @ale5000 @Setialpha #ThibG(DroidGuard)
+info for microG implementation https://forum.xda-developers.com/android/development/microg-unofficial-installer-t3432360
If you need more, please let me know about it, but for more "Google": just switch to phhusson "gapps" flavour...

Bugs reporting
ufOfficial rom includes static & passive app kDI (KalturaDeviceInfo) to list all your device specs (treble, widevine...) in a json, and can help you with GSFid or others info(s). This app doesn't connect to internet, and the json (~Android/data/com.oF2pks.kalturadeviceinfo/files/) should not include any private data or ids; it's up to you to share or not.
If you encounter major AOSP "hardware (not software)" related bugs, please switch to #phhusson vanilla v___ edition and help him with proper focused hardware logs. For Camera2 missing features, take time to check OpenCamera first, aosp DevCamera "sample stub" is included for testing purpose : autofocus... ; full cam specs are also in KalturaDeviceInfo (per each "physical" cam).
Click to expand...
Click to collapse
(Specific Redmi Note 9 Pro overlay_joyeuse & props_ curtana/joyeuse are added)
(Huawei/msm8937 Moto/G7Play Razer/cheryl Sony/XZ3 Realme/X2Pro overlays are switched to aosp FusedLocation)
swappiness =28 & dirty_writeback_centisecs =1500: check #suKAdiutor for other tweaks.
For Treble with root, you can do some tests modifying specifically,
/system/bin/rw-system.sh to change some features on post-fs:
https://github.com/phhusson/device_phh_treble/blob/android-10.0/vndk.rc#L1
check also phh-on-boot.sh & phh-on-data.sh​
hot-built links :
Code:
[SIZE="1"]<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="los" fetch="https://github.com/LineageOS/" />
<remote name="of2" fetch="https://gitlab.com/oF2pks/" />
<remote name="qcom" fetch="https://source.codeaurora.org/" />
<remote name="aos" fetch="https://android.googlesource.com/"/>
<project path="packages/apps/ExactCalculator" name="platform/packages/apps/ExactCalculator" remote="aos" revision="master"/>
<project path="packages/apps/Recorder" name="android_packages_apps_Recorder" remote="los" revision="lineage-17.1" />
<project path="packages/apps/Jelly" name="jelly" remote="of2" revision="jQuarksMore" />
<project path="packages/apps/SnapdragonMusic" name="quic/la/platform/packages/apps/SnapdragonMusic" remote="qcom" revision="android_ui.lnx.4.0.r24-rel" />
<project path="packages/apps/Exchange" name="external/gigabyte/platform/packages/apps/Exchange" remote="qcom" revision="caf/LA.UM.7.7.c25" />
<remove-project name="platform/packages/apps/Calendar" />
<project path="packages/apps/Etar" name="android_packages_apps_Etar" remote="los" revision="lineage-17.1" />
<remove-project name="platform/packages/apps/Terminal" />
<project path="packages/apps/Terminal" name="android_packages_apps_Terminal" remote="los" revision="lineage-17.1" />
</manifest>
[/SIZE]
- Bromite latest webView v84, upgradable via F-Droid repo https://fdroid.bromite.org/fdroid/repo
- Optimized browser Quarks ( adBlocker, offline reading mht , print/pdf , share/clipboard target ...) https://gitlab.com/oF2pks/jelly/commits/jQuarksMore. Conversely to embedded WebViewShell, Quarks don't allow permissions for Camera & Microphone capture (WebRTC)
Attached State_Changes___.zip if for rom devs only

Thanks. will definitely see how it works on razer phone 2

Working super great here on OnePlus6 (enchilada), but I noticed a bug with the fingerprint sensor: working fine right after 1st boot, but not anymore after some times (I don't exactly know how to reproduce). Anyone is experiencing the same?
Edit: after a data wipe, fingerprint sensor is working fine during 1st boot but stops working right after any reboot without any modifications to system settings or app installed.
Edit2: it is actually a Quack Phh-Treble issue, confirmed on system-quack-arm64-ab-floss.img .
Edit3: Possible temporary workaround waiting for a real fix: https://github.com/phhusson/treble_experimentations/issues/1432#issuecomment-675568932

@oF2pks is the org.openbmap.unifiedNlpProvider package deprecated and thus can be disabled without any trouble for microG location backend to work?
That's what I think but I would like a confirmation.
Edit: found a confirmation here
https://github.com/FriendlyNeighborhoodShane/MinMicroG_releases/releases
Replaced abandoned FDroid GSM NLP backend with releases from @ploink
Click to expand...
Click to collapse
Thanks for the work, those prebuilds are handful
Everything is running fine here.

there's a problem with google maps download from androidfilehost:
Code:
ava6.androidfilehost.com sent an invalid response.
ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION
any chance of a mirror?
edit: nevermind, I've found it

How do I update to more recent build of MicroG GMS Core, for example the one released today?

New home build of GmsCore uploaded in post#1
pvdeejay said:
How do I update to more recent build of MicroG GMS Core, for example the one released today?
Click to expand...
Click to collapse
Due to missing official #MaR-V-iN mapbox.key for extensive use of microG (https://github.com/microg/android_pa...re/issues/1155), I will not maintain home build of 3x microG components, and switch next @phhusson aosp10 (if any ?) to official #MaR-V-iN 3x apk.
( @pvdeejay ) , if you have twrp on your device, I already suggest trying #Setialpha packages with official #MaR-V-iN releases https://forum.xda-developers.com/apps/magisk/module-nanomod-5-0-20170405-microg-t3584928.
Even with a future aosp10 GSi; since I'm using anticipated PlayServices variants to v20.99.99, this will need manual (root #su) cleaning of /data/data/* for all 3 microG apks https://forum.xda-developers.com/showpost.php?p=83540735&postcount=37 or a complete re-install (fastboot erase).

hmm, this is tricky as I have device with no TWRP xiaomi redmi 9 code name galahad.
So I guess I need to tweak the image with new apks and reflash using fastboot. Am I right?

pvdeejay said:
hmm, this is tricky as I have device with no TWRP xiaomi redmi 9 code name galahad.
So I guess I need to tweak the image with new apks and reflash using fastboot. Am I right?
Click to expand...
Click to collapse
For now, use my recent attached. I don't believe a GSi can be tweaked easily. If @phhusson don't update aosp10 anymore (r45 is still on cve Aug 2020 and r46/47 are unfinished by Google), I will re-upload aosp10.0_r40 with official #MaR-V-iN 3x apks, but that would need fastboot erase (or root:#su file manager on /data/data/*).

I'm sorry, I'm getting 404 error on the latest microg upload no matter if I click in the first post or the latest one.
Should I just wait or can you do something about it please?

pvdeejay said:
I'm sorry, I'm getting 404 error on the latest microg upload no matter if I click in the first post or the latest one.
Click to expand...
Click to collapse
AFH link : https://androidfilehost.com/?fid=10763459528675570052
Even I did uploaded it myself on xda , I've same 404E ( @svetius ?). Guess something is wrong with mirrors ( or new xda changes) ?

I am coming back to this after a while.
I don't seem to be able to get google maps work. it always crashes when started.
I have only installed this as an app update and I don't managed to add it as a system app. Might that be a problem?

Latest GmsCore uploaded in post #1 2020-11-19 commits: https://forum.xda-developers.com/attachment.php?attachmentid=5138863&d=1605887888
pvdeejay said:
I am coming back to this after a while.
I don't seem to be able to get google maps work. it always crashes when started.
I have only installed this as an app update and I don't managed to add it as a system app. Might that be a problem?
Click to expand...
Click to collapse
Seems the issue is about cronet JAVA NIO ByteBuffers ; check https://github.com/microg/GmsCore/issues?q=cronet . Latest @MaR-V-iN don't solve it (this issue is not on Webview implementation).

Final(?) release.
Due to missing official #MaR-V-iN mapbox.key for extensive use of microG (https://github.com/microg/GmsCore/issues/1155):
aosp10.0_r40 with official #MaR-V-iN 3x apks is re-uploaded
https://androidfilehost.com/?a=show&w=files&flid=286761​{_Names} = {_Apks}
- DroidGuard = org.microg.gms.droidguard
- GoogleServicesFramework = com.google.android.gsf
- GmsCore = com.google.android.gms
(Because of anticipated to v20.99.99 PlayServicesvariants),
TO UPGRADE from previous rom, you need to imperatively apply following steps:
Remove Google account(s) via Settings/Accounts
Uninstall any update via Settings/Apps/3x_apks (microG_Services_Core)
Clear storage via Settings/Apps for 3x_apks
root:#su with GhostCommander (or other or TWRP) to delete 3x_apks for: /data/data/3x_apks
fastboot flash system10.img and reboot
Click to expand...
Click to collapse
I also switch hot-built jQuarks browser to latest F-Droid signed jQuarks (upgradable) edition: be sure to save your possible *.mht archives prior to fastboot flash system.
pvdeejay said:
How do I update to more recent build of MicroG GMS Core, for example the one released today?
Click to expand...
Click to collapse
Once updated, use F-Droid repo or straight https://microg.org/download.html to update microG 3x_apks.

Hello,
I have issues migrating to the microg.org compatible build.
I have no uninstall option for microg gms core so I have only wiped the data and flashed the updated system image.
After rebooting I can see no packages with compatible signature when looking at microg version in f-droid.
So I have manually tried to remove everything related to GMS under /data and /data/app using su and rm over adb.
But still when reflashing and rebooting I do have this.
How would I go about fixing it?
gsf proxy and microg guard helper are both okay as I had no updates to them installed.
Edit:
Granted signature spoofing through Settings -> Apps -> MicroG GMS Core.
However I still have two permissions missing: receive SMS and background location.
When I tap them on the self check activity nothing changes. I can't enable them from the Settings -> apps...
And still F-Droid can find no compatible versions so I suspect I have semi broken install here.
Edit:
I've downloaded latest apk from microg.org and installed it on the top of what I have so far and it sorted it-self meaning that device registration, FCM and unified NLP are all working great. F-droid now correctly shows compatible versions and I expect that it will be able to install updates in the future.
What I have noticed is that I have only few apps that were able to reregister FCM token after this upgrade dance. A lot of apps are still waiting for push messages with the old token e.g. Microsoft Teams, Viber, Element (former riot.im), Revolut, George (Die Ertzte banking) and more. I am looking for a way on how to invalidate their FCM tokens and force these apps to register for push messages again other than clearing their data and logging in and / or setting up them from scratch.
Is there a way around this?
Thanks and greetings
Peter

It appears I can't edit my previous post...
Okay, figured the last bit of the puzzle and now I'm happy with the migration.
Please note that this rom is prerooted thus I fired up ADB and poked a bit with shared preference storage related to the apps I wished to force refreshing their FCM tokens.
I ended up deleting files related to GMS, FCM, firebase and similar such as these....
FirebaseAppHeartBeat.xml
com.google.android.gms.appid.xml
com.google.android.gms.measurement.prefs.xml
com.google.firebase.crashlytics.xml
com.appboy.push_registration.xml
com.appboy.storage.user_cache.push_token_store.37a6259cc0c1dae299a7866489dff0bd.
This is not straight forward, but it's easily done with a bit of common sense.
Out of 10 apps I had to reinstall only one of them.
Also I have discovered in the process that some apps may refresh their FCM token on upgrade as this has happened to me with one of those 10 apps.

pvdeejay said:
However I still have two permissions missing: receive SMS and background location.
When I tap them on the self check activity nothing changes. I can't enable them from the Settings -> apps...
Click to expand...
Click to collapse
These bugs seem fixed in today GmsCore v0.2.15.204713 .
I"ll build android11 soon and check whether it can be flash straight over android10 without any loss.

oF2pks said:
These bugs seem fixed in today GmsCore v0.2.15.204713 .
I"ll build android11 soon and check whether it can be flash straight over android10 without any loss.
Click to expand...
Click to collapse

table tap to wake dont work. viber that had problems with many custom roms, works ok

Related

[ROM][N5] AlmostVanillaAOSP [6.0.1_r81-MOI10E] - 20171004

AlmostVanillaAOSP Marshmallow 6.0.1_81 [MOI10E] ROM for the Nexus 5
Description
An "almost vanilla" AOSP-based Marshmallow ROM for the Nexus 5.
Disclaimer
I am not responsible for anything that happens to your device. By downloading and flashing or installing these zips, you automatically agree that I won't be held liable for anything that happens to your phone.
Background
AlmostVanillaAOSP is an AOSP-based ROM directly using Google's source code with a few functional modifications; these modifications are fully-sourced and easily-installed prior to building the ROM. Included modifications are designed to fix bugs, enhance security, and improve "in the field" function.
Many users prefer a "vanilla" version of AOSP, without added factory bloat and proprietary software; a basic version of AOSP is a great building block to create a custom-featured ROM, or it can be left as-is by users desiring to live outside Google's realm.
Users shouldn't see any visual or functional difference between this ROM and a vanilla AOSP build; all changes are "under the hood". Please note that there has been no attempt to remove functionality or user choice with this ROM.
If you're looking for a 100% pure AOSP ROM, please install BreckZeBoulay's UntouchedAOSP ROM IN THIS THREAD
Included Modifications
Enabled the Doze option: Google's Doze option (built-into the AOSP code base), is a set of rules that puts an idle phone to sleep, reducing battery drain. For Doze to work, you have to have Google Play Services (GApps) installed. If you don't have Play Services installed, nothing happens and the phone still works fine. For more details on Doze, read HERE.
Option to add Google's current WebView: The WebView included with AOSP Marshmallow is locked-in at version 52, and the only way it will get updated is by installing a later ROM. With the stock AOSP code, users have no option to upgrade to a newer version; trying to upgrade results in browser crashes and instability. This "fix" allows installing the "Android System WebView" from the Play Store (currently at version 58); the Play Store version is kept current by Google. If you choose not to install the Play Store WebView version, the included version works fine, although at an increased security risk due to not having updates. DO NOT REMOVE THE INCLUDED WEBVIEW VERSION! Keep the original version that's located in /system/app, if you install another version; it's not "bloat". The Play Store Android System WebView can be found HERE.
Addition of Sony's suggested (and disapproved) Power Menu reboot option: Sony made attempts to add a reboot option to the Power Menu in the AOSP code; their efforts were rejected. However, Sony generously posted the code changes needed to enable this option, and they are included in this ROM. An interesting read on Sony's attempts can be found HERE. For details on implementing this feature post-install, please read the "Implementing Reboot" section below.
Removal of broken AOSP applications (Browser, Calendar, Email, and Exchange): AOSP Browser, AOSP Calendar, and AOSP Email (and by extension, AOSP Exchange) are hopelessly broken. I refuse to put broken applications in a ROM, even for "completeness". The good news is that Lightning Browser, Etar Calendar, and K9 Mail are open source and even better than the originals. Look in the "Suggested Open Source Applications" section below for links to these apps.
Removal of LiveWallpapers: The LiveWallpaper bloat has been removed from the ROM. The LiveWallpaperPicker app remains, so the functionality is still there. They're something that few people (if any) actually use.
Updated Launcher Icons to Material theme: The Material Dialer Icon is usually the first item folks ask for in AOSP ROMs. The Calendar, Dialer, and Gallery launcher icons were borrowed from the Cyanogenmod Github. The QuickSearchBox and Music launcher icons were modified from the icon set provided by Rammist on this WEBSITE. No other changes were made to the apps other than their launcher icons.
Added Option to Utilize UnifiedNlp Location: UnifiedNlp is a FLOSS (Free/Libre and Open Source Software) Wi-Fi- and cell-tower-based geolocation tool for Android by MaR-V-iN. His XDA thread can be found HERE. All that's been done is the addition of a single entry (org.microg.nlp) during build to the list of the ROM's network location services. Users who don't add the UnifiedNlp app will see no change or function with the ROM. For details on implementing UnifiedNlp with this ROM, please review Post #2 in this thread.
Sources and Source Patches
Source tree:
Code:
https://android.googlesource.com/platform/manifest -b android-6.0.1_r81
Nexus 5 (GSM/LTE) binaries for Android 6.0.1 (M4B30Z):
Code:
https://developers.google.com/android/drivers
Source Patches Used for ROM Build:
Bloat
Broken
Dialer-Gallery2-Calendar-Search-Music - Launcher Icons
Doze
Reboot Icons <- Required for the Reboot patch
Reboot
WebView
UnifiedNlp
Patch Installation Prior to Building ROM:
Put patch(es) in the AOSP build folder. This is how the patches and icon images were installed:
Code:
patch -p0 < M4B30X_Reboot.patch
patch -p0 < M4B30X_WebView.patch
patch -p0 < M4B30X_Doze.patch
patch -p0 < M4B30X_Bloat.patch
patch -p0 < MOB31T_Broken.patch
patch -p0 < MOB31T_UnifiedNlp.patch
unzip M4B30X_Reboot_Icons.zip
unzip M4B30X_Dialer-Gallery2-Calendar-Search-Music_Icons.zip
find . \( -name \*.orig -o -name \*.rej \) -delete
NOTE on ".rej" and ".orig" generated files:
Patches that succeed but have ***ANY*** issue generate additional ".orig" files in the same folders as the original files.
Patches that fail generate a ".rej" extension file in the same folder as the original file. A failed patch must be investigated before proceeding further.
For example:
Code:
frameworks/base/core/res/res/values/config.xml
frameworks/base/core/res/res/values/symbols.xml
Both of the above files are modified by two or more patch files. An initial patch will work fine, but subsequent patches are noted with notices like "Hunk #1 succeeded at 306 (offset 1 line)". The patch applied fine, but the patch command is notifying you that when it went to apply the patch, the lines weren't where they were originally expected to be (shifted down XX number of lines). As long as the patch didn't fail with output like "Hunk #1 FAILED at 58.", you're good. However, even though the patch was successful, it still generates a "config.xml.orig" or a "symbols.xml.orig" file when there is a conflict.
Now the problem: those ".xml.rej" and ".xml.orig" files, despite having incorrect endings and not being actual ".xml" files, are treated during build as valid .xml files. Since the config.xml.orig and config.xml file are in the same folder and almost identical, the build will fail as it's seeing the duplication. AOSP appears to parse all files in certain folders, regardless of extension.
The following command will eliminate those ".orig" and ".rej" files, should they appear:
Code:
find . \( -name \*.orig -o -name \*.rej \) -delete
To revert installed patches, with the patches in the AOSP build folder:
Execute the following commands:
Code:
patch -p0 -R < M4B30X_WebView.patch
patch -p0 -R < M4B30X_Reboot.patch
patch -p0 -R < M4B30X_Doze.patch
patch -p0 -R < M4B30X_Bloat.patch
patch -p0 -R < MOB31T_Broken.patch
patch -p0 -R < MOB31T_UnifiedNlp.patch
find . \( -name \*.orig -o -name \*.rej \) -delete
NOTE: any icon images you've unzipped can't be reverted.
Known Bugs
None yet.
GPL
The kernel included with this ROM was pulled directly from the AOSP source tree. No modifications have been made to any of the kernel sources or the kernel itself.
For the source tree for the AOSP-supplied kernel, please check HERE.
The GPL v2 license can be found HERE.
AlmostVanillaAOSP ROM Download
LATEST: AndroidFileHost | Mediafire
AlmostVanillaAOSP[6.0.1_r81-MOI10E]Hammerhead-20171004.zip
SHA256: 7fcdb2dd0e349b1b99eefc55f9e49b0fd07c9e2ad1054848840019a88434c2b5
OLDER RELEASES can be found here: AndroidFileHost
AOSP Changelogs - Does not include AlmostVanilla changes.
Generated using the following bash script:
Code:
#!/bin/bash
#
#
#
repo forall -c '
if git rev-parse android-6.0.1_r79 >/dev/null 2>&1
then
git log --oneline --no-merges android-6.0.1_r79..android-6.0.1_r80
else
git log --oneline --no-merges android-6.0.1_r80
fi
' | cat
android-6.0.1_r79 to r80
Add-on Downloads - In TWRP-flashable format.
Radio/Modem Download, Version M4B30X_M8974A-2.0.50.2.30: AndroidFileHost | Mediafire
- The current modem-radio for the N5 is M8974A-2.0.50.2.30, from the M4B30X ROM.
Video Green Line Fix, Version 6.0.1_r77-M4B30Z: AndroidFileHost | Mediafire
- Fixes the green line along the edge of video frames.
- Pulled from the latest factory N5 ROM, M4B30Z_6.0.1_r77.
Qualcomm Time Service Fix, Version 6.0.1: AndroidFileHost | Mediafire | Older Versions
- Fixes the date and time resetting on successive boots.
UnifiedNlp(GAPPS), Version 1.6.8: AndroidFileHost | Mediafire
- A flashable version of UnifiedNlp(GAPPS) that installs to /system. Only for AlmostVanillaAOSP[6.0.1_r79-MOB31T]Hammerhead-20170418.zip or later versions WITH built-in UnifiedNlp support.
- For details on implementing UnifiedNlp with this ROM, please review Post #2 in this thread.
N5 Boot Animations: This THREAD has an assortment of N5 flashable and tested bootanimations.
Debloating Tools: Look at this thread THREAD for debloating scripts to eliminate unwanted or redundant applications.
Wallpapers
AOSP doesn't include any wallpapers for the Launcher/Home Screen. To help beautify your N5, I've included some links to stock Android and Nitrogen OS wallpaper in Post #3.
Installation
PLEASE ASK QUESTIONS IF YOU HAVE THEM!
General ROM & GApps Install Procedure:
--------
PREPARATION:
1. Flash current factory ROM via PC (to get current modem radio)
2. Install TWRP via adb
3. Create empty GApps text files as per directions HERE
4. Copy ROM, empty text files, and install items to phone from PC
FLASH & INSTALL:
1. Boot to TWRP
2. Reboot to recovery (TWRP) from within TWRP
3. Wipe everything but internal storage
4. Flash the ROM
5. Flash a bootanimation, TimeService, Green line fix
6. Reboot to System
7. Configure Time, WiFi, APN, Reboot Menu
8. Reboot to TWRP
9. Flash GApps (Delta GApps MM PROCEDURE
10. Reboot to System
11. Set permissions for GApps (Contacts, Play Store, Google Play Services)
12. Reboot back to System
13. Setup Google Account
14. Install Play Store Apps
15. Install APKs manually
16. Reboot to TWRP
17. Run debloat script.
18. Reboot to TWRP
19. Flash UnifiedNlp app
20. Install SuperUser (PHH's is fine)
21. Reboot to System.
22. Done
#6, rebooting to System BEFORE flashing GApps, is VERY important.
GOOD LUCK!
Screen Shots
{
"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"
}
FAQ
Q: How can I verify the running WebView version of my ROM?
A: Use HTML5test WebView from HERE.
Q: Does Doze work in this build?
A: Yes. You'll need GApps installed for it to work properly. You do not have to enable anything; it is active by default.
Q: How can I check and see if Doze is enabled on this ROM?
A: Download and install the APK from this THREAD.
Q: My date and time keeps resetting on successive boots?
A: Solution is to install the Qualcomm TimeService app (a proprietary application) - the 6.0.1 version is available HERE
Q: Can I use this ROM with Android Pay?
A: No. Only approved factory ROMs from Google can use Android Pay. If you want Android Pay on the Nexus 5, install a Marshmallow factory image.
Q: Where can I get the Marshmallow bootanimation? I'm only seeing the AOSP default framework bootanimation.
A: Try Post #1 in this Boot Animation Collection.
Q: Where can I find your build tree?
A: There is no build tree for this ROM, other than the full source code as provided by Google. Any modifications to this source code are noted under "Patches".
Q: Can you add new features to this ROM?
A: The goals of this ROM are a stock AOSP feel and security. "Features" other than bug-fixes and security enhancements aren't a priority and probably won't be added.
Q: Which GApps are recommended?
A: Deltadroid's GApps are highly recommended using this installation PROCEDURE
Q: How do I install GApps?
A: A general procedure to install ROM with GApps:
Don't flash the ROM together with GApps in the same ZIP queue because this will cause the Installation Wizard to run on first boot. Due to Google Play permissions errors the Wizard will keep crashing and you won't be able to bypass this. Solution:
1. Boot to TWRP
2. Reboot to recovery (TWRP) from within TWRP
3. Wipe everything but storage
4. Flash the ROM
5. Flash a bootanimation, TimeService, Green line fix
6. Reboot to System
7. Configure Time, WiFi, APN, Reboot Menu
8. Reboot to TWRP
9. Flash GApps
10. Reboot to System (Yes, you'll probably get Play Services "FC" messages until you perform #11, below)
11. Immediately toggle application permissions to "ON" under "Settings -> Apps -> ... -> System show" for:
Code:
- Google Contacts Sync
- Google Play Services
- Google Play Store
12. Reboot back to System
13. Setup Google Account via "Settings -> Accounts -> Add account -> Google"
14. Install Play Store Apps
15. Install APKs manually
16. Reboot to TWRP
17. Run debloat script.
18. Reboot to TWRP
19. Install SuperUser (PHH's is fine)
20. Reboot to System.
21. Done
Q: My Google Play Store / Google Play Services / Apps keep crashing?
A: This is a permissions issue. Please read the "Which GApps are recommended?" answer above.
You can try System Settings > Apps (top right menu button) > Show System,
and set the following to resolve most crashes:
Google Contacts Sync > Contacts permission
Google Play Services > All permissions
Google Play Store > All permissions
Q: Can you patch the ROM to deal directly with the GApps permissions issue?
A: No. It's a security policies issue, and there's no desire to override those policies.
Q: Where is the System Tuner UI?
A: Enable Developer Options (under "About Phone", tap "Build Number" seven times), then long-press the settings icon in the notification shade/bar.
Q: How do I get root?
A: PHH's SuperUser is highly recommended. Install the SuperUser APK (F-Droid or Play Store), then flash the superuser.zip from HERE. It works flawlessly, and it's open source.
Q: Can I use this ROM with MultiROM?
A: UntouchedAOSP users were successful with MultiROM. AlmostVanillaAOSP should work equally-well.
Q: AOSP Calendar (and Etar Calendar) won't sync with my on-line Google calendar. How can I make syncing work?
A: Flash the Google Calendar Sync addon for 6.0.0+ add-on from this THREAD, located under "Additional Kitkat, Lollipop, Marshmallow, and Nougat gapps addons". Ensure that permissions are granted in Settings -> Apps for "Google Calendar Sync". You'll need to enable "Show system" under the ". . ." in the upper right of the Apps window,
Q: I get a green line on one side of the frames when recording video. How can I fix this?
A: Go to the "Add-on Downloads" section in this post and get the "Video Green Line Fix" download.
Q: I'm having issues with Location and certain apps (Chronus, f.lux, Google Fit, etc.). How can I fix this?
A: This isn't a ROM issue; it's an AOSP issue. Review POST #2 in this AlmostVanillaAOSP thread for a solution using UnifiedNlp. For a long, detailed answer, look at Mar-v-in's initial response in this GITHUB POST. Hopefully the following will be a short-enough summary:
Google started with an open Location API that was used for AOSP and Google's factory ROMs.
Google created a new Play Services Location API that isn't included is AOSP code and it's only included in factory ROMs.
Google recommends that developers use the newer, closed API version.
Despite the fact that there are few differences between the old and new API, some developers are migrating solely to the new, stranding AOSP users.
Possible solutions for those AOSP users not having access to the new Location API:
Use the solution in POST #2 of this thread.
Forget about custom ROMs, only install factory ROMs (yeah, right!).
Only use and support apps that use the open Location API (all of the applications listed in post #1 of this thread -- requiring Location -- under "Suggested Open Source Applications" support the older Open Location API).
Ask developers if they're willing to modify their applications to fall-back to the open API if the Google one isn't available, or just use the open API.
For other AOSP ROMs, use the procedure as outlined by @alessio89g in this POST
Q: How about a Nougat ROM?
A: Until things stablize on the development front, no. There are driver issues for Nougat on the N5 that have yet to be resolved. It was hoped that there'd be a very vanilla Nougat N5 build, with very detailed modifications of the source tree; documented changes seem to be all over the place, with developers more focused on "features" than straightforward builds. There is a "CleanAOSP" Nougat ROM, but I don't know much about it.
Implementing Reboot
Activate Developer Options: Go to "Settings -> About phone", scroll-down to "Build number", and tap it seven (7) times (first image).
Activate System UI Tuner: Swipe the top of the screen twice, until you get the below image. Long-press the gear icon. When you let go, a wrench icon appears (second image).
Go to "Settings -> System UI Tuner", toggle "Show restart in global actions menu":
Go to "Settings -> Developer options", scroll down and verify "Restart shortcut" is toggled:
NOTE:
"Developer options -> Restart shortcut" and
"System UI Tuner -> Show restart in global actions menu"
are tied together; toggling one automatically toggles the other.
Either method will activate the Reboot menu.
Suggested Open Source Applications
AdAway (requires root) - XDA
Add to Calendar - F-Droid
Amaze File Manager (root capable) - F-Droid | Play Store
AnySoft Keyboard - F-Droid | Play Store
Barcode Scanner - F-Droid | Play Store
Battery Widget - F-Droid | Play Store
Calendar Widget - F-Droid | Play Store
Etar Calendar- F-Droid | Play Store
Flym News Reader - F-Droid | Play Store
Forecastie (uses Open Location API) - F-Droid | Play Store
K9 Mail - F-Droid | Play Store
Lightning Browser - F-Droid | Play Store
Mathdroid - F-Droid | Play Store
MuPDF - F-Droid | Play Store
No-Frills CPU Control (requires root) - F-Droid | Play Store
Open Camera - F-Droid | Play Store
QK SMS - F-Droid | Play Store
QuickDic - F-Droid | Play Store
Simple Gallery - F-Droid | Play Store
SMS Backup+ - F-Droid | Play Store
Solitare CG - F-Droid | Play Store
Turbo Editor - F-Droid | Play Store
Vanilla Music - F-Droid | Play Store
VLC (ARMv7) - FTP | FTP-testing | Play Store
Thanks:
@BreckZeBoulay - for inspiration, guidance, keeping up the good fight, and teaching me how to build a ROM
@Deltadroid - for an awesome GApps package, and listening to users
@MattDN93 - for listening to users and being a cheerleader
@Scott - for his incredible walkthrough in this THREAD
Using UnifiedNlp(GAPPS) with AlmostVanillaAOSP:
What is UnifiedNlp(GAPPS)?
The UnifiedNlp(GAPPS) tool (application) works WITH an installed version of Google's GApps to enhance Location capabilities on AOSP ROMs; the XDA thread for this tool can be found HERE.
Why do we need UnifiedNlp(GAPPS)?
Developer MaR-V-iN provides a detailed response in his initial reply to this GITHUB POST. The short version is:
Google started with an open Location API that was used for AOSP and Google's factory ROMs.
Google created a new Play Services Location API that isn't included in AOSP code and it's only included in factory ROMs.
Google recommends that developers use the newer, closed API version.
Despite the fact that there are few differences between the old and new APIs, some developers are migrating solely to the new API, stranding AOSP users.
Simply put, a growing list of applications (Chronus, f.lux, Google Fit, etc.) refuse to work with the older Open Location API; UnifiedNlp(GAPPS) adds functionality to get these unusable apps working on AOSP ROMs.
How does AlmostVanillaAOSP support UnifiedNlp(GAPPS)?
AlmostVanillaAOSP now includes a build patch (found in Post #1, under "Sources and Source Patches") that adds "org.microg.nlp" to the Location Services providers. It's a simple two-line addition (including one line for a comment). AlmostVanillaAOSP DOES NOT install the UnifiedNlp app; that's up to the user to decide if it's needed or wanted. A user opting to NOT install the UnifiedNlp app will see no performance or functional changes.
Notes
There is a UnifiedNlp(noGApps) version available. It's designed to work with the MicroG Services (an open substitute for Google Play Services). The directions in this post DO NOT apply to the "noGAPPS" version of this application.
Xposed: AlmostVanillaAOSP versions 20170418 and later have support for UnifiedNlp "compiled-in". There should be no need to install the UnifiedNlp Xposed module to get the app/tool to run.
The UnifiedNlp(GAPPS) tool must reside in /system, not in /data; the flashable zip will make installation much easier.
When installed properly, the UnifiedNlp(GAPPS) tool WILL NOT display under the Launcher Apps Menu; you'll find the tool listed under Settings -> Location.
Setup
1. Install AlmostVanillaAOSP[6.0.1_r79-MOB31T]-20170418, or a later ROM revision.
- Follow the suggested install process listed under "Installation" in Post #1.
2. Flash the the UnifiedNlp(GAPPS) app/tool.
- Found in Post #1, under "Add-on Downloads"
- This flashable version of UnifiedNlp is designed to work WITH GApps
3. Install your choice of UnifiedNlp "backend" APKs.
- See the "Backends" list below.
- Should be "side-loaded" via ABD or installed via file manager.
- You can install as many backends as you desire, but you should only have one active.
- The Apple, Mozilla, and OpenBMap backends are "interesting" for our purposes WITH GApps, and should be prioritized.
4. Go to System Settings --> Location:
- Ensure "Mode" is set to either "High accuracy" or "Battery saving", NOT "Device only".
- Ensure that "UnifiedNlp Settings" is listed under "Location services"
5. In System Settings --> Location --> Location services --> UnifiedNlp Settings:
- Enter "Configure location backends", add and configure desired backends.
- Return to "UnifiedNlp Settings".
- Enter "Self-Check", ensuring that all boxes are checked.
Backends
Again, the Apple, Mozilla, and OpenBMap location backends are probably best for easiest compatibility WITH GApps.
Location Backends:
Apple UnifiedNlp Backend - UnifiedNlp location provider (Apple WiFi) - F-Droid
UnifiedNlp backend that uses Apple's service to resolve wifi locations
MozillaNlpBackend - UnifiedNlp location provider (Mozilla) - F-Droid
UnifiedNlp backend that uses Mozilla Location Services to resolve locations (AKA IchnaeaNlpBackend).
OpenBmapNlpBackend - UnifiedNlp location provider (Openbmap) - F-Droid
UnifiedNlp (no GAPPS) backend that uses OpenBmap.
Address Lookup Backends:
NominatimNlpBackend - UnifiedNlp geocoding provider (MapQuest Nominatim) - F-Droid
UnifiedNlp (no GAPPS) backend that uses MapQuest's Nominatim service (based on OpenStreetMap) for geocoding.
Database Location Backends:
LocalGsmNlpBackend - UnifiedNlp location provider (local GSM database) - F-Droid
UnifiedNlp (no GAPPS) backend that uses local GSM data to resolve user location. Create a database using data from OpenCellId and/or Mozilla Location Services CSV files.
LocalWifiNlpBackend - UnifiedNlp location provider (local WiFi database) - F-Droid
UnifiedNlp (no GAPPS) backend that uses locally acquired WiFi AP data to resolve user location. Consists of two parts sharing a common database. One part passively monitors the GPS. If the GPS has acquired and has a good position accuracy, then the WiFi APs detected by the phone are stored.
Wallpapers
AOSP doesn't include any wallpapers for the Launcher/Home Screen. Here are some links to beautify your N5; all of these images will automatically scale properly on the N5:
Stock Ice Cream Sandwich - Individual files | Full ZIP - 960x853 images
wallpaper_architecture | wallpaper_bubblegum | wallpaper_canyon | wallpaper_chroma
wallpaper_escape | wallpaper_fiber | wallpaper_fidelity | wallpaper_flora
wallpaper_kepler | wallpaper_leaf | wallpaper_noir | wallpaper_outofthebox
Stock Jellybean - Individual files | Full ZIP - 1440x1280 images
wallpaper_01 | wallpaper_02 | wallpaper_03 | wallpaper_04
wallpaper_05 | wallpaper_08 | wallpaper_09 | wallpaper_10
wallpaper_11 | wallpaper_12
Stock Kitkat - Adjusted - Individual files | Full ZIP - Scaled to 1920 pixels high
default_wallpaper | wallpaper_15
wallpaper_16 | wallpaper_17 | wallpaper_19 | wallpaper_20
wallpaper_22 | wallpaper_50 | wallpaper_51
Stock Lollipop - Adjusted - Individual files | Full ZIP - Scaled to 1920 pixels high
wp_arc_001 | wp_arc_003 | wp_arc_004 | wp_geo_1243
wp_geo_1557 | wp_geo_2102 | wp_geo_2167
wp_geo_2170 | wp_geo_2278 | wp_paper_001
Stock Marshmallow - Adjusted - Individual files | Full ZIP - Scaled to 1920 pixels high
wallpaper-kleiner-google-blue | wallpaper-kleiner-google-red | wp_001
wp_002 | wp_003 | wp_004 | wp_005
wp_006 | wp_007 | wp_008
wp_009
Stock Nougat - Adjusted - Individual files | Full ZIP - Scaled to 1920 pixels high
wallpaper-001 | wallpaper-002 | wallpaper-003 | wallpaper-004
wallpaper-005
Stock Oreo - Adjusted - Individual files - Scaled to 1920 pixels high. Only one image at this time.
Nitrogen OS - Individual files | Full ZIP - 2160x1920 images downloaded from HERE - Simply stunning
nos_01 | nos_02 | nos_03 | nos_04
nos_05 | nos_06 | nos_07 | nos_08
nos_09 | nos_10 | nos_11 | nos_12
nos_13 | nos_14 | nos_15 | nos_16
nos_17 | nos_18 | nos_19 | nos_20
nos_21 | nos_22 | nos_23 | nos_24
Post #4 reserved.
Post #5 for me
Glad to see you sharing your job !
All options you propose, I do them after installation of Untouched with flashing zips and exposed. I think this rom could be my daily rom for now.
Bye bye Untouched, hello Almost ! :laugh:
And I make a suggestion !
Build a AOSP kernel with k-exec patch for MultiRom users !
May be it's a little off topic but it could be included in the Almost zip no ?!
BreckZeBoulay said:
Post #5 for me
Glad to see you sharing your job !
All options you propose, I do them after installation of Untouched with flashing zips and exposed. I think this rom could be my daily rom for now.
Bye bye Untouched, hello Almost ! :laugh:
And I make a suggestion !
Build a AOSP kernel with k-exec patch for MultiRom users !
May be it's a little off topic but it could be included in the Almost zip no ?!
Click to expand...
Click to collapse
Please keep Untouched; it needs to exist
I'm guessing that should such a kernel already exist, you've have installed it by now. For humor, I'll take a look if you can show me the patch.
What am I missing, under-the-hood-wise, from this ROM? I'm mostly concerned about security and fixing broken things.
Are there items missing from the FAQ?
@androcraze thanks for this great ROM but pls add screenshots.
Barbiox Dogg said:
@androcraze thanks for this great ROM but pls add screenshots.
Click to expand...
Click to collapse
It's Vanilla AOSP!
OK, I'll see what I can do. A screenshot of what? Apps? Desktop? What items do you think will visually give more info about this ROM?
Will this be moving up to 7.0 build soon?
cell2011 said:
Will this be moving up to 7.0 build soon?
Click to expand...
Click to collapse
Soon? No. Please read the FAQ.
EDIT: I'm hoping that I can start something with 7.0 soon, but despite building and patching things, I'm not a "coder". At this point, I'm not seeing a detailed, basic list of things required get get AOSP Nougat going on the N5. Viewing git repos (for those developers that actually bother to post changes) is a cluttered mess, without much explanation about why a commit was included.
Great job..
BreckZeBoulay said:
And I make a suggestion !
Build a AOSP kernel with k-exec patch for MultiRom users !
May be it's a little off topic but it could be included in the Almost zip no ?!
Click to expand...
Click to collapse
I see the MultiROM patch and what it's for.... Do other developers make a kernel that works with Untouched and AlmostVanilla ROMs that supports MultiROM?
Right now, building a kernel looks do-able (I used to do it under Linux, and instructions for the N5 look straightforward). I wouldn't mind adding patches to change the scheduler from cfq to deadline, and drop the CPU minimum speed; it would get rid of an app that I have to install every time to do just that.
What's the advantage of including MultiROM support with this ROM vice flashing another kernel (other than the extra flashing step)?
androcraze said:
I see the MultiROM patch and what it's for....
Do other developers make a kernel that works with Untouched and AlmostVanilla ROMs that supports MultiROM?
What's the advantage of including MultiROM support with this ROM vice flashing another kernel (other than the extra flashing step)?
Click to expand...
Click to collapse
Just for information :
http://forum.xda-developers.com/google-nexus-5/orig-development/mod-multirom-v24-t2571011
EX, Blue spark, Franco and may be others...
Just to have a stock AOSP kernel up to date.
At this time, I use EX because I need a kernel with k-exec patch and up to date.
But a stock kernel (with patch) is enough.
Anyway, it's not a priority at all.
---------- Post added at 08:32 AM ---------- Previous post was at 08:31 AM ----------
androcraze said:
OK, I'll see what I can do. A screenshot of what? Apps? Desktop? What items do you think will visually give more info about this ROM?
Click to expand...
Click to collapse
Take the screenshots of Untouched
And your paint shoped screenshots for System tuner are uglyyyyyy
BreckZeBoulay said:
Just for information :
http://forum.xda-developers.com/google-nexus-5/orig-development/mod-multirom-v24-t2571011
EX, Blue spark, Franco and may be others...
Just to have a stock AOSP kernel up to date.
At this time, I use EX because I need a kernel with k-exec patch and up to date.
But a stock kernel (with patch) is enough.
Anyway, it's not a priority at all.
---------- Post added at 08:32 AM ---------- Previous post was at 08:31 AM ----------
Take the screenshots of Untouched
And your paint shoped screenshots for System tuner are uglyyyyyy
Click to expand...
Click to collapse
I'll take a look at the MultiROM patch. If it won't affect users in any way (other than the ability to use MultiROM), then it might be worthwhile.
I like my paint-shopped images; they convey the exact message that I wanted them to I was actually more worried about the file size and image dimensions than artistry. I'll have to make newer ones when I get a chance.
I'll get some better screen shots.
androcraze said:
I'll get some better screen shots.
Click to expand...
Click to collapse
Because you are my friend of AOSP :
https://drive.google.com/file/d/0B02Btet3um2pd0tleDgyWjZ4T00/view?usp=sharing
(if you are interested )
Tell me when I can remove it.
BreckZeBoulay said:
Because you are my friend of AOSP :
https://drive.google.com/file/d/0B02Btet3um2pd0tleDgyWjZ4T00/view?usp=sharing
(if you are interested )
Tell me when I can remove it.
Click to expand...
Click to collapse
Got 'em!
Yeah, they look a LITTLE better.... Not that home-made, I-was-busy-so-I-had-my-kid-make-them feel, but I'll struggle with them.
Thanks
pls add screenshots.
tiixman said:
pls add screenshots.
Click to expand...
Click to collapse
Will do this evening. @BreckZeBoulay was kind enough to help with creating them. I just need some time back at my desktop to play.
Today's Material Icon Day!
Yes, I have some screenshots included.
Added a new build with Material icons for Dialer, Calendar, QuickSearchBox, Music, and Gallery.
What do you think?
Man, you should've mentioned your ROM restores the stock system recovery...

[ROM] LineageOS for easy microG + UnifiedNlp [Nov 2] [Nougat & Oreo]

This is LineageOS built from official sources (cm14.1 and lineage-15.0 branches), featuring two patches that allow for Signature Spoofing and Network Location providers to be used outside of /system. These two conditions allow for easy installation of microG and related-services, along with the modular location provider platform UnifiedNlp.
I also include a few other extras (see ROM Features below), and experiment with things every now and then. Suggestions are welcome!
What is microG and UnifiedNlp? microG is a free re-implementation of Google's proprietary apps and libraries. UnifiedNlp serves as a replacement to Google Location Services and helps your device find its location (more info).
Benefits of microG and UnifiedNlp:
FLOSS
Lightweight
Modular
Can run with relatively-limited permissions
Improved device performance and battery life
Lower data usage
Faster GPS locks and better location accuracy
Significantly more control over privacy
No max-brightness bug (related to Google Location Services; when you wake the screen and it goes max-bright for a short period of time)
ROM Features:
Upstream up-to-date LineageOS builds
Location Providers can be installed outside of /system (intended for UnifiedNlp and allows microG to provide that)
Can toggle Signature Spoofing on or off for applications that can use it (intended for microG and FakeStore)
Native 493 DPI (see compatibility notes below)
Steven Black's Unified Hosts File built-in (gambling and fakenews filters)
Various Tweaks
Latest Nougat Version (recommended):
2017/10/31
Latest Oreo Version (testing):
2017/11/02
Older Versions:
Google Drive Archive
Instructions:
Can be found in the 2nd post down or by clicking here
Recommendations and Tips
Can be found in the 3rd post down or by clicking here
Known Issues
Can also be found in the 3rd post down or by clicking here
Reporting Problems and Issues
I'm not too knowledgeable in Android development and likely can't help directly with most ROM, kernel, and/or hardware issues
The best advice I can give is to post issues in this thread and hope others can share a solution, and/or report the issue upstream to LineageOS developers/maintainers if applicable
Changelog:
Nougat/cm14.1 (at the bottom of the page)
Oreo/lineage-15.0 (at the bottom of the page)
LineageOS shamu Changelog
Compatibility Notes:
The latest Nougat/cm14.1 version of this ROM passes SafetyNet (last checked: 2017/10/31)
The latest Oreo/lineage-15.0 version does not pass SafetyNet (last checked: 2017/10/29)
LineageOS and the default kernel support F2FS, however, the unofficial TWRP projects that support F2FS for shamu currently don't support F2FS decryption. Unless you know what you're doing, I suggest using a custom kernel with forced-encryption disabled if you want to have Data and Cache partitions with F2FS
493 DPI is used on this ROM. The default DPI for a Nexus 6 is 560. Some apps from Play Store may not show when the DPI is not set to an expected value. Theoretically, apps acquired from F-Droid and Yalp Store (when spoofing a N6) are not affected by this, but reports about this are welcome (a quick fix is wm density 560)
Other Notes:
This ROM should work fine with GApps, but I don't test this kind of set-up. If you choose not to use microG nor go GApp-less, I recommend using Open GApps
This ROM is signed with my key and the build type is userdebug
I use this ROM daily with microG and primarily to play Pokemon GO and Ingress; I should be able to notice any SafetyNet, location, or other issues quickly but all reports are welcome!
The patches and my notes for compiling (below) should be easily adaptable for any device capable of running LineageOS, or any ROM theoretically (change the Motorola manifest for other non-moto devices or remove it and supply your own vendor blobs if applicable)
Modifications Done:
Notes for Nougat/cm14.1
Notes for Oreo/lineage-15.0
Additional Support:
microG on xda-developers
UnifiedNlp on xda-developers
microG Website
microG Wiki
Other Resources:
How this ROM is built
My Nexus 6 configuration and other notes
Reddit guide for setting up microG + UnifiedNlp
Shadow53's notes on flashable zips for microG and Play Store, Google Cal/Contact sync, and other information
Shadow53's NO GAPPS initiative
XDA:DevDB Information
LineageOS for easy microG + UnifiedNlp, ROM for the Nexus 6
Contributors
espionage724
ROM OS Version: 7.x Nougat
ROM Kernel: Linux 3.10.x
Based On: LineageOS
Version Information
Status: Nightly
Created 2017-07-06
Last Updated 2019-01-06
Instructions
Initial Instructions:
Wipe device (TWRP -> Wipe all partitions and Format Data)
Flash ROM (copy the zip over to the Internal Storage of the N6 over USB)
Format Data and Cache to F2FS (optional; need a supporting TWRP; note you cannot decrypt F2FS-encrypted partitions in TWRP currently)
Flash GApps (optional; DO NOT do this if wanting to use microG)
Flash a custom Kernel (optional)
Flash Magisk (optional)
Reboot to System
Update Instructions:
Boot to TWRP
Flash updated ROM zip
Flash custom kernel (optional; but if you've used a custom kernel before, it'll be replaced with the default LineageOS one when you update; I recommend using the same kernel or an updated version of it)
Reboot to System
Core microG + UnifiedNlp Apps Package
This will provide the microG Services Core, Services Framework Proxy, DroidGuard Helper, NominatimNlpBackend, and MozillaNlpBackend APKs for convenience (these can also be downloaded from F-Droid)
These are the core applications needed to get the most out of microG and can be installed either over adb or just manually installed one-by-one on the phone
You will still need to read the instructions below in order to get things working
F-Droid will update packages as needed; no need to worry if the date on this package appears old
Compatible with both Nougat and Oreo builds
2017/10/31
microG Application Descriptions:
microG Services Core: Core services and UnifiedNlp (required)
microG Services Framework Proxy: Google Cloud Messaging (GCM) support
microG DroidGuard Helper: SafetyNet support
UnifiedNlp Application Descriptions:
NominatimNlpBackend: Looks up location based on geo-data (required)
LocalGsmNlpBackend: Notes cellular towers you connect to and refers to a local database (created from online sources) to determine location
LocalWifiNlpBackend: Scans nearby WiFi APs, links them to GPS coordinates, and stores them in a local database to determine location
Apple UnifiedNlp: Scans nearby WiFi APs and uses Apple's database to determine location
MozillaNlpBackend: Scans nearby WiFi APs and uses Mozilla's database to determine location (less work to set-up than LocalGSM and LocalWifi)
microG + UnifiedNlp Instructions:
Install F-Droid
Enable Unstable Updates (F-Droid Settings -> Expert mode -> Unstable updates; it's currently required to install the latest unstable microG Services Core)
Add the microG repository (visit https://microg.org/download.html)
Install the following: microG Services Core, NominatimNlpBackend, location backend(s) of choice, and other microG applications of choice for additional features (see the above list)
Enable Signature Spoofing for microG Services Core (Settings -> Apps -> ⚙ -> App permissions -> Spoof package signature)
Grant all permissions available for microG Services Core and location backend(s) of choice Settings -> Apps -> (application) -> Permissions)
Open microG Settings and enable desired features (if using Google SafetyNet, you must do ⋮ -> Advanced -> Use official server)
Configure UnifiedNlp Settings (check Nominatim from address lookup backends, and check desired location backend(s) under location backends)
Verify Self-Check has confirmation on all checks (UnifiedNlp being registered in system may require a reboot to start working)
Recommended microG + UnifiedNlp Packages:
Install microG Services Core, microG Services Framework Proxy, microG DroidGuard Helper, NominatimNlpBackend, and MozillaNlpBackend
If you want to run location resolution locally, install LocalGsmNlpBackend and LocalWifiNlpBackend instead of MozillaNlpBackend, or alternatively, install all three and keep MozillaNlpBackend disabled until required
App Store Notes:
You'll likely either want Yalp Store and FakeStore, or legitimate Google Play Store
If you're trying to avoid Google services, Yalp Store + FakeStore is what you'll want
Play Store will likely be wanted if you want a higher chance at being able to use paid apps and IAP (no guarantees; untested)
Play Store needs to be installed as a privileged application to work properly, and also assigns itself high permissions
You can also choose to install Play Store and Yalp Store; note that FakeStore should not be installed at the same time as Play Store though
You can also use any other app store(s) instead of Play Store or Yalp Store or even choose to not install a store at all, but any apps you install that check if Play Store exists will need FakeStore installed still
Yalp Store Application Descriptions:
FakeStore: Fakes the existence of Google Play Store for applications that require it
Yalp Store: Allows downloading and updating of apps from Google Play Store, serves as an alternative to official Google Play Store, and if signed-in with your real Google account, allows for paid-apps to be downloaded; apps that do license checks post-install will fail, and IAP isn't possible currently
Yalp Store Instructions:
Open F-Droid
Install FakeStore and Yalp Store
Enable Signature Spoofing for FakeStore (Settings -> Apps -> ⚙ -> App permissions -> Spoof package signature)
Configure Yalp Store (⋮ -> Settings -> Pretend to be a Nexus 6; this is potentially required to avoid this)
Download desired applications
Enable only updating of applications acquired through Yalp Store (optional; sometimes versions differ from Play Store and F-Droid; ⋮ -> Settings -> Change app white list -> (select apps), and also set the Black or white list of apps for update to Only the chosen apps will be checked for updates)
Play Store Application Description:
Phonesky.apk: This is the name of the Play Store apk; allows for traditional Play Store behavior; apps that do post-install license checks and IAP are personally untested (feedback from anyone who tests this would be awesome)
Play Store Instructions:
Download the latest open_gapps-arm-7.1-pico archive (GitHub or the main site) (use 8.0 for Oreo; untested)
Extract it somewhere temporary
Go into the Core folder and find vending-all.tar.lz
Extract its contents
Go into the vending-all/240-320-480/priv-app/Phonesky folder
Take Phonesky.apk and move it somewhere temporary or just note its location
Reboot your device to Recovery
Mount /system on the Android device and use adb push to copy Phonesky.apk from local storage to /system/priv-app/Phonesky.apk
Reboot to System
Issues, Recommendations, and Tips
Known Issues (Nougat/cm14.1):
PowerHAL errors flood the log when using a custom kernel with mpdecision removed such as FrancoKernel
Known Issues (Oreo/lineage-15.0):
Cannot decrypt storage from TWRP if using Encryption
vndbinder SELinux denial and crash occurs every 5 seconds (should be fixed with 2017/11/01)
Double-tap to wake is unreliable
Security patch level is old (August 5, 2017)
Recommended Apps:
Email: K9 (incompatible with webmail encrypted providers like Tutanota and ProtonMail)
Store: F-Droid, Yalp Store
Calendar and Contacts: DAVdroid (with a self-hosted Radicale server or a provider like Posteo)
Social: AndStatus with Mastodon or GNU social (choose a server or self-host one)
Chat: Conversations (choose a XMPP server or self-host one with something like Prosody)
Browser: Firefox Klar (Klar is on F-Droid and is also known as Focus; both are the same thing)
Weather: Forecastie
Password Database: KeePassDroid
2FA: andOTP
Maps: OsmAnd~
Recommended Settings:
Developer Options -> Disable Mobile data always active (Oreo/lineage-15.0)
Oreo/lineage-15.0 Findings (2017/10/29):
AsteroidOS Sync with a LG G Watch (dory) seems to work fine
A good bit of LineageOS-specific settings are missing (no Caffeine tile, no Expanded Desktop settings, no lockscreen digit scramble)
SELinux is Enforcing by-default
Only one wallpaper is included
When previewing a Ringtone, it starts out super quiet, then goes full volume (full being whatever the Ring volume is set at)
Thanks for the support.... What are some benefits of
"microG and UnifiedNlp" and/or how is different? I read the link about Floss which is really cool.
Sent from my Nexus 6 using Tapatalk
andrewjt19 said:
Thanks for the support.... What are some benefits of
"microG and UnifiedNlp" and/or how is different? I read the link about Floss which is really cool.
Click to expand...
Click to collapse
I notice GPS locks and accuracy seem to be a bit better; I use the LocalGSM and LocalWifi backends.
I particularly like that microG doesn't require a lot of permissions. Plus since I don't entirely use a lot of Google services, I don't need to have them installed or running in the background either.
I also like the better control over location. With the local backends, my location data doesn't have to be sent off to an online server somewhere. I grab a large database for cell towers from OpenCellID and Mozilla, and that has me covered for the GSM backend. And for Wifi, I just scan for access points as I travel around and build my own database. For first-time visits, I have to rely on the GSM backend first, but for return visits, the Wifi backend should work.
And finally, it's also just kind of neat using this kind of set-up I've tried to go without GApps in the past, but ever since I started playing Pokemon GO and Ingress, I didn't like having to lose those games. Plus there was a few apps I wanted from Play Store too. But now, I can be without GApps, and also have PoGO and Ingress, and even more surprisingly, I pass SafetyNet.
New build available; changes include resync with sources, 493 DPI set (I don't believe this will be a problem outside of Play Store app compatibility; in which case, it can be set back to 560 from the Local Terminal), and the target build changed from userdebug to user.
New build: Resync, previously removed default apps are re-added, and now the ROM includes Steven Black's Unified Hosts File built-in with the gambling, fakenews, and porn filters enabled
Interesting.... I may try this out.
For those who don't know, I provide flashable zips that ease the installation process of microG and/or the Play Store. I'm actually the site linked to on that Reddit post (kinda curious who linked to me).
The microG zips should completely check all boxes in the self-check checklist EXCEPT for the one about setting up the UnifiedNlp backends. The zips come with the Mozilla location backend and the Nominatim geocoder backend, I just haven't figured out how to get them enabled yet.
Those who are stuck using Google to sync contacts/calendar have an add-on zip that can be flashed to be able to sync those. Note that, as of last testing, you may need to go into Settings > Apps and manually enable permissions on one or both sync adapters in order to get it to work.
Finally, @espionage724, if it helps any I also provide a standalone PlayStore zip for people who want to install microG as a user app. It is the patched PlayStore from NanoMod that *should* support (in-)app purchases.
Links:
My own No Gapps/microG setup guide: https://shadow53.com/no-gapps/setup-guide/
FAQ for common issues while setting up microG:
https://shadow53.com/no-gapps/faq/
Table displaying alternatives to "all" Google apps:
https://shadow53.com/no-gapps/alternatives/
And the zip installer downloads
https://shadow53.com/no-gapps/downloads/
New build (2017/07/09) available: Resync with sources, and Steven Black's host file now only uses the default lists (removed gambling, fakenews, and porn filters)
Shadow53 said:
Interesting.... I may try this out.
For those who don't know, I provide flashable zips that ease the installation process of microG and/or the Play Store. I'm actually the site linked to on that Reddit post (kinda curious who linked to me).
The microG zips should completely check all boxes in the self-check checklist EXCEPT for the one about setting up the UnifiedNlp backends. The zips come with the Mozilla location backend and the Nominatim geocoder backend, I just haven't figured out how to get them enabled yet.
Those who are stuck using Google to sync contacts/calendar have an add-on zip that can be flashed to be able to sync those. Note that, as of last testing, you may need to go into Settings > Apps and manually enable permissions on one or both sync adapters in order to get it to work.
Finally, @espionage724, if it helps any I also provide a standalone PlayStore zip for people who want to install microG as a user app. It is the patched PlayStore from NanoMod that *should* support (in-)app purchases.
Links:
My own No Gapps/microG setup guide: https://shadow53.com/no-gapps/setup-guide/
FAQ for common issues while setting up microG:
https://shadow53.com/no-gapps/faq/
Table displaying alternatives to "all" Google apps:
https://shadow53.com/no-gapps/alternatives/
And the zip installer downloads
https://shadow53.com/no-gapps/downloads/
Click to expand...
Click to collapse
Thanks for the links and information!
Last Updated 2017-07-09
The Latest Version is not found on google drive.
gmzhouh said:
Last Updated 2017-07-09
The Latest Version is not found on google drive.
Click to expand...
Click to collapse
Thanks; I thought that URL looked like it was missing a bit of text, but it loaded fine for me when I added it at the time.
Fixed the URL in the first post, and it (2017/07/09) can be found here: https://drive.google.com/file/d/0B9CekGWwY1hjMEdhYmJoeGE2TlU/view?usp=sharing
New build (2017/07/11); just a resync from sources
Do I need to use MicroG to pass Safetynet? And do I need to use f2fs?
xNotta said:
Do I need to use MicroG to pass Safetynet? And do I need to use f2fs?
Click to expand...
Click to collapse
I believe you'll need either microG (and DroidGuard) or GApps to pass SafetyNet, otherwise, apps can't check for SafetyNet compatibility (Magisk's test throws an error if I try doing the check without either).
As for F2FS; you don't have to use it. By-default, /data and /cache partitions use ext4 which works fine.
espionage724 said:
I believe you'll need either microG (and DroidGuard) or GApps to pass SafetyNet, otherwise, apps can't check for SafetyNet compatibility (Magisk's test throws an error if I try doing the check without either).
As for F2FS; you don't have to use it. By-default, /data and /cache partitions use ext4 which works fine.
Click to expand...
Click to collapse
Thank you.
I was going to use BeansGApps full to flash gapps.
So, I can just ignore all the MicroG stuff and still pass Safetynet and have a working rom that plays Pokemon go?
I'm not ready to try f2fs yet.
xNotta said:
Thank you.
I was going to use BeansGApps full to flash gapps.
So, I can just ignore all the MicroG stuff and still pass Safetynet and have a working rom that plays Pokemon go?
I'm not ready to try f2fs yet.
Click to expand...
Click to collapse
Yep you can ignore the microG stuff, flash a GApps package, and pass SafetyNet, but if this is your only objective, you can also accomplish this on most other ROMs (including official LineageOS).
On the note of Bean GApps though, unless there was an update, the June Full package is broken. You'll have to use either May's Full package, or June's Mini package. I'd probably just recommend a variant of Open GApps depending on what packages you want.
eh this is great thanks, and thanks the people with microG and UnifiedNlp too. I didn't know anything about these. This is great
I trust that this will work fine for Verizon users?
Christopher8989 said:
eh this is great thanks, and thanks the people with microG and UnifiedNlp too. I didn't know anything about these. This is great
I trust that this will work fine for Verizon users?
Click to expand...
Click to collapse
I believe it should be fine for Verizon users (at least as fine as a regular LineageOS build would be anyway), but I haven't tried it.
New build (2017/07/13): https://drive.google.com/file/d/0B9CekGWwY1hjcWlFX01sRk12MmM/view?usp=sharing
New build (2017/07/16): https://drive.google.com/file/d/0B9CekGWwY1hjYXFyX0o2QWlJRGs/view?usp=sharing
I believe upgrades will be unaffected by this, but for fresh installs, I forgot to set 493 DPI. If you want this (or any other value; replace 493), you can run the following over adb shell while booted in TWRP (can be at any point after you flash the zip but before rebooting into System):
Code:
mount '/system' && sed -i 's/'ro.sf.lcd_density=560'/'ro.sf.lcd_density=493'/g' '/system/build.prop'
Or you can do it after booting into the ROM via normal means:
Code:
wm density 493

B396_Reloaded [magisk][Xposed][microG]

Hi, i've worked on B396 stock rom , to give it more options :
- Multi user
- Call Recorder (native)
- hide navbar
- 4G icon
- 6 themes from Huawei mate10
- init.d support
- i forget ...
In aroma installer you can:
- Root systemless
- Xposed systemless
- get Viper4android systemless
- Choice No Gapps/microG/Official Gapps
- install usefull Xposed modules
- install extra apps ...
and more
CHANGELOGS:
2018/02/10 : v1.1
System Updated :
- add Twin/Clone app from huawei (read post #02 to correct use)
- add Cust support for PLK-L01 or PLK-AL10 models
Gapps Updated :
- GMS Core (services google play)
- Phonesky (Play store)
- Velvet (google now)
- Gmail2 (google mail)
- Latinime (google keyboard)
- talkback (Accessibility service)
- WebViewGoogle
Extra Updated:
- GPS_locker
- Firefox
Xposed Modules Updated:
- Pixel_NavBar
Others Updates:
- Install process (microG/Nothing) : will wipe dalvik +cache
INSTALL:
Wipe datas if comming from NOT emui ROM
Wipe Dalvik+cache if comming from emui ROM
If you want NOGAPPS or MicroG:
First: install ROM+included GAPPS, (no need to root etc ..) reboot and do the setup ...
SECOND: run Installer again (no need to flash the rom) just select your options...
MicroG users: read post #02 to set it correctly
first boot take 3mn, or 10mn with Xposed
Please update your device to B390 before install:
https://forum.xda-developers.com/honor-7/development/stock-b390-twrp-t3723635
Download :
http://www.mediafire.com/file/jdl903g69wbimqo/B396_Reloaded_Full_1.1.zip
Kernel updated to 3.10.108 (end of life)
http://www.mediafire.com/file/wgc44dx0khiafyb/Kernel_B396_reloaded_v2.1.zip/file
YOU MUST USE MAGISK v14 ONLY, another version will break GPS.
#################################################
DO NOT MIRROR MY LINK without my authorization
DO NOT POST/PUBLISH at any other place without my authorization
#################################################
microG config (it's a mess) and usage:
1/ active Xposed module to Allow signature spoofing
2/ open microG app : active google registration, then config UnifiedNLP
...reboot...
3/ create your google account
to use sync of contacts/calendar/gmail
1/ in settings/apps/calendar/authorizations : give all authorizations
2/ in settings/apps/contacts/authorizations : give authorizations (minimum: contact+phone)
3/ in settings/apps/Gmail/authorizations : give all authorizations
4/ check that synchro is activated
5/ in google account start synchro
6/ wait for sync .... can take time depend of your network speed.
Play store will get updated automatically to new version ... wait it ..
if any off theses apps don't work properly do :
1/ settings/apps/*your_app*/storage : wipe data and cache
2/ kill the app
3/ do authorization again ..
4/ restart the app
NOTE : new maps (February 2018) is not supported, use 9.67.xxx (November 2017) version insteed.
i have full workings : Playstore/Gmail/Maps,and my contacts/mails/calendar are synchronized, so i know it work
Twin/Clone app config and usage:
Setting / Twin App : On the app you want to clone:
- Actually: Whatsapp, facebook.katana, facebook.orca, Mega .
Add/remove (need root):
in system/emui/base/xml/hw_clone_app_list.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- DTS2016080802881 shiyuanchang/00271386 20160822 created -->
<AppClone>
<package name="com.whatsapp"/>
<package name="com.facebook.katana"/>
<package name="com.facebook.orca"/>
<package name="mega.privacy.android.app"/>
</AppClone>
Exemple to add Twitter and remove facebook.orca:
Install any "package name viewer" app , and use it to see package name
for Twitter it is : com.twitter.android
<!-- DTS2016080802881 shiyuanchang/00271386 20160822 created -->
<AppClone>
<package name="com.whatsapp"/>
<package name="com.facebook.katana"/>
<package name="com.twitter.android"/>
<package name="mega.privacy.android.app"/>
</AppClone>
- Save the file
- go to settings/apps and select "settings" then "storage" and wipe datas
- now your Twin/Clone app list is updated with Twitter
now I install it, I hope I do not have any problems with the signal, like MM + D EMUI 4.1 by WBT v5.0 (B371), and I hope the battery keeps more like Stock B390
ilovemuzic said:
now I install it, I hope I do not have any problems with the signal, like MM + D EMUI 4.1 by WBT v5.0 (B371), and I hope the battery keeps more like Stock B390
Click to expand...
Click to collapse
You will tell me ... For good battery life i just enable SIM data's , and disable overs options like aggregation etc ..
- What is your provider and country ?
Speedo.thc said:
You will tell me ... For good battery life i just enable SIM data's , and disable overs options like aggregation etc ..
- What is your provider and country ?
Click to expand...
Click to collapse
Telekom Romania
Hey! i've just installed it but when i have to accept "terms and condition" i can't do it any solution?
tamasigerald said:
Hey! i've just installed it but when i have to accept "terms and condition" i can't do it any solution?
Click to expand...
Click to collapse
Please update your device to B390 before install
hi
i installed this rom.first boot is ok.but when i restart phone. it stuked in boot image.what should i do?
Hi, boot logo or bootanimation ?
boot animation
Xposed doesnt seem to work. Xposed installer says 'Installed, but not active'. When trying to install systemless framework, the installer app crashes.
Am I doing something wrong here or..?
EDIT: Tried few times to reflash the rom but every time after setting up the phone, if I reboot I will be stuck in bootloop.
Hi, you are the second to tell that, I will do test after tomorrow to try my setup, right now it was ok.
hi @Speedo.thc
thank you for your new rom
this rom support kang vip setting?
Heatti said:
Xposed doesnt seem to work. Xposed installer says 'Installed, but not active'. When trying to install systemless framework, the installer app crashes.
Am I doing something wrong here or..?
EDIT: Tried few times to reflash the rom but every time after setting up the phone, if I reboot I will be stuck in bootloop.
Click to expand...
Click to collapse
You must install the version I provided in aroma installer.
levolotion said:
hi @Speedo.thc
thank you for your new rom
this rom support kang vip setting?
Click to expand...
Click to collapse
Hi, not a Kangvip based, but many things from Kang can be done with xposed and modules I've selected.
Speedo.thc said:
You must install the version I provided in aroma installer.
Click to expand...
Click to collapse
I chose the Xposed option in aroma when flashing. After flashing the rom and setting up the phone, checked the xposed app and it was already inactive from the start.
Heatti said:
I chose the Xposed option in aroma when flashing. After flashing the rom and setting up the phone, checked the xposed app and it was already inactive from the start.
Click to expand...
Click to collapse
It's active only if you flash Magisk v14 , which is inside rom installation.
By order it must be :
1: Magisk
2: Xposed
Hi speedo, nice to see that you are devoloping for our nice device. I have tested all your roms but aktual i am returned to your mmkang 3.2, running as a good daily driver. Coming from it, is it possible to flash your rom with twrp, like your other roms?
Should I delete fingerprints before flashing?
Thank you. I am very curious to test it...
For next versions, it would be nice to have a dark theme, looking like oreo or nougat...
After installation, the google maps application does not start
Hi speedo,, i leave miui for this one, could i suggest you to add smart-e (better than floating control for me), and can you tell me how you hide navbar? Thanks.

Wellbeing on Android 11

Hi all,
I'm working on a port of Android 11 (AOSP) for the OnePlus 5. The ROM works pretty well, but I'm having issues with the Google Apps. In particular, the Google Wellbeing is not working and it is crashing with the log attached when started.
I've already spent a lot of hours trying to understand why: it works fine on LineageOS but there is no particular commit for Wellbeing, and everything seems the same from a permissions point of view.
Is this the right place to ask for help?
Thanks!
It doesn't seem to be improving your wellbeing...
blackhawk said:
It doesn't seem to be improving your wellbeing...
Click to expand...
Click to collapse
It does not
Hi, I found and fixed the issue. This is the fix:
SettingsExtra: do not declare REQUEST_LISTENING as protected · roberto-sartori-gl/[email protected]
This fix Wellbeing not working on Android 11. SettingsExtra does not need this, it was a leftover from development. Signed-off-by: Roberto Sartori <[email protected]>
github.com
I didn't think a manifest from an application could break stuff in a different app, however it does (this is a system app). I didn't need that declaration, so I just removed it
robertogl said:
Hi, I found and fixed the issue. This is the fix:
SettingsExtra: do not declare REQUEST_LISTENING as protected · roberto-sartori-gl/[email protected]
This fix Wellbeing not working on Android 11. SettingsExtra does not need this, it was a leftover from development. Signed-off-by: Roberto Sartori <[email protected]>
github.com
I didn't think a manifest from an application could break stuff in a different app, however it does (this is a system app). I didn't need that declaration, so I just removed it
Click to expand...
Click to collapse
It was one of the first apps I deep sixed on my 10+... fixed

[Guide] Getting MicroG K20Pro/Mi9T Pro on the last Global Stable ROM

Note: I do not really care what you guys think about Google. These are just the steps I took to replace google services with MicroG. This also only works on Android 11 due to FakeGapps being superior on Android 11 compared to Android 12 for now.
TLDR: Flash Magisk, enable zygisk, install Universal Safety Net Fix, Lsposed + fakestore and Nanodroid microg.
Unlock Bootloader and flash a custom recovery
You can follow the guide here on how to unlock your bootloader and flash a custom recovery: https://forum.xda-developers.com/t/guide-unlock-bootloader-and-flash-xiaomi-eu-rom.3952443/
Flash Magisk
Grab the latest APK from Magisk's Github and rename it from Magisk-vXX.apk to Magisk-vXX.zip then flash it in your recovery of choice
Essential magisk setup
Hide the Magisk app
Enable Zygisk and Enforce Denylist on your banking apps etc.
Install the following Magisk Modules and reboot your device
https://github.com/kdrag0n/safetynet-fix for passing safetynet
https://github.com/LSPosed/LSPosed for installing fakegapps later on which provides signature spoofing
Install and enable fakegapps for signature spoofing support
https://github.com/whew-inc/FakeGApps/ - since our device is on A11, grab the latest v3.0 apk and install it
Open LSPosed (A shortcut should be made on your home screen, if not dial *#*#5776733#*#* (LSposed) in your phone dialer and it should open and enable FakeGapps in the module. System Framework is already ticked and thats all thats needed
Installing MicroG
Grab Nanolx's version of microG from: https://downloads.nanolx.org/NanoDroid/Stable/NanoDroid-microG-23.1.2.20210117.zip
Note on this zip. The installer supports reading a config file to set up following this guide: https://github.com/Nanolx/NanoDroid/blob/master/doc/AlterInstallation.md.
I would recommend downloading the default .nanodroid-setup file in the guide, putting it in your internal storage and making the following configurations.
Line 37 - nanodroid_nlpbackend=1000
Line 55 - nanodroid_play=10 if you want in app purchases to work, nanodroid_play=01 if you do not care about in app purchases
I wouldn't recommend going with aurora services here as it is severely outdated, grab it and flash it manually from aurora's gitlab if you want to use it
Uninstall Google Play Services and ignore all the errors that pop up instantly after that
Install Nanodroid MicroG in magisk. It should debloat the default Google installation on the phone and replace it with MicroG
Updating MicroG and optionally Play store based on the options chosen
I recommend installing F-droid and adding the MicroG fdroid repository from https://microg.org/fdroid.html
There will be an update for MicroG. Update it and you're good to go
If you enabled the patched play store for IAP you can update it by going into Google Play Store > Setings and presss Update Play Store
That should be it. You can further clean up the rom by grabbing https://github.com/Szaki/XiaomiADBFastbootTools and disabling some bloatware (I recommend disabling and not uninstalling)
Note: You will get an error from Device Health Services saying it needs an update to Google Play. Feel free to disable the app using a root app disabler or by using ADB with the following command:
adb shell pm disable-user --user 0 com.google.android.apps.turbo
I've gone a step further and replaced most of the default apps with "Simple" apps from F-Droid such as Simple Contacts, Simple Dialer, Simple Calendar etc. They work really well and there's a companion app that allows shared file themeing among them called Simple Thank You.
See attached files for screenshot of my success.

Categories

Resources