-
Notifications
You must be signed in to change notification settings - Fork 4
Delete pre‐installed apps
Phone manufacturers often include apps with advertisements or free trials in KaiOS to gain profit from these low-cost devices. As such, uninstalling those "bloatwares" is a common practice for many people.
Before you start, make sure you have a debug-enabled KaiOS 2.5 phone, and that you have learned how to sideload apps.
AppBuster uses
navigator.mozApps.mgmt.setEnabled
API to hide apps you don't need from the app list and later re-enable them if you change your mind. It does not requireengmode-extension
permission, thus bypassdevtools.apps.forbidden-permissions
on KaiOS 2.5.4 devices.Changes are only made on /userdata, thus does not affect OTA updates and can be undone with a factory reset.
To start, download AppBuster as a ZIP package and sideload on your phone. Once the app opens, use the Up/Down D-Pad key to navigate through the list of apps, and press the number keys associated with ones that you want to hide.
Press # to apply, follow the prompt and reboot your device by holding down the Power key. On KaiOS 2.5.3 and later, you can do a Deep Memory Cleaning which restarts B2G and results in the same effect.
To re-enable the apps, repeat the instructions but remove the strikes.
WIP
Warning
Back up the system partition before proceeding. This will make permanent changes to your filesystem, which a factory reset cannot undo.
If you wish to permanently remove the apps by making changes to the system partitions:
First, grant yourself temporary root access in ADB shell. Install Busybox with OmniBB if you don't have one installed, then open Wallace Toolbox, press 1 and proceed when you see "Rooted ADB access until reboot".
Connect your phone to the computer with ADB installed and execute this to list all apps on the /system partition:
$ adb devices
* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
c6209c78 device
$ adb shell ls /system/b2g/webapps
...
Once you determine which app you want to remove, execute this to grant yourself read-write access to /system:
$ adb shell mount -o rw,remount /system
$ adb shell
root@Nokia 2720 Flip:/ # cd /system/b2g/webapps
root@Nokia 2720 Flip:/system/b2g/webapps # ls -la [app.gaiamobile.org/]
-rw-r--r-- root root 2039242 2008-12-31 23:00 application.zip
-rw-r--r-- root root 478 2008-12-31 23:00 manifest.webapp
root@Nokia 2720 Flip:/system/b2g/webapps # chmod -R 664 [app.gaiamobile.org/]
root@Nokia 2720 Flip:/system/b2g/webapps # ls -la [app.gaiamobile.org/]
-rw-rw-r-- root root 2039242 2008-12-31 23:00 application.zip
-rw-rw-r-- root root 478 2008-12-31 23:00 manifest.webapp
root@Nokia 2720 Flip:/system/b2g/webapps # rm -r [app.gaiamobile.org/]
root@Nokia 2720 Flip:/system/b2g/webapps # exit
$ adb shell mount -o ro,remount /system
$ adb shell pull /data/local/webapps/webapps.json
/data/local/webapps/webapps.json: 1 file pulled, 0 skipped. 2.0 MB/s (121414 bytes in 0.058s)
$ adb push webapps.json /data/local/webapps
webapps.json: 1 file pushed, 0 skipped. 89.4 MB/s (120424 bytes in 0.001s)
$ adb reboot
This documentation page is written on the courtesy of the BananaHackers team, 2018–present.