divest-12.1 official (vayu-12/9/2024 vanilla build) Debloat : OK (welp, so much for DivestOS ignoring debloats... at least on the X3P. Now it's only a matter of finding some decent file hoster other than archive.org... anyway, usual reminder about Bluetooth & telephony not working.) Last updated : 5/3/2025 Changelog : 5/3/2025 - Initial creation Pre-debloat (i dunno, probably better than letting system consume too much resource for nonexistent tasks?) - updater : Settings > System > Updater > 3-dot menu > Preferences - set autoupdate check to never, disable mobile data warning - cell broadcast (optional) : Settings > Notifications / Safety & emergency > Wireless Emergency alerts - disable everything /system_root/system/apex com.android.cellbroadcast com.android.neuralnetworks /system_root/system/app BasicDreams Bluetooth BluetoothMidiService BookmarkProvider (optional) CarrierDefaultApp CompanionDeviceManager CtsShimPrebuilt LiveWallpapersPicker NfcNci PrintRecommendationService PrintSpooler SimAppDialog Stk WallpaperBackup /system_root/system/priv-app BlockedNumberProvider BuiltInPrintService CalendarProvider (optional, required for Etar) CallLogBackup CellBroadcastLegacyApp ContactsProvider CtsShimPrivPrebuilt ManagedProvisioning MmsService Tag Telecom TelephonyProvider TeleService /product/app SecureCamera > OpenCamera (OpenCamera : only if MiuiCamera (and its anx folder) gets nuked - and delete the unused one; else delete both) EtarPrebuilt > Fossify Calendar (optional) LatinIME > SimpleKeyboard (rkkr) eSpeakNG F-DroidOfficial FennecDOS messaging PhotoTable SupportDivestOS TalkBack /product/priv-app Contacts Dialer /vendor /etc/cne /system_ext/app Profiles (as in this is the only folder staying in /system_ext/app) /system_ext/priv-app CarrierConfig CarrierConfig2 EmergencyInfo ims LineageSetupWizard qcrilmsgtunnel QuickAccessWallet Seedvault Updater Setup QS : Flashlight, Caffeine, Auto-rotate, Volume panel, Mic access, Camera access adb shell commands (scuffed edition) : settings put global ntp_server about:blank (or replace about:blank with any decent ntp server, such as pool.ntp.org if you need network time) settings put secure show_rotation_suggestions 0 optional captive portal commands (since there's a GUI option in Settings > Network & internet > Internet connectivity check) : settings put global captive_portal_http_url (insert http url of decent captive portal provider that's not /e/ or Go-ogle) settings put global captive_portal_https_url (insert https url of decent captive portal provider that's not /e/ or Go-ogle) settings put global captive_portal_fallback_url (insert fallback url of decent captive portal provider that's not /e/ or Go-ogle) settings put global captive_portal_other_fallback_urls (insert "other_fallback_urls" url of decent captive portal provider that's not /e/ or Go-ogle) Additional notes : - make sure TWRP (I used Nebrassy's unofficial 3.6.2_12 - not sure on other recoveries) has r/w access before attempting to debloat. This is especially important for the X3P since TWRP (both official & Nebrassy's unofficial builds) mounts partitions as read-only by default. (https://gearjail.(codeberg.page / neocities.org)/mountrw.html). That said, TWRP cannot decrypt & read /sdcard on DivestOS (regardless of lock screen password), so get your root-capable file manager to copy stuff into /Android & be prepared to stay rooted. Not that Tavi's gonna like seeing his DivestOS rooted, but I believe he was done with DivestOS so... - Speaking of root, DivestOS' kernel is unique in the sense it contains some added CVE patches & some proprietary blob removals. Therefore, switching to any flashable kernel (including those KernelSU-capable ones) will undo those security additions, so if you need to keep them for any reason you probably could stick with Magisk, but then certain security-minded individuals don't like seeing user control so... - Boot animation is immutable, location unknown (but not /product/media unlike every other A12L ROMs I've played with so far). - Latest (not the regular 0.2.27.223616 I've always relied on) microG should work as user-app if its toggle in Settings > Security > Unprivileged microG enablement is enabled. ...not that I tried it out so take this claim with 10 tonnes of salt. - DivestOS' DocumentsUI does not rush to Downloads by default. - Shattered Pixel Dungeon & Xeonjia's background songs reliably play in this DivestOS build, though at the cost of that annoying volume alert that pops up when you kick the headphone volume more than 50%, which is barely loud enough for my M50X (like 1 volume step away from properly audible for me, assuming default volume steps). SystemUI tuner might be a workaround for this, but requires a reboot to fully apply it (and it comes back again eventually so it's pointless). - GrapheneOS' Secure Camera is default camera (with mutable shutter sound). - Hosts file can be disabled in Settings > Security > Disable DNS content blocker. I do NOT like having this option, but the weirdos who think systemwide adblocking should be optional can have fun with this toggle I guess... it's not like you can just use some empty hosts file amirite? Conclusion (hello graveyard PD? we have some shady fuck digging up divestos graveyard, FUCKING STOP HIM HE STOLE A COFFIN AAAAAAAAA) Well, so much for DivestOS somehow ignoring my debloats like it did in A11 on OP3T. But then again, this is meant to be basically LineageOS with A LOT of privacy & security related additions (and a bunch of added bloat, some of which has stopped working - and one Sword of Damocles). It's a shame it wasn't maintained any further, but I suppose the bell has tolled for Android. All that's left is some ruins of some old builds to scavenge, and to find somewhere decent to publish & immortalize this final A12L build.