Uninstall Bloat from the /e/ (e.foundation) Operating System (Android)

Table of Contents

Prequel

Before this I had regular LineageOS installed on the same device. But after an unwelcome manual upgrade from 15.1 to 16 - I had to install from scratch, there's no upgrade procedure - it broke down after another nightly update that would have required additional steps (but the updater app did not inform about this).

Since then I've come to realise that LineageOS updates do not distinguish between security upgrades and feature upgrades, and that new features are added early, without much testing or consideration. All LineageOS versions are "nightlies", and all updates are "nightlies", too. There's no setting to allow only essential updates. A beta testing playground for "proper" Android, as it was with Cyanogenmod already.

The Story

That's why I'm now testing /e/ because it's still based on LineageOS 15.1 and still receives Android security updates, but not much more.
I believe /e/ is generally more conservative and stable, yet secure.

Apart from that there's nothing very special compared to LineageOS itself, except:
It comes with its own Google-like ecosystem (/e/-account, app store etc.).

I really need to uninstall or at least disable a few apps:

  • the e.foundation app store (I use f-droid)
  • microG (I have no use for that)
  • the rather horrible default launcher
  • the weather provider/app

XDA-develoers tells me to use adb for this.
First I installed the f-droid app via adb. Then I installed a launcher through f-droid.
Then:

adb shell

Apparently su is not required here:

pm list packages|grep -i apps
pm uninstall -k --user 0 foundation.e.apps
pm list packages|grep -i weather
pm uninstall -k --user 0 org.lineageos.openweathermapprovider
pm uninstall -k --user 0 foundation.e.weather
pm uninstall -k --user 0 org.cyanogenmod.weatherservice
pm uninstall -k --user 0 org.cyanogenmod.weather.provider
pm list packages|grep -i launcher
pm uninstall -k --user 0 foundation.e.blisslauncher

Now a reboot for good measure. /e/ still boots and appears usable. Good.

Starting another adb shell, on to the gritty stuff:

pm list packages|grep -i microg
pm uninstall -k --user 0 org.microg.nlp.backend.ichnaea
pm uninstall -k --user 0 org.microg.nlp.backend.nominatim
pm uninstall -k --user 0 org.microg.gms.droidguard

Another reboot. /e/ still boots and appears usable. Good.
Now only a system update can show how useful all that was.

Edit 28.9.19:
This has been working well enough. However, recently something called "/e/ Drive" appeared on this system, and kept crashing.

$ pm list packages|grep -i drive
package:foundation.e.drive
$ pm uninstall -k --user 0 foundation.e.drive
Success

Done. And while I was at it, I re-checked the old ones. One caught my eye:

$ pm list packages|grep -i apps
package:com.android.apps.tag
$ pm uninstall -k --user 0 com.android.apps.tag
Success

Let's hope this helps and doesn't break the system.

Edit 29.9.19:
No ill effects so far.
According to this I also uninstalled com.android.stk. Scary.

There's a similar article on the highly valued kuketz-blog.