Like many around here, I had a Droid 1 and loved it. Vanilla Android, little to no Bloat, it was great. Then, a couple weeks ago, I "upgraded" to the Droid 2 Global which like the Droid X and standard Droid 2, is full of tons of extra system apps, and, unlike the original Droid, not vanilla Android. While some of this bloatware runs constantly using both battery and memory I really just don't like a cluttered app drawer.
After rooting there are a few options for getting rid of the extra apps (bloatware) some of which are discussed in depth Here but basically they include Renaming the Apk's (with terminal or Root Explorer), Freezing them (with Titanium Backup), or installing a completely custom rom. Whatever you do, don't delete them!
Whichever option you go with, in order to get system updates (pushed by Verizon) all that bloatware needs to be put back. Since this can be time consuming (especially if using a manual method like root explorer or typing terminal commands) I thought it might be fun to build a script to automate the process of renaming apk's that I don't use. This way, when the next update comes, it is easy to get the apk's back.
After searching around these forums, I found very little clear cut info on writing a script from scratch. I did find a script to mount system as writable and used that as a base (Here). After a little trial and error, I was finally able to write a working script that will automatically remove and/or replace the following apps:
Madden (Added to Update.zip Script on 10:38pm Jan-8-2011)
SocialMessaging.bak (Added on Jan-12-2011)
SocialShare.bak (Added on Jan-12-2011)
WeatherWidget.apk (Added on Jan-12-2011)
- If you are running a custom rom, you do not need this script, it is only useful to those that want the stock rom without bloatware.
- You must take responsibility for your own actions. There is always some inherent risk in messing with /system files, if you don't accept that risk, don't mess with your phone.
- You must have root, the easiest method is z4root, found here:[APP] z4root - xda-developers
- You must have access to Clockwork Recovery/Droid X Bootstrapper and make a nandroid backup, Discussed in depth here: Creating and Restoring Backups - Complete Guide
- The Update.zip script will rename all ".bak" files in /system/app to ".apk", that means that if you manually renamed bloatware not included in this script to ".bak", it will get put back as well.
Discussed below are two methods of installing and executing scripts, choose one. Each method just executes a script that renames the bloatware.
Getting rid of the bloatware the easy way
(Executing the scripts as an Update.zip. This Update.zip does not add or delete any files, it just runs a script to rename the files. Essentially the same as manually renaming with terminal, root explorer or freezing with Titanium Backup. Thanks to maderschramm for the great idea!)
If you have already run this and now want to remove Madden you will need to re-download the script, and run it twice. The first time will add everything back and the second will remove everything including Madden. If you have never run this script before, proceed to step 1 below.
Step 1: Download the zip file at the end of this post. (Moto_Bloat_Update.zip)
Step 2: Mount up you're phone and copy the zip files to your sdcard, when done, unplug your phone from the computer. (or download the file directly to your phone and copy it from /sdcard/downloads to /sdcard
Step 3: Reboot into Clockwork Recovery.
Step 4: To remove the bloatware choose "Install zip from sdcard", then pick "choose zip from sdcard", choose "Moto_Bloat_Update.zip", then choose "Yes - Install Moto_Bloat_Update.zip."
Step 5: When finished, it will say done. Back out to the main menu and, Reboot your phone.
When your phone reboots the bloat will be gone (it has just been renamed to .bak)
Returning The Bloatware
Reboot into Clockwork Recovery and Install "Moto_Bloat_Update.zip" again.
When you reboot, all the bloatware will be back.
Or type the following terminal commands (hitting enter after each line):
Code:$su #bloat -add
Alternate Method: Gscript Lite
A typical script begins with a line to tell the terminal how to execute the script. Gscript automatically includes this line, so it should not be included in the script, and therefore requires a slightly modified script. A nandroid backup is a very good idea, and I strongly recommend making one prior to making any changes to the /system folder.
Step 1: Download "DX Remove Bloatware.txt" and "DX Put Bloatware Back.txt". Change the extension of each file to ".sh", they should now be "DX Remove Bloatware.sh" and "DX Put Bloatware Back.sh"
Step 2: Download and install Gscript Lite from the Android Market. Open Gscript Lite.
Step 3: Mount up your phone and copy both files to your sdcard. They need to go in the "/sdcard/gscript" folder, when done, unplug your phone from the computer.
Step 4: Open Gscript Lite.
Step 5: Press the Menu Button and Choose "Add Script", you can now create your own script or "load" a previously created script.
Step 6: Press "Load" and you will be presented with a list of available scripts to load. This list loads from the "/sdcard/gscript" folder.
Step 7: Press "DX Remove Bloatware.sh", this will take you back to the previous screen. The name should be filled in as should the body of the script.
Step 8: Make sure the "su" checkbox is checked and press "Save"
Step 9: Repeat steps 5 - 8 for "DX Put Bloatware Back.sh"
Step 10: Now, to remove the bloatware simply press the button in Gscript Lite labeled "DX Remove Bloatware"
Step 11: Reboot Phone (not required but some apps won't get out of the drawer until you do)
Putting the bloatware back
Step 1: Open Gscript Lite.
Step 2: Press "DX Put Bloatware Back"
Step 3: Reboot and everything will be back to normal
What are these scripts actually doing?
A script simply executes terminal commands. Rather than manually mounting the system directory and renaming each bloatware app they automate the process. These scripts do not delete the apps, the simply "hide" them from Android. Open the text files to see exactly what the scripts are doing.