Hey! ^_^
I made a script to remove the bloat from ROMs, add some script functionality and replace some system APKs. It's simple, but really powerful. I use it everytime I get a new ROM because I like plain stock ROMs, with only the system apps. I dunno, I just like it that way .
So, here it is, ModYourROM LITE! ^^!. It’s intended to be used AFTER A ROM FLASH, INSIDE RECOVERY, AND BEFORE THE FIRST BOOT, but it can run afterwards with no issues, I guess.
ROM Compatibility? for now, it’s been tested only with GingerYoshi 1.1 and 1.2 (awesome ROM by the way ).
Now…
Very Important Notes, or V.I.N. for short. Yeah, like Vin Diesel, only that he’ll come and punch you right in your face if you don’t read AND follow them =P.
You need to have ADB in your PATH variable, or edit the script accordingly (!!!).
This script is made for Linux. If you’re on Windows, replace "#" by "REM" and remove the first line of the script.
Don’t just bluntly run it. READ what the script does before running it. It’s common-linux-sense.
You need to have busybox run-parts on your ROM for the startup-scripts functionality. GingerYoshi has it, I don't know which other ROMs have it. It's only needed if you want the startup scripts though.
This script creates a folder called “bak” in your SD card, in case you want to redo the changes. Be sure to have it inserted on the phone before running the script.
Last but not least: I’m not responsible if this breaks your phone, ROM, flying toaster or BORGizes your phone and assimilates you. This script has been working on my phone & setup without much modifications other than adding/removing a few APKs or scripts, so this is the only guarantee I give you. It hasn’t broken mine, but YDMV (Your Device May Vary). Still, you can PM me or post here and I'll try to help you fix something this script has made. However, I'm no expert so I may - or may not - fix what this script did on your phone.
Now, let’s get our hands dirty:
Create a folder somewhere (ie Destkop). I’ll call it “myr“.
Add your custom APKs into myr/apks. Rename them if needed so they have simple names with no spaces. Stuff like foo.bar.boo.hoo.apk sucks =P.
Add your startup scripts (if any) into myr/scripts (you can find some at the bottom of this post).
Add your boot animation replacement (if any) into myr/boot.
Add the latest busybox for ARM5 (in the case of HTC Magic, busybox-armv5l) into myr/busybox. You can find it HERE. Rename it as busy1184, WITH NO EXTENSION.
Put the following scripts in your myr folder:
myrLITE.sh
Code:
#!/bin/sh
# ================================================================================================================
# ModYourROM LITE v1.1 by DARKGuy (dark DOT guy DOT 2008 AT gmail DOT com)
# 6th Jun 2011
#
# WINDOWS USER: Replace # by REM and delete the first line. Be sure to have adb in your PATH environment variable.
# ================================================================================================================
# =====================================================================
# DO NOT REMOVE THIS ADB SEGMENT
# =====================================================================
echo "Mounting..."
adb -d shell mount /data
adb -d shell mount /system
adb -d shell mount /sdcard
adb -d shell mount /sd-ext
adb -d shell mkdir /sdcard/bak
# =====================================================================
# Remove this segment if you don't want to update busybox
# =====================================================================
adb -d push busybox/busybox1184 /sdcard/busy1184
adb -d shell dd if=/sdcard/busy1184 of=/system/bin/busybox
adb -d shell chmod 755 /system/bin/busybox
adb -d shell /system/bin/busybox --install /system/xbin
adb -d shell rm /sdcard/busy1184
# =====================================================================
# Remove these two segments if you don't want/have any startup scripts
# =====================================================================
echo "Adding startup script functionality..."
adb -d shell mkdir /data/local/scripts
adb -d push 90scripts.sh /system/etc/init.d/90scripts
adb -d shell chmod 0750 /system/etc/init.d/90scripts
adb -d shell chown 0:2000 /system/etc/init.d/90scripts
echo "Adding startup scripts..."
adb -d push scripts/noatime.sh /data/local/scripts/noatime.sh
adb -d push scripts/autokiller.sh /data/local/scripts/autokiller.sh
adb -d push scripts/non-rotational.sh /data/local/scripts/non-rotational.sh
adb -d shell chmod +x /data/local/scripts/noatime.sh
adb -d shell chmod +x /data/local/scripts/autokiller.sh
adb -d shell chmod +x /data/local/scripts/non-rotational.sh
# =====================================================================
# Take a look at what apps does this segment remove and delete the
# lines of apps you want to KEEP on your device.
# =====================================================================
echo "Removing apps..."
# Safe to remove
adb -d shell mv /system/app/Protips.apk /sdcard/bak
adb -d shell mv /system/app/PicoTts.apk /sdcard/bak
adb -d shell mv /system/app/TtsService.apk /sdcard/bak
adb -d shell mv /system/app/VoiceDialer.apk /sdcard/bak
adb -d shell mv /system/app/GoogleBackupTransport.apk /sdcard/bak
adb -d shell mv /system/app/GoogleFeedback.apk /sdcard/bak
adb -d shell mv /system/app/GooglePartnerSetup.apk /sdcard/bak
adb -d shell mv /system/app/OneTimeInitializer.apk /sdcard/bak
adb -d shell mv /system/app/ApplicationsProvider.apk /sdcard/bak
adb -d shell mv /system/app/Development.apk /sdcard/bak
adb -d shell mv /system/app/Stk.apk /sdcard/bak
# Bloat
adb -d shell mv /data/app/YouTube.apk /sdcard/bak
adb -d shell mv /data/app/DSPManager.apk /sdcard/bak
adb -d shell mv /system/app/Maxthon.apk /sdcard/bak
adb -d shell mv /system/app/GoogleQuickSearchBox.apk /sdcard/bak
adb -d shell mv /system/app/ThemeChooser.apk /sdcard/bak
adb -d shell mv /system/app/ThemeManager.apk /sdcard/bak
adb -d shell mv /system/app/lindamanager.apk /sdcard/bak
# Core app (I don't use GTalk. Delete if you do).
adb -d shell mv /system/app/Talk.apk /sdcard/bak
# Core app (I don't use the News Reader. Delete if you do).
adb -d shell mv /system/app/GenieWidget.apk /sdcard/bak
# Core app (I don't use the Email app. Delete if you do).
adb -d shell mv /system/app/Email.apk /sdcard/bak
# To be replaced afterwards (READ NOTE IN NEXT SEGMENT)
adb -d shell mv /system/app/DeskClock.apk /sdcard/bak
adb -d shell mv /system/app/Gallery3D.apk /sdcard/bak
# Remove launchers, so we add our own later (READ NOTE IN NEXT SEGMENT)
adb -d shell mv /system/app/Launcher2.apk /sdcard/bak
adb -d shell mv /system/app/ZeamLauncher.apk /sdcard/bak
# =====================================================================
# Remove this segment if you don't want/have any bootanimation.zip
# =====================================================================
echo "Changing boot animation..."
adb -d shell rm -f /system/media/bootanimation.zip
adb -d push boot/bootanimation.zip /system/media/bootanimation.zip
# =====================================================================
# Remove this segment if you don't want/have any replacement apps.
#
# BE SURE TO HAVE A REPLACEMENT APP HERE IN CASE YOU REMOVE CORE APPS,
# like the Clock, News Reader (GenieWidget), Email, Launcher and Gallery3D (which are
# removed above if you didn't look carefully enough - and as for Gallery, I replace it with a
# faster, maybe-not-so-eyecandy-er 2D one).
# =====================================================================
echo "Adding replacement apps..."
adb -d push apks/AlarmClockPlus.apk /system/app/AlarmClockPlus.apk
adb -d push apks/Gallery.apk /system/app/Gallery.apk
adb -d push apks/LauncherPro.apk /system/app/LauncherPro.apk
# =====================================================================
# Don't delete this, it's safe to keep it. Your next boot will be a bit
# slower because it's regenerating the odex files.
# =====================================================================
echo "Cleaning dalvik-cache..."
adb -d shell rm -f /data/dalvik-cache/*
adb -d shell rm -f /sd-ext/dalvik-cache/*
adb -d shell busybox sync
echo "."
echo "Done! Enjoy your new LITE ROM :)"
echo "Script by DARKGuy"
echo "http://www.drakkengard.com/blog/"
echo "."
90scripts
Code:
#!/system/bin/sh
sList=`ls /data/local/scripts/*.sh`
for myScript in $sList
do
sh $myScript
done
Now, EDIT ACCORDINGLY BEFORE RUNNING the myrLITE script.
You should end up with something like this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Now, if you’re on Linux, run this first:
Code:
chmod +x myrLITE.sh
Then run the script:
Code:
./myrLITE.sh
If you’re on Windows, just name it myrLITE.bat and run it from a command prompt.
Now just plain enjoy your new LITE’d ROM .
Credits and references:
* GingerYoshi by Yoshi Team ( here ).
* SD Tweakz by Ungaze ( here and here ).
* Some theory on removing some APKs and autokiller script by tom0769 ( here ).
* Barebones CM Wiki page by CyanogenMod ( here ).
Comments & suggestions welcome!
If you like my work and want to motivate me to keep working on this (and more stuff for the community) make a donation! any amount is greatly appreciated
=========
CHANGELOG
=========
1.2 (09/06/11)
* Removed the annoying beginner's tips widget
1.1 (06/06/11)
* Added busybox updating
* Added Email.apk and GenieWidget.apk to the core app APK removing section.
* Fixed 90scripts.sh
1.0 (05/25/11)
* Initial release
Great! very usefull
I would also like to find some lightweight replacemments for some apps:
gtalk
- gibberbot (gtalk mod with encryption)
- imo (multiprotocol)
...
Skype
- fring (this can also replace message, phone calling and contacts apps?)
- Sipdroid
- Linphone
- Redphone (has encryption but it is not opensource?)
...
gmail
- K-9 + APG Seems faster and has more features, but I am not sure why it has to be running all the time. I would preffer to open it and check when I want to. Is it me or gmail seems more lightweight in resources?
Maps
- Can we get rid of them working all the time?
devrruti said:
Great! very usefull
I would also like to find some lightweight replacemments for some apps:
gtalk
- gibberbot (gtalk mod with encryption)
- imo (multiprotocol)
...
Skype
- fring (this can also replace message, phone calling and contacts apps?)
- Sipdroid
- Linphone
- Redphone (has encryption but it is not opensource?)
...
gmail
- K-9 + APG Seems faster and has more features, but I am not sure why it has to be running all the time. I would preffer to open it and check when I want to. Is it me or gmail seems more lightweight in resources?
Maps
- Can we get rid of them working all the time?
Click to expand...
Click to collapse
Thanks! glad you like it
Well, for GTalk I've been using eBuddy, and so far it's the best one out there .
I don't use voice calls Skype-style, so I don't know which one to use... Fring seems like a good alternative. I tried to use it as a replacement for eBuddy but I kept going back to it, so its only use (to me) would be a Skype replacement app :/
You may be right about GMail being more lightweight than K-9. I've been testing K-9 for a while now and while I haven't tested it through, it seems waaaaaay faster . I also found this little app which claims to stop the data sync, so it kinda does what you need?
https://market.android.com/details?id=org.r3pek.k9datakiller
Thanks for the feedback =) this little script will keep improving, so stay tuned! ^^.
Hey, great work!
Will try this next week to setup a gb rom (don't know which actually)
I'm quite content with laszlo's froyo the last weeks.
Just out of curiosity (don't want to miss maybe something great new) I'll try ezGingerbread, COS-DS or Yoshi's.
tom0769 said:
Hey, great work!
Will try this next week to setup a gb rom (don't know which actually)
I'm quite content with laszlo's froyo the last weeks.
Just out of curiosity (don't want to miss maybe something great new) I'll try ezGingerbread, COS-DS or Yoshi's.
Click to expand...
Click to collapse
^_^ Thanks! did you try it with the ROMs?
I just updated the script to 1.1 ^^ to comply with GY 1.2 update
greate work , going to try this in the evening when i have some time !
Related
I've been messing around with my Dev Magic and found a site for the G1 with some stuff to try:
http://gettinthru.blogspot.com/2009/04/mods-for-tmobile-g1-at-your-own-risk.html
In there, some of the things suggested use the linux command "cp" to copy files from/to the SD card. Problem is, I can't see it listed. Here is the listing of commands in /system/bin:
system_server
mediaserver
app_process
surfaceflinger
dalvikvm
dexopt
rild
wlan_loader
sdutil
service
netcfg
dumpsys
hcid
dd
cmp
df
date
cat
bugreport
chmod
chown
wpa_supplicant
wpa_cli
wipe
watchprops
vmstat
umount
top
vold
sync
stop
start
smd
sleep
setprop
setconsole
sendevent
schedtop
set_grp_id
route
rmmod
rmdir
renice
rm
reboot
radiooptions
ps
qemud
printenv
notify
netstat
mv
mount
mkdosfs
lsmod
mkdir
ls
log
ln
ioctl
kill
installd
iftop
insmod
ifconfig
id
hd
htclogkernel
getevent
getprop
flash_image
dvz
dmesg
dumpcrash
dhcpcd
debug_tool
toolbox
dumpstate
servicemanager
hciattach
logcat
sdptool
dbus-daemon
gzip
showlease
sh
schedtest
ping
logwrapper
iptables
linker
debuggerd
dosfsck
gdbserver
pm
svc
input
am
ime
monkey
akmd
As you can see, no cp. Any suggestions like a .apk of the command to push over to it?
Cheers
you can use dd to copy files aslong as you dont have busybox ( on the dream "all" the rooted images come with busybox )...
However you can use busybox from a non-rooted device by copying it to the folder "sqlite_stmt_journals" as it has both exec/write rights...
Seem to be sorted now...
I found that I can install Busybox like the G1 owners have as standard:
http://www.androidfanatic.com/cms/community-forums.html?func=view&id=228&catid=9
Folowed the guide and have cp and loads of stuff to play with now.
Cheers for your responses.
No problem... Wont take long before custom images are put together that include busybox as the magic now can also be rooted like the dream.
the "rootme" rom i provide in my rooting procedure has busybox installed, as well as apps2sd
the easiest way to replace the "cp" command is using "cat"
cat "sourcefile" > "targetfile"
if you need to copy more files, create a small script with a "for" loop.
Tom
So... I don't know how to make ROMs, or update.zips.... but I can make batch files!! HAHA
Basically, all this does is help noobies out by doing everything for you.
This is intended for use with FreshToast, but should work with any ROM really (JIT functionality depends on if the ROM supports it and editing the build.prop file, read below)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
What it does
JIT does NOT like Sense UI. You basically can't use Sense UI with JIT... so this will remove Sense UI then enable JIT.
You can read about JIT here: http://en.wikipedia.org/wiki/Just-in-time_compilation
This will remove all HTC Widgets, Rosie, and any other useless SenseUI applications. (as they don't work with other launchers) and push over the Helix Launcher. Also, this will enable JIT (there is an option to enable or not to, as well as automated enable/disable JIT)
I have also included the HTC Ringtone trimmer apk - its honestly the best ringtone trimmer I've used, and works great, alot of devs take it out. I dont know why.
Also Ive included the genie news and weather widget.
I get no force closes with this method from removing sense, but as with most roms with JIT enabled, there is the occasional freeze.
As always, DO A NANDROID BACKUP FIRST!!!
The build.prop file is ROM SPECIFIC!!
The script has the build.prop for FRESHTOAST 1.1
I'm working on getting multiple build.prop's from other ROMs so you will only have to make a simple menu selection.
If you are using a different ROM do the following:
adb pull /system/build.prop C:/system.prop_jit
edit the file in WORDPAD (not notepad) and save as build.prop_jit in the "Unicode Text Format"
Go to the very last line of the file, and add the following line:
Code:
dalvik.vm.execution-mode=int:jit
Save the file as build.prop to the location you extracted the zip (no_sense.zip) to and overwrite the old one.
The rest remains the same.
Special thanks to regaw_leinad for the help with the script. THANK YOU!! also thanks to Jus10o for helping me with the force closes I was getting after removing sense. Thanks also to "gunnyman" for the hosting of the file!
Instructions:
First thing is something some of you may already have done. This will enable adb to be run in the DOS command line from anywhere, not just your android tools folder.
Right click on "My Computer"
Click Properties
Click the advanced tab
Click "Environment Variables"
In the top window click "PATH"
Click "Edit"
Change the "Variable Value" to your android SDK tools folder (Mine is C:\Android\tools)
Now unzip the no_sense folder anywhere you want.
Connect your phone via USB and make sure you DO NOT have the phone in disk mode, select "Charge Only" and ensure the phone has USB-Debugging on (should be by default)
Double click on "no_sense.bat" and follow the prompts.
The first time you enable JIT it will create a backup of your old files, and can be restored/disabled later.
NOTICE You MUST change your home screen wall paper to a non-htc wallpaper before enabling JIT. If not, your phone will freeze on boot. Any photo will do, as long as it is not a HTC wallpaper. I'm looking in to how to prevent this from happening. If you accidentally booted without changing, just nandroid back and do it again. After stripping the ROM of Sense UI, and starting Helix, change your wallpaper, THEN enable JIT.
Currently v1.2
Download Here: http://dl.dropbox.com/u/6718465/no_sense_with_apks.zip 9.40MB (Includes all the backed up Rosie APKs)
Without APKs: http://dl.dropbox.com/u/6718465/no_sense.zip 1.75MB
I'm curious to try it on the new ZenExp ROM. Helix launcher already works great with it.
Well the Sense UI strip part works....
Having some trouble with the JIT part...
I guess some commands can't be done though ADB Shell
are you using ADB to execute a script? if so make sure you chmod that script. adb shell chmod 755 /sdcard/nameofscript should do the trick.
gunnyman said:
are you using ADB to execute a script? if so make sure you chmod that script. adb shell chmod 755 /sdcard/nameofscript should do the trick.
Click to expand...
Click to collapse
I think it's a .bat file to run on the computer w/ your phone plugged in.
poor_red_neck said:
Well the Sense UI strip part works....
Having some trouble with the JIT part...
I guess some commands can't be done though ADB Shell
Click to expand...
Click to collapse
can you send me the script, I'll take a look at it and see whats goin on.
When I saw the howto for enabling JIT I wrote a script that would execute the list of shell commands. All I had to do was edit build prop manually then execute the script. I also wrote an undo script. I can easily redo it for you if it will help.
This is an excellent contribution. Thanks. I see many firsts much less worthy of posting(aka-why is this posteds) Also, damage put dcconfig.apk in the new .08 rom which allows for you to enable/disable jit and many other options from within a checkbox.
Ah, Found the issue...
I'm doing everything through adb shell xxxcommandxxx for JIT...
However I dont know how to get SU through the shell...
Here's part of it Ive stripped out.
Code:
@ECHO OFF
adb remount
adb shell mkdir /sdcard/JIT
adb shell mkdir /sdcard/dalbk
adb shell mkdir /sdcard/JIT/bin
adb push libdvm.so /sdcard/JIT/libdvm.so
adb push libnativehelper.so /sdcard/JIT/libnativehelper.so
adb push dalvikvm /sdcard/JIT/bin/dalvikvm
adb pull /system/build.prop build.prop_backup
adb push build.prop_JIT /system/build.prop
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
adb shell cp /system/build.prop /sdcard/dalbk/
adb shell cp /system/bin/dalvikvm /sdcard/dalbk/
adb shell cp /system/lib/libdvm.so /sdcard/dalbk/
adb shell cp /system/lib/libnativehelper.so /sdcard/dalbk
adb shell cd /sdcard/jit/bin
adb shell cp -f dalvikvm /system/bin
adb shell busybox chmod 755 /system/bin/dalvikvm
adb shell cd /sdcard/jit
adb shell cp -f libdvm.so /system/lib/
adb shell cp -f libnativehelper.so /system/lib/
adb shell cat.build.prop >/system/build.prop
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
I get an error at trying to chmod 755 /system/bin/dalvikvm
do adb remount first.
Here's the full script if you're interested... again... the strip sense part works fine, JIT is giving me issues.
Code:
@Echo OFF
Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
Echo º º
Echo º º
Echo º º
Echo º PLEASE ENSURE YOU HAVE CREATED A NANDROID BACKUP FIRST!!!! º
Echo º ALSO: Please ensure you have installed some sort of Home º
Echo º Launcher First. This script will install º
Echo º Helix launcher by default º
Echo º º
Echo º Also please ensure you have already installed º
Echo º A2SD º
Echo º º
Echo º Press 3 at the following option to skip º
Echo º to enabling/disabline JIT º
Echo º º
Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
SET /P ANSWER=Have you created a Nandroid Backup first? (1)Yes (2)No =
if /i {%ANSWER%}=={1} (goto :10)
if /i {%ANSWER%}=={2} (goto :20)
if /i {%ANSWER%}=={3} (goto :50)
:10
Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
Echo º º
Echo º The script will now pull and backup your Sense/Rosie apks. º
Echo º They will be placed in the folder labeled "Rosie_Backup" º
Echo º In the "Root" directory of your PC(C:/Rosie_Backup º
Echo º º
Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
pause
adb remount
adb pull /system/app/Rosie.apk /Rosie_Backup/Rosie.apk
adb pull /system/app/HtcLockScreen.apk /Rosie_Backup/HtcLockScreen.apk
adb pull /system/app/com.android.launcher2.apk /Rosie_Backup/com.launcher2.apk
adb pull /system/app/com.htc.MusicWidget.apk /Rosie_Backup/com.htc.MusicWidget.apk
adb pull /system/app/com.htc.TwitterWidget.apk /Rosie_Backup/com.htc.TwitterWidget.apk
adb pull /system/app/com.htc.WeatherWidget.apk /Rosie_Backup/com.htc.WeatherWidget.apk
adb pull /system/app/HtcAddProgramWidget.apk /Rosie_Backup/HtcAddProgramWidget.apk
adb pull /system/app/htcmailwidgets.apk /Rosie_Backup/htcmailwidgets.apk
adb pull /system/app/htcmsgwidgets.apk /Rosie_Backup/htcmsgwidgets.apk
adb pull /system/app/HtcWeatherWallpaper.apk /Rosie_Backup/htcWeatherWallpaper.apk
adb pull /system/app/SetupWizard.apk /Rosie_Backup/SetupWizard.apk
Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
Echo º º
Echo º Now we will install Helix Launcher º
Echo º to the /system/app folder º
Echo º and push other nescessary files º
Echo º as well as remove the non-essential º
Echo º HTC applications/Widgets º
Echo º º
Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
Echo You will get a force close on the phone, click force close
pause
adb push com.helixproject.launcher.apk /system/app/com.helixproject.launcher.apk
adb push GenieWidget.apk /system/app/GenieWidget.apk
adb push HtcRingtoneTrimmer.apk /system/app/HtcRingtoneTrimmer.apk
adb push com.htc.resources.apk /system/framework/com.htc.resources.apk
adb shell rm /system/app/Rosie.apk
adb shell rm /system/app/HtcLockScreen.apk
adb shell rm /system/app/com.android.launcher2.apk
adb shell rm /system/app/com.htc.MusicWidget.apk
adb shell rm /system/app/com.htc.TwitterWidget.apk
adb shell rm /system/app/com.htc.WeatherWidget.apk
adb shell rm /system/app/HtcAddProgramWidget.apk
adb shell rm /system/app/htcmailwidgets.apk
adb shell rm /system/app/htcmsgwidgets.apk
adb shell rm /system/app/HtcWeatherWallpaper.apk
adb shell rm /system/app/SetupWizard.apk
:50
Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
Echo º º
Echo º Now we can enable JIT º
Echo º (Just In Time compiler) º
Echo º º
Echo º º
Echo º If you are unsure, please search on XDA Forums First º
Echo º º
Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
SET /P ANSWER=Would you like to enable/disable JIT? (1)Yes (2)No =
if /i {%ANSWER%}=={1} (goto :51)
if /i {%ANSWER%}=={2} (goto :100)
:51
SET /P ANDWER=Press 1 to enable JIT - Press 2 to disable JIT =
if /i {%ANSWER%}=={1} (goto :52)
if /i {%ANSWER%}=={2} (goto :53)
:52
adb remount
adb shell mkdir /sdcard/JIT
adb shell mkdir /sdcard/dalbk
adb shell mkdir /sdcard/JIT/bin
adb push libdvm.so /sdcard/JIT/libdvm.so
adb push libnativehelper.so /sdcard/JIT/libnativehelper.so
adb push dalvikvm /sdcard/JIT/bin/dalvikvm
adb pull /system/build.prop build.prop_backup
adb push build.prop_JIT /system/build.prop
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
adb shell cp /system/build.prop /sdcard/dalbk/
adb shell cp /system/bin/dalvikvm /sdcard/dalbk/
adb shell cp /system/lib/libdvm.so /sdcard/dalbk/
adb shell cp /system/lib/libnativehelper.so /sdcard/dalbk
adb shell cd /sdcard/jit/bin
adb shell cp -f dalvikvm /system/bin
adb shell busybox chmod 755 /system/bin/dalvikvm
adb shell cd /sdcard/jit
adb shell cp -f libdvm.so /system/lib/
adb shell cp -f libnativehelper.so /system/lib/
adb shell cat.build.prop >/system/build.prop
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
Echo The phone will now reboot...
adb reboot
:53
adb remount
adb shell cd /sdcard/dalbk/
adb shell cat build.prop >/system/build.prop
adb shell cp -f dalvikvm /system/bin
adb shell busybox chmod 755 /system/bin/dalvikvm
adb shell cp -f libdvm.so /system/lib/
adb shell cp -f libnativehelper.so /system/lib/
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
ECHO Your phone will now reboot...
adb reboot
exit
:20
SET /P ANSWER=Would you like to reboot into recovery now to create one? (1)Yes (2)No =
if /i {%ANSWER%}=={1} (goto :101)
if /i {%ANSWER%}=={2} (goto :100)
:101
pause
Echo Your phone is now rebooting into recovery...
adb reboot recovery
exit
:100
pause
exit
I literally haven't messed with batch files since I was like... 12... soo.... haha.
poor_red_neck said:
Ah, Found the issue...
I'm doing everything through adb shell xxxcommandxxx for JIT...
However I dont know how to get SU through the shell...
Here's part of it Ive stripped out.
Code:
@ECHO OFF
adb remount
adb shell mkdir /sdcard/JIT
adb shell mkdir /sdcard/dalbk
adb shell mkdir /sdcard/JIT/bin
adb push libdvm.so /sdcard/JIT/libdvm.so
adb push libnativehelper.so /sdcard/JIT/libnativehelper.so
adb push dalvikvm /sdcard/JIT/bin/dalvikvm
adb pull /system/build.prop build.prop_backup
adb push build.prop_JIT /system/build.prop
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
adb shell cp /system/build.prop /sdcard/dalbk/
adb shell cp /system/bin/dalvikvm /sdcard/dalbk/
adb shell cp /system/lib/libdvm.so /sdcard/dalbk/
adb shell cp /system/lib/libnativehelper.so /sdcard/dalbk
adb shell cd /sdcard/jit/bin
adb shell cp -f dalvikvm /system/bin
adb shell busybox chmod 755 /system/bin/dalvikvm
adb shell cd /sdcard/jit
adb shell cp -f libdvm.so /system/lib/
adb shell cp -f libnativehelper.so /system/lib/
adb shell cat.build.prop >/system/build.prop
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
I get an error at trying to chmod 755 /system/bin/dalvikvm
Click to expand...
Click to collapse
try taking out "busybox", because if it is installed in the rom and symlinked you don't need to type that.
Now I get the following error:
cp: cannot stat 'dalvikvm': No such file or direcotry
cp: cannot stat 'libdvm.so': No such file or directory
cp: cannot stat 'libnativehelper.so': No such file or directory
The system cannot find the path specified.
poor_red_neck said:
Now I get the following error:
cp: cannot stat 'dalvikvm': No such file or direcotry
cp: cannot stat 'libdvm.so': No such file or directory
cp: cannot stat 'libnativehelper.so': No such file or directory
The system cannot find the path specified.
Click to expand...
Click to collapse
thats because you didn't define where to copy them from... where are you copying those from? put the path before the files
regaw_leinad said:
thats because you didn't define where to copy them from... where are you copying those from? put the path before the files
Click to expand...
Click to collapse
Ah hah...
Because I'm doing through the shell... the change directory command does nothing...
Gotcha..
Code:
@ECHO OFF
adb remount
adb shell mkdir /sdcard/jit
adb shell mkdir /sdcard/dalbk
adb shell mkdir /sdcard/JIT/bin
adb push libdvm.so /sdcard/JIT/libdvm.so
adb push libnativehelper.so /sdcard/JIT/libnativehelper.so
adb push dalvikvm /sdcard/JIT/bin/dalvikvm
adb pull /system/build.prop build.prop_backup
adb push build.prop_JIT /system/build.prop
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
adb shell cp /system/build.prop /sdcard/dalbk/
adb shell cp /system/bin/dalvikvm /sdcard/dalbk/
adb shell cp /system/lib/libdvm.so /sdcard/dalbk/
adb shell cp /system/lib/libnativehelper.so /sdcard/dalbk
adb shell cp -f /sdcard/jit/bin/dalvikvm /system/bin
adb shell chmod 755 /system/bin/dalvikvm
adb shell cp -f /sdcard/jit/libdvm.so /system/lib/
adb shell cp -f /sdcard/jit/libnativehelper.so /system/lib/
adb shell cat build.prop >/system/build.prop
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
Now the only error is:
"They system cannot find the path specified"
I have no idea what though, going to start taking one line off at a time.
EDIT:
adb shell cat.build.prop >/system/build.prop
This is causing the error.
poor_red_neck said:
Ah hah...
Because I'm doing through the shell... the change directory command does nothing...
Gotcha..
Code:
@ECHO OFF
adb remount
adb shell mkdir /sdcard/jit
adb shell mkdir /sdcard/dalbk
adb shell mkdir /sdcard/JIT/bin
adb push libdvm.so /sdcard/JIT/libdvm.so
adb push libnativehelper.so /sdcard/JIT/libnativehelper.so
adb push dalvikvm /sdcard/JIT/bin/dalvikvm
adb pull /system/build.prop build.prop_backup
adb push build.prop_JIT /system/build.prop
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
adb shell cp /system/build.prop /sdcard/dalbk/
adb shell cp /system/bin/dalvikvm /sdcard/dalbk/
adb shell cp /system/lib/libdvm.so /sdcard/dalbk/
adb shell cp /system/lib/libnativehelper.so /sdcard/dalbk
adb shell cp -f /sdcard/jit/bin/dalvikvm /system/bin
adb shell chmod 755 /system/bin/dalvikvm
adb shell cp -f /sdcard/jit/libdvm.so /system/lib/
adb shell cp -f /sdcard/jit/libnativehelper.so /system/lib/
adb shell cat.build.prop >/system/build.prop
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
Click to expand...
Click to collapse
yup that looks better
make sure you define everything like that, because, as you said, cd wont do anything when used in the shell in a bat
let me know if you have any more questions/problems. pm me your gtalk if you have one too.
poor_red_neck said:
Ah hah...
Because I'm doing through the shell... the change directory command does nothing...
Gotcha..
Code:
@ECHO OFF
adb remount
adb shell mkdir /sdcard/jit
adb shell mkdir /sdcard/dalbk
adb shell mkdir /sdcard/JIT/bin
adb push libdvm.so /sdcard/JIT/libdvm.so
adb push libnativehelper.so /sdcard/JIT/libnativehelper.so
adb push dalvikvm /sdcard/JIT/bin/dalvikvm
adb pull /system/build.prop build.prop_backup
adb push build.prop_JIT /system/build.prop
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
adb shell cp /system/build.prop /sdcard/dalbk/
adb shell cp /system/bin/dalvikvm /sdcard/dalbk/
adb shell cp /system/lib/libdvm.so /sdcard/dalbk/
adb shell cp /system/lib/libnativehelper.so /sdcard/dalbk
adb shell cp -f /sdcard/jit/bin/dalvikvm /system/bin
adb shell chmod 755 /system/bin/dalvikvm
adb shell cp -f /sdcard/jit/libdvm.so /system/lib/
adb shell cp -f /sdcard/jit/libnativehelper.so /system/lib/
adb shell cat.build.prop >/system/build.prop
adb shell chmod 644 /system/lib/libdvm.so
adb shell chmod 644 /system/lib/libnativehelper.so
adb shell chmod 666 /system/build.prop
adb shell sync
Now the only error is:
"They system cannot find the path specified"
I have no idea what though, going to start taking one line off at a time.
Click to expand...
Click to collapse
just copy paste "pause" between the lines.. its quicker that way, and you can see where it fails.
poor_red_neck said:
Ah hah...
adb shell cat.build.prop >/system/build.prop
This is causing the error.
Click to expand...
Click to collapse
this should be
Code:
adb shell cat build.prop >/system/build.prop
no period between cat and build
EDIT:
AND you need to specify the path of the first build.prop, because what that is doing is combining the two build.props
regaw_leinad said:
this should be
Code:
adb shell cat build.prop >/system/build.prop
no period between cat and build
EDIT:
AND you need to specify the path of the first build.prop, because what that is doing is combining the two build.props
Click to expand...
Click to collapse
I JUST found that....
should be /sdcard/jit/build.prop
Let me try that.
Hmm, there is no build.prop that is placed in the /sdcard/jit folder.
The original code is here:
This will enable jit on your phone.
Code:
cd /sdcard/jit/bin
cp -f dalvikvm /system/bin/
busybox chmod 755 /system/bin/dalvikvm
cd /sdcard/jit
cp -f libdvm.so /system/lib/
cp -f libnativehelper.so /system/lib/
cat build.prop >/system/build.prop
chmod 644 /system/lib/libdvm.so
chmod 644 /system/lib/libnativehelper.so
chmod 666 /system/build.prop
sync
reboot
Judging by the last cd... there should be one in /sdcard/jit
so I'm new to scripting, and I have a TON of lg optimus S's to root for work. So I figured I'd write a script to make life easy. I know all the shell commands are correct as if I manually type everything in it works. What happens is it gets through gingerbreak exploit and when the prompt returns # - everything seems to go to hell.
Here is my script I am using. I'm using Kubuntu 11.04 writing it in Kate, name of my script is Script2 and I'm executing it in bash via $sh Script2
echo "removing TMP directory";adb shell rm -r /data/local/tmp
echo "creating TMP directory";adb shell mkdir /data/local/tmp
echo "pushing gingerbreak";adb push gingerbreak /data/local/tmp/gingerbreak
echo "CD TMP";adb shell cd /data/local/tmp
echo "CHMOD TMP";adb shell chmod 777 /data/local/tmp/*
echo "running gingerbreak";adb shell /data/local/tmp/gingerbreak &
sleep 32
adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock5 /system
adb shell cat /sdcard/flash_image > /system/bin/flash_image
adb shell chmod 755 /system/bin/flash_image
adb shell mount -o remount,ro -t yaffs2 /dev/block/mtdblock5 /system
adb shell flash_image recovery /sdcard/xionia_cwma_12518.6.img
adb shell reboot recovery
I've tried with out sleep command and also with out "&" at the end of gingerbreak, and when I do that and it returns # it seems like no commands will work, even if I type them in it returns just a blank line with out #.
With that current script after sleep 32, it returns #, few seconds later it tries to mount and I get (including the end of gingerbreak exploit).
[!] dance forever my only one
# mount: Operation not permitted
Script2: 9: cannot create /system/bin/flash_image: Directory nonexistent
Unable to chmod /system/bin/flash_image Read-only file system
mount -o: permission denied
reboot: Operation not permitted
then it returns me to bash$
Thanks!
So something interesting, I've been playing with this for awhile, and I took everything out past the
adb shell /data/local/tmp/gingerbreak
it seems if I run it as
bash$ adb shell /data/local/tmp/gingerbreak
vs
bash$ adb shell
$ cd /data/local/tmp
$ ./gingerbreak
when # is returned, the first option won't take any commands its like it hangs, if I type out the next command it will just return a blank line with out $ or #, I have to forcibly end the process by CTRL+C and it will return me to bash, if I do the second option it works and I can enter the next command in and it takes and returns me to #. Anyone know why this is? I'm pretty sure this is the problem.
I would happily use the second option, but I'm not sure how to get the script to take any android shell commands without a "adb shell" infront. If anyone knows how to get around this, that would be awesome =)
Hi Androider’s,
If Carrier IQ has bothered you like it bugged the heck out of me, I have a solution for you. This is not for new users to try. I may try and create an app for this!
1) Create a text file (ciq-off) on your Linux system using the provided code. Windows users should use Notepad++ .(Can’t have any pesky carriage return/line feeds in the file)
2) Use “adb push” to store it on your SD card of your phone. (If you don’t know what adb is, you should have someone help you.)
3) Give the file execute permissions then run the file. ( chmod 644 ciq-off)
4) Your phone should reboot and Carrier IQ will be disabled not to return, even after reboot. (Note: Your carrier can remotely start the app.)
In the future posting, I will attempt to remove the .so files that allows execution. This is a complicated process and the research seems to stretch far and wide at times. However, with enough people using their minds on this issue Carrier IQ will be defeated someday.
[ciq-off script]
HTML:
# Mount Filesytem Read/Write
grep " /system " /proc/mounts | awk '{system("mount -o rw,remount -t "$3" "$1" "$2)}'
#
# Enable Write to goldfish script
chmod 777 /system/etc/init.goldfish.sh
#
# Create append string for startup script
str=$(cat <<EOF
# Carrier IQ Disabler v1.0
su -c "setprop service.iq.active 0"
su -c "pm disable android/com.carrieriq.iqagent.service.IQService"
su -c "pm disable android/com.carrieriq.iqagent.service.receivers.BootCompletedReceiver"
su -c "pm disable android/com.carrieriq.iqagent.service.ui.DebugSettings"
su -c "pm disable android/com.carrieriq.iqagent.service.ui.ShowMessage"
su -c "pm disable android/com.carrieriq.iqagent.client.NativeClient"
su -c "pm disable android/com.carrieriq.iqagent.stdmetrics.survey.android.QuestionnaireLaunchActivity"
su -c "pm disable android/com.carrieriq.iqagent.stdmetrics.survey.android.QuestionnaireActivity"
EOF
)#
# Return script previous permissions
chmod 550 /system/etc/init.goldfish.sh
#
# Reboot Phone
reboot
References:
http://forum.xda-developers.com/showthread.php?t=1373394
http://android-tricks.blogspot.com/2009/01/mount-filesystem-read-write.html
Users:
dmanbuhnik
JoshMiers
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Introducing (belatedly) this ...
It's a basically the SK Wynn S150 phone.
There are some work done on customizing in various Chinese and Brazilian forums most notably a CWM port but it seems to end there, and no updates.
Hopefully we can compile some more development for this mobile, especially now there was a huge price drop in our area for it which should mean a lot more of these are floating around waiting for a community development (in English please thank you!).
Most interest to me is rooting, which is at present accomplished using the mentioned CWM recovery option. This puts a quite outdated su binary and quite useless Superuser.apk into the phone giving it basic root functions but no prompts at all, and incorrect UID for root.
With some trial and error I was able to accomplish updating the su and Superuser.apk using existing tools and procedures already used in other mobiles. Details to follow in the next post.
How-to: Updating su and Superuser of Rooted Cherry W900 [draft 00]
Consider this a first draft - but it is still my effort though, so no copying! lol
Here we go!
BTW
STANDARD DISCLAIMERS APPLY with regard to modding, etc paraphrasing CM "Here Be Dragons ..." etc etc
Pre-requisites:
1. Rooted W900 using the builtin CWM function; >>> see this (translate if first) for detals : LINK
2. OS with adb properly installed and able to detect the W900;
3. Recent versions os the su binary, Superuser.apk and (optionally) busybox, I used chanifire's CWM zip update and zeppelins busybox version;
4. Familiarity with the adb commands and the terminal prompt in general;
Procedure:
A. Extract the su binary and Superuser app (and busybox) in a folder;
B. Start a Terminal/ Command Prompt (administrator mode in windows i think is required);
C. Attach the phone make sure it is useable with adb, enter the following in the terminal window:
D. Start an ADB shell;
Code:
<prompt>
adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
Cherry-Mobile-W900 device
E. Start an ADB shell;
Code:
adb shell
$
F. Start a root prompt;
Code:
$ su
#
F.1. Check user ID of root prompt pre-mod as reference;
Code:
# id
Note that there is 0/ root UID/ GID mentioned as expected;
G. Prepare for update, creating symlink, enter line per line in the adb shell root prompt;
Code:
# mv /data/local/tmp /data/local/tmp.bak
# ln -s /data /data/local/tmp
# reboot
H. Phone will reboot, repeat steps E-F again, then the following to add emulator mode:
Code:
# rm /data/local.prop > nul
# echo \"ro.kernel.qemu=1\" > /data/local.prop
# reboot
I. Phone will reboot into emulator mode now, repeat steps E-F again, then the following:
Code:
# id
********************************************************************
One of the IDs shown should be 0/ root
//IF ID IS 0/root THEN CONTINUE, ELSE START OVER:
Go back to CWM , then unRoot, then Root again, then restart from A
********************************************************************
J. For now exit adb shell, type exit on both adb shell prompts to return to your OS terminal;
Code:
# exit
$ exit
<prompt>
K. adb push su, Superuser.apk and busybox to phone; enter in your OS terminal prompt;
Code:
adb push su /data/local/tmp.bak/
adb push Superuser.apk /data/local/tmp.bak/
adb push busybox /data/local/tmp.bak/
L. Return to adb shell, re-do steps E-F;
M. Mount system parition as RW;
Code:
# mount -o remount rw /system
N.Copy respective files to proper locations and set correct owner/ permissions;
Code:
# cd /data/local/tmp.bak/
# rm /system/bin/su
# dd if=su of=/system/bin/su
# chown 0.0 /system/bin/su
# chmod 06755 /system/bin/su
# ls -l /system/bin/su <<< check first
# -rwsr-sr-x root root 22364 2008-02-29 02:33 su <<< this should be the result
Code:
# dd if=Superuser.apk of=/system/app/Superuser.apk
# chown 0.0 /system/app/Superuser.apk
# chmod 0644 /system/app/Superuser.apk
*********
N.1: following is optional but highly recommended - busybox installation
*********
Code:
# dd if=busybox of=/system/xbin/busybox
# chown 0.0 /system/xbin/busybox
# chmod 0755 /system/xbin/busybox
# /system/xbin/busybox --install -s /system/xbin
O. Cleanup, remove emulator mode, temp files;
Code:
# rm /data/local.prop
# rm /data/local/tmp
# mv /data/local/tmp.bak /data/local/tmp
# reboot
After that final reboot, you should now have a proper working Superuser app with prompts and everythings, and root apps like Titanium and link2sd work with no warnings.
On review, I really thought that step G. is an extraneous step, but all these were the steps I did to make it work. I did go thru a few trials before things finally stuck though so for completeness that step is still in there just in case. - I never could do step H without step G I think.
Filipino??? Ive installed sdk and its components, usb drivers. I have adb working, but when i tried to find the connected devices in cmd it shows that there is no device connected.
Ive type this code:
adb devices
List of devices attached:
and it shows nothing
Can you teach me how to configure the device or the adb?
Failed to get shell root
Mine says failed to get shell root, I also tried the superoneclick method and the sk-150 bat file thing, the latter just installs Superuser Superuser Elite and the Root Explorer but doesnt actually root it. Is there any other method out there to actually root this thing?
nah got it rooted using recovery method, now following your instructions, SUPER THANKS!!!
try this to root www.symbianize.com/showthread.php?t=811934
@ashralee
how did you root your phone?
mine wont work?
do you have to do something like
fastory reset or or have to turn on/off
something?
i just followed the steps on rootunlock
and root recovery but it both dont work
on my phone.
pls help me
thanks in advance.
http://www.facebook.com/groups/cher...group/284336801681086/?notif_t=group_activity
try this fb group maybe someone will help you how to root your phone
Help about cwm..i just backed up my stock rom b4 flashing to xperia custom rom.but when i tried to revert it back to my stock rom..cwm says md5 mismatch..what seems to be the problem?please anyone,,help me with this matter..thanks in advance..
Sent from my R800 using xda app-developers app