Mastodon Automatisches Debloating von einer Android Custom-ROM :: Yama's Blog

Automatisches Debloating von einer Android Custom-ROM 9. April 2017, 12:54

Nicht nur die Stock Firmware sondern auch Custom-ROM bringen Apps mit, die man womöglich nie braucht. Dafür kann es verschiedene Gründe geben.

  • Man benutzt die App nicht
  • Die App ist veraltet und man installiert die neueste Version aus dem Play Store
  • Man verwendet eine alternative App

Daher möchte man diese Apps entfernen – Am besten automatisch :)

Es gibt viele Möglichkeiten System-Apps zu entfernen.

  • Selber aus /system/apps/ und /system/priv-apps/ die Ordner löschen
  • Eine App installieren, die das deinstallieren der System-Apps erlaubt
  • Shell-Scripte schreiben, welche das Löschen übernehmen – Können auf verschiedene Weisen automatisiert werden

Früher habe ich Apps verwendet und bei jedem System-Update die unerwünschten Apps erneut entfernt. Diese Methode kommt natürlich nicht dauerhaft in Frage. Selber Routine-Aufgaben erledigen, obwohl diese automatisiert werden können möchte ich einfach nicht machen.

Also wird automatisiert

Ich verwende Lineage OS auf meinem Nexus 5. Nebenbei, ich verwende eine Custom-ROM, weil das Nexus 5 auf Android 6 bleibt und Sicherheitsupdates erhält. Stock Firmware verwende ich gerne mit Xposed und Gravitybox. Und nach dem Debloat braucht man keine Custom-ROM mehr ;)
Ich möchte aber das neueste Android verwenden, weswegen ich Lineage OS installiert habe. Und Lineage OS, weil es nicht mehr den ganzen Müll wie Cyanogenmod damals mit der Zeit eingebaut hat. Das System ist schön schlank und sauber.

Zurück zum Thema – Eine Custom-ROM hat die ganzen Google-Apps (Gapps) nicht. Also ist komplett von Google getrennt. Viele (ja, nicht alle) möchten aber den Play Store verwenden, dafür gibt es extra Gapps. Gapps sind die Kern-Apps, wie Google Play Dienste, Play Store und auch Chrome-Webview. Alle Google Apps können damit installiert werden.

Ich verwende Open GApps. Open GApps hat verschiedene Pakete für verschiedene Ansprüche. Man muss nicht alles installieren, sondern nur das, was man haben möchte.
Das einfachste ist natürlich pico zu installieren. Dadurch kann man dann manuell die restlichen Google Apps aus dem Play Store installieren, da alle Google Apps dort verfügbar sind.
Wir möchten aber, dass soviel auf einem Schlag geht wie möglich. Daher unterstützt Open GApps Konfigurationen!

Die Custom-ROM haben grundsätzlich eine Telefon-App, SMS, Mail und weitere. Diese sind allerdings die veralteten, die in der ROM sein dürfen. Diese sind auch nicht im Play Store, kriegen keine Updates und bleiben veraltet. Daher installiere ich immer auch die Apps, die eigentlich schon von der ROM mitgeliefert werden.

Meine Open GApps Konfguration

Für diese Konfiguration nehme ich stock, da ich von diesem Paket auch einige Apps installieren lasse.
Open GApps mit dieser Konfiguration ist schon eine feine Sache, vor allem weil es erlaubt ein paar Apps vom System zu entfernen.

Aber was ist mit den restlichen System-Apps, die Open GApps nicht entfernt?
Also wollte ich ein Script schreiben welches die Apps nochmal entfernt, die von Open GApps entfernt wurden und auch noch Apps entfernt, die Open GApps nicht entfernt. Dabei bin ich auf /system/addon.d/70-gapps.sh gestoßen. Alle Scripte in diesem Ordner werden beim ersten Start nach einem ROM-Update ausgeführt, daher ist das Script von Open GApps darin enthalten. Also habe ich das Script ergänzt.

   # Remove 'user requested' apps
    rm -rf /system/app/BasicDreams
    rm -rf /system/app/LatinIMEGooglePrebuilt
    rm -rf /system/app/LiveWallpapersPicker
    rm -rf /system/app/LockClock
    rm -rf /system/app/PhotoTable
    rm -rf /system/priv-app/DocumentsUI
    rm -rf /system/priv-app/Snap
    rm -rf /system/priv-app/Trebuchet
    rm -rf /system/priv-app/WeatherManagerService
    rm -rf /system/priv-app/WeatherProvider
    cp /sdcard/Download/hosts /system/etc/

Somit werden alle Apps entfernt, die ich nicht verwende. Die letzte Zeile kopiert die hosts-Datei, welches ich immer in dem Ordner habe und auf MoaAB basiert.

Yama

Move to Top