This guide has been written originally by Ivan Alex HC
This hack is safe meaning no changes are made to
/systempartition and changes are reverted back after factory reset or after an OTA update
Get a copy of the desired application's folder from the system (for example the Contact app):
adb pull /system/b2g/webapps/contact.gaiamobile.org
Extract the application.zip, search the path of the icons (by reading the manifest.webapp file) and replace the icon with a custom one.
Push the app and its folder on the data partition, exactly in /data/local/webapps while using a temporary root access:
adb push contact.gaiamobile.org /data/local/webapps
Get the webapps.json file:
adb pull /data/local/webapps/webapps.json
And change the value of the contact․gaiamobile․org app
"basePath": "/system/b2g/webapps",
in this way:
"basePath": "/data/local/webapps",
Use the JSONLint website to verify that the format is correct for any json file you want to modify.
adb push webapps.json /data/local/webapps/
adb reboot
After rebooting you will see the new icon theme on your app. You can do the same in bulk, by apply the changes in the whole folder.