yashsingh1/xdaforums huggingface dataset:
[G1 Q&A, Help & Troubleshooting] imakamasta:
well i have had cyogenmod 3.6.8.1 for awhile and everything works perfectly and smoothly but i just turned off my phone to switch to my new 2400mah battery and when i turned it back on i got past the splash screen but now its stuck at the android boot loop so i thought wait acouple minutes...and well.. no luck. i dont get it...any ideas?
[G1 Q&A, Help & Troubleshooting] nephron:
try fixing the ext file system. It could have been messed up if you just took the battery out. If that doesnt work, try wiping and reflashing the ROM. Btw, does it work with the normal battery in?
[G1 Q&A, Help & Troubleshooting] pistol4413:
wipe

if you can get into recovery then u know everything is fine. if u can get the update file for the rom on ur sd then wipe and flash it see wht happens then
[G1 Q&A, Help & Troubleshooting] DirectMatrix:
Usually these problems can be taken care of with a wipe and a reflash of the ROM. Hopefully you performed a nandroid backup and can restore your settings. If not, there is really no other way but to wipe and reflash and lose your data.
[G1 Q&A, Help & Troubleshooting] imakamasta:
well i shut the phone down properly but i tried what you said anyways... and on the first try it had an error and told me to run it manually..but i tried again and it worked so i rebooted but still no luck. i did a nandroid backup recently...could that possibly have anything to do with it?

and also...when i did the nandroid awhile ago...it got stuck at the boot loop as well...so i did the wipe/update and it worked. and now i turned off my phone for the battery change and this happens....it seems like maybe its something with the rom? idk...i dont see why a nandroid would mess anything up
[G1 Q&A, Help & Troubleshooting] nephron:
i suggest to wipe and reflash. That should fix it.
[G1 Q&A, Help & Troubleshooting] imakamasta:
well yea...i was gonna do that no matter what and that would prob fix it. but this has happened to me before with this rom. i turn it off, everythings fine, then i turn it back on and bam, boot loop. idk. i guess i just should never turn off my phone lol.
[G1 Q&A, Help & Troubleshooting] B-man007:
Set up ADB using the guide in the sticky, and connect your phone through USB

type

adb logcat

as you boot your phone

see if anything is repeating. if nothing ever shows up, its possible that the battery could be defective
[G1 Q&A, Help & Troubleshooting] imakamasta:
well after wipe/reflash it works....and all...but after restart same thing...im thinking something might be wrong with my ext2 partition...im trying to reformat it via comp and paragon partition manager and it wont let me..it wont even start the reformat...idk
[G1 Q&A, Help & Troubleshooting] B-man007:
try this method:

http://xdaforums.com/showthread.php?t=535797&highlight=wipe+ext

But after you install cyans recovery image (or if you already have it installed)

* FSCK for ext filesystems from the menu

if that doesnt work then wipe
[G1 Apps and Games] wesbalmer:
I have seen this online many times. I think it could be fairly easy, assuming android uses python scripts, to install this to the program directory. No experience making things like this work, hoping someone can share their input. This would be a cool command to use in terminal.

http://www.beigerecords.com/cory/Things_I_Made/PizzaParty
[G1 Apps and Games] jashsu:
There is a python version apparently, which might work with the Android Scripting Environment. Unfortunately the only service provider it works with seems to be Dominoes, and in the half dozen times ive eaten Dominoes pizza, i've never been satisfied.
[Mogul, XV6800 ROM Development] royitoroy:
i was editin my titanium with the showaco Chome Editor and just disable a few of thing like, Cwindows, CwelcomeCenter, CTestPlugin, Chome, and ChomeFavs, and just appear in the enable panel list an "avs" then close the Chome Editor, and the titanium disappear... next did a soft reset and nothing.. my titanium not start.. maybe just did something wrong.. please help me.. :(:(
[Mogul, XV6800 ROM Development] drkfngthdragnlrd:
You definitely broke Titanium with what you edited. The main items in the registry that'll fully break Titanium are in the main CHome Directory such as ExtensibilityXML, Plugins, & Pages in the separate plugin Directories. Make sure all plugins/pages are separated by a semi-colon (;), not a comma (,).
[Mogul, XV6800 ROM Development] royitoroy:
look an image it more than words jeje :p
[Mogul, XV6800 ROM Development] royitoroy:
think that maybe will do a hard reset... its a really pity cause my rom was very good tuned up... or loof for another rom
[Mogul, XV6800 ROM Development] drkfngthdragnlrd:
You broke both XML values. There's no " before CClock & get rid of the F.
[Mogul, XV6800 ROM Development] royitoroy:
now its working angain man ur a genius :)

Thank You amigo
[Mogul, XV6800 ROM Development] drkfngthdragnlrd:
No problem, glad to be of help.
[HTC Vox] soheil1223:
I want Spb Backup for my device!!!Thanks a lot!!!!
[HTC Vox] TheBo:
Here

http://www.spbsoftwarehouse.com/products/backup/?en
[G1 Android Development] overpower:
Excellent job. Can't wait till Cyanogen just packages it with his mods. :)
[G1 Android Development] firetech:
Wouldn't it also work to stick this into /data/local/bin, which is already in the PATH variable by default (at least on cyan's ROMs). Of course, that way it would disappear on wipe, but it would be easier to run the script. ;)

I tried adding a 'export PATH="$PATH:/system/sd/bin"' line to my userinit.sh, but it didn't have any effect. It probably runs too early... :(
[G1 Android Development] beast.in.black:
@firetech : Yes, you could definitely stick it in your /data/local/bin...but as you pointed out, it will be lost on wipe. In case you don't have (or want) apps2sd, then this is an option for you. I would, however, recommend apps2sd along with the symlink method I outlined in the "How to install" section.

@overpower: Thanks :D
[G1 Android Development] xhoangx:
Used your original one from CM thread. Great that you added the experimental version download option.
[G1 Android Development] devsk:
When I came to read this post, I thought you were talking about switching between multiple versions of ROMs from cyano.

Do you think this can be extended to other ROMs as well?

Do you think writing peripheral code for really installing/reinstalling a ROM version would be a good idea to add to this script? For example:

1. Backup current /system/sd, along with the nandroid backup of the system and the ROM ZIP.

2. Mark the above with a ROM version and create a folder for it on /sdcard.

3. Provide the reverse to go back and forth between ROM versions. Make the nandroid backup from the selected ROM folder the latest so that recovery can restore it, copy the ZIP file in /sdcard as update.zip in case a wipe is needed.

Right now, this is a painstaking job to toggle between 2 ROMs.
[G1 Android Development] Karolis:
If you are doing these steps in ADB, step #3 can be done much easier. Just type adb remount and that's it!

Also, at least on my phone it does not seem to want to work unless I su first.

Otherwise great script! Makes life much more easier. I like taking risks and downloading experimental ROM 15 minutes before my flight to foreign country, where if my phone is dead, I'm dead. This script will definitely allow me to do crazy stuff with more confidence :)

Oh, and I wish Cyanogen would add it to the ROM itself. At least until the OTA updater is built.
[G1 Android Development] beast.in.black:
devsk, interesting idea indeed...Let me put some thought into this

Karolis, the script needs to run as root since otherwise wget has problems. I'll make this explicit in the instructions. Also, thanks for pointing out the "adb remount" command, I've added it to the instructions
[G1 Android Development] pixel-painter:
I will try this, sounds like a great idea... thanks :)

Is there any way to add this to gscript? Since there needs to be interaction from the user, I would guess you would have to edit each time to make it work.
[G1 Android Development] cyanogen:
Yeah I will put it in 3.9.1 until we get a proper OTA updated finished.
[G1 Android Development] Karolis:
Sweet! Thank you.

Also, I know you must be sick of questions like this, but: is there an ETA for 3.9.1. I've seen you are playing with donut. Hopefully that won't postpone 3.9.1. too much...

You're the best! :)
[G1 Android Development] Karolis:
beast.in.black, I've just had an idea for the future of this script. How about posting "a call to action" ir development and theme forums asking for all devs to use the same naming convention for their roms and themes + provide checksums. That way you could expand the script beyond CM's ROMs (that is if you want).

Of course not everyone would join this cause as some people don't have server resources to post stuff and it wouldn't work with file sharing services, but hey, it's worth a try.

What do you think?
[G1 Android Development] spacezorro:
Gscriptable getcyan

I hacked mine to use...

wget -q -O- http://n0rp.chemlab.org/android/ |grep "${FNAME_PREFIX}.*${FNAME_SUFFIX}\""|sed "s/.*<a href=\"//;s/\".*//"|tail -n1

Then I got the "scripting bug" and I rewrote it a bit so it wasn't hacked up.

#!/system/bin/sh

FNAME_PREFIX="update-cm-"
FNAME_SUFFIX="-signed.zip"
MD5NAME_SUFFIX="${FNAME_SUFFIX}.md5sum"
SAVEFNAME=/sdcard/update.zip
MD5CMD="md5sum -c"
MOD_FILENAME=""
MOD_MD5NAME=""
MIRROR="http://n0rp.chemlab.org/android/"

usage()
{
echo
echo "Usage : $0 ( [VERSION] [-x] | -h )"
echo " Gets a particular version of the CyanogenMod"
echo " series of ROMs, and sticks it on your SD card"
echo " as update.zip, ready for you to flash."
echo
echo "Args :"
echo " -h - Help (This Message!)"
echo " VERSION - The CM ROM version to fetch."
echo " -x - Specify that the version you want to fetch"
echo " is an EXPERIMENTAL version."
echo
exit
}

cleanup()
{
rm -f ${SAVEFNAME}
rm -f ${MOD_FILENAME}
rm -f ${MOD_MD5NAME}
}

latest()
{
wget -q -O- ${MIRROR}${EXPER} |grep "${FNAME_PREFIX}.*${FNAME_SUFFIX}\""|sed "s/.*<a href=\"//;s/\".*//"|tail -n1
}

if [ "$1" = "-h" ];
then
usage
fi

# check if user wants an experimental build
EXPER=""
if [ "$1" == "-x" ];
then
EXPER="experimental/"
echo "Experimental build specified"
elif [ "$2" == "-x" ];
then
EXPER="experimental/"
echo "Experimental build specified"
fi

if [ -z $1 ];
then
MOD_FILENAME=`latest`
MOD_MD5NAME=${MOD_FILENAME}.md5sum
VER="Latest"
elif [ "$1" == "-x" ];
then
MOD_FILENAME=`latest`
MOD_MD5NAME=${MOD_FILENAME}.md5sum
VER="Latest Experimental"
else
MOD_FILENAME=${FNAME_PREFIX}${1}${FNAME_SUFFIX}
MOD_MD5NAME=${FNAME_PREFIX}${1}${MD5NAME_SUFFIX}
VER="${1}"
fi

cd /sdcard
echo "Deleting any previous update.zip..."
cleanup

# Download update ROM and MD5Sum
echo "Getting CyanogenMod ROM version $VER : ${MOD_FILENAME}"
echo
wget ${MIRROR}${EXPER}${MOD_FILENAME}
RES=$?
if [ ${RES} -ne 0 ];then
echo "Could not download ${MOD_FILENAME}"
echo "If you want to fetch an experimental version,"
echo "specify -x in the call to this script"
echo
echo "Nothing downloaded, exiting"
cleanup
exit
fi

# get the md5sum file
echo "Getting CyanogenMod ROM MD5 version $VER : ${MOD_MD5NAME}"
echo
wget ${MIRROR}${EXPER}${MOD_MD5NAME}
RES=$?
if [ ${RES} -ne 0 ];then
echo "Could not download ${MOD_MD5NAME}, exiting"
cleanup
exit
fi

# Verify downloaded ROM
echo "Checking ${MOD_FILENAME} MD5..."
MD5SUM_RESULT=`${MD5CMD} ${MOD_MD5NAME} | cut -d":" -f2 | grep OK`
echo " md5sum result : $MD5SUM_RESULT"

if [ ! -z $MD5SUM_RESULT ]
then
echo "${MOD_FILENAME} Downloaded Successfully"
mv ${MOD_FILENAME} ${SAVEFNAME}
rm ${MOD_MD5NAME}
echo "You may now reboot and flash"
else
echo "ERROR : ${MOD_FILENAME} Download Unsuccessful"
echo "Deleting bad download and exiting..."
cleanup
fi

So there it is...

:cool:
[G1 Android Development] Rafase282:
I haven't try this yet but so far the only think I woudl ask for besides an GUI is to be able to know what versions are out there. What if i don't know what's the new version. i woudl have to go and check online. but if we have a command on the script to tell us the roms available it woudl be easier and great. I wouldn't even ask for a GUI then.
[G1 Android Development] Binary100100:
Until there is a way to do something like LucidREM has done with his script (such as lucid -u), I think your only options are

Subscribe to his Twitter page

Bookmark his server where his updates are stored.

Subscribe or check back frequently here on XDA.

I personally do all three. :D
[G1 Android Development] Binary100100:
Recommendation

Add a "-t" for his testing builds as well.

They are not anywhere near as frequently used as experimental... but nonetheless it is still available on his server.
[G1 Android Development] indiekid97:
I added this on to the end so that the completed build would be flashed\

#Flash the Rom
echo "Rebooting and flashing update..."
echo "boot-recovery --update_package=SDCARD:update.zip" > /cache/recovery/command

reboot recovery
[G1 Android Development] Karolis:
Sounds coll that you can do that, but still, I prefer making a backup first :)
[G1 Android Development] prash:
This is amazing, thank you for making cyan updates even easier! Got it set up and running in no time!
[G1 Android Development] beast.in.black:
Karolis, this is a great idea. I'll put the call to action out :D

spacezorro, you have already done what was on my roadmap for this script :D Thank you very much indeed. I am right now hacking the script up to recognize "latest" as a keyword and testing the changes now, and will update the script and post a fresh download (in the original post) once i've tested it out.

Rafase282, I've put this on the roadmap as the next thing to work on.

Excellent recommendation, will add it to the script.

Nice, will make it an option in the script to automatically reboot and flash if the md5sum checks out OK.

Thanks to everyone for all the great ideas :cool:

@cyanogen: Since you'll be adding this to your ROM, how do I keep you informed of changes to the script? PM you or something?
[G1 Android Development] spacezorro:
Gscript what versions are there?

This in gscript will list the latest 10 available stable versions and any dev versions

echo "Cyanogen Stable"
wget -q -O- http://n0rp.chemlab.org/android/ |grep "update-cm-.*-signed\.zip\""|sed "s/.*<a href=\"//;s/\".*//;s/.*cm-//;s/-.*//"|tail -n10
echo "Cyanogen Development"
wget -q -O- http://n0rp.chemlab.org/android/experimental/ |grep "update-cm-.*-signed\.zip\""|sed "s/.*<a href=\"//;s/\".*//;s/.*cm-//;s/-.*//"

gscript is your friend
[G1 Android Development] mjb337:
Can some one instruct me on getting this script to run without adb? Don't have adb installed on my G1 how can I run the script from terminal...thanks...michaelbrown911@gmail.com
[G1 Android Development] beast.in.black:
@Rafase282: I'm putting in a list option into the script, which is based on spacezorro's wget command snippets

@mjb337: You don't need adb at all, in fact i run the script directly from the phone. Depending on how you're set up, though, you might need adb to push the script to the phone. I just use scp for that, myself, but I would recommend that you use adb to push the script on to your phone.

Here's a link to an adb howto:

http://xdaforums.com/showthread.php?t=502010

Once the script is on your phone, then you just open up the terminal app on the phone and type the following (make sure you have wifi/data connectivity first):

su
/system/sd/getcyan 3.6.8.1

This will fetch version 3.6.8.1 (which is the latest stable as of this writing). You can then reboot into recovery mode and flash the new ROM :)
[G1 Android Development] mjb337:
Thankz for the big help i really appreciate this...
[G1 Android Development] Karolis:
I think it's worth noting that if you re-flash the ROM, system link will disappear, so you will need to repeat step #3.
[G1 Android Development] mjb337:
I hate to bother you so early on this Sunday morning but here's the deal I'm already runing cyan 3.9 rom I open up system and browsed through the system files and I discovered the (android_adb) (android_adb_enabled) so is this telling me I already have adb installed? If so in terminal I type the push adb codes and doing so I always get the adb not found can the tell me what's going on? (G1-2gb-sdcard-FAT32/EXT2)
[G1 Android Development] Karolis:
ADB is something you run from your computer, not from your phone.

Read here http://xdaforums.com/showthread.php?t=502010 and here http://xdaforums.com/showthread.php?t=517874
[G1 Android Development] beast.in.black:
Updated version available

Updated 2009-Jul-29 to v2.0. See first post in this thread for details

@cyanogen : Please use this version in future ROMs
[G1 Android Development] ttabbal:
Wow.. Nice stuff in 2.0! Thanks for the work man!
[G1 Android Development] beast.in.black:
You're most welcome :) It came about because of all the great ideas people had in this thread. Waiting for the next set of ideas/requests from you guys :D
[G1 Android Development] ttabbal:
Here's one, turn off renaming the download to update.zip. With recovery 1.4 we don't need it anymore. :D

And all true followers of the Cyan way have upgraded to 1.4, right? :p
[G1 Android Development] beast.in.black:
Upgraded to 2.1, minor changes. See first post.
[G1 Android Development] beast.in.black:
Ah. Fascinating idea. Let me play with this feature of 1.4 and noodle this idea a bit...

The first thing that comes to mind is that I'll have to deal with those who don't have 1.4, and yet choose that option...whereupon when they boot into recovery the lack of an update.zip will leave them scratching their heads in stark raving confusion...
[G1 Android Development] Karolis:
This didn't make into 3.9.2 - correct?
[G1 Android Development] njuncos:
I agree with ttabbal

No need to change the filename to update.zip anymore. Most people in these forums have upgraded to recovery 1.4 I would assume. This makes it so much nicer when in recovery cause you can see all your zips. I understand the need for backward compatibility though...
[G1 Android Development] beast.in.black:
Correct. 2.0 made it into 3.9.2, not 2.1. However, there is no burning need to upgrade to 2.1 because the changes are mostly cosmetic. So you should be good until the next ROM anyway :)

Yes. Let me see if there is a way to determine which recovery image the user has, from within the script. Then I can go ahead and add that option, having the behavior that it will only take effect if the recovery image is 1.4 or greater :)
[G1 Android Development] :
I'm getting a bad address report when trying anything. Says there's nothing to download.
[G1 Android Development] tearsphere:
Make an App ??

I might be a little new, but have I have been keeping up with Cyan's MODs and love this concept. Just wondering if there is a way to make an APP of this, so I can add it to my home screen. I put it in GScript and it works great, but don't want to have to start GScript everytime I wanna check for a new mod.. Please help.
[G1 Android Development] Karolis:
You probably didn't su first.

OTA updater is in Cyanogen's plans. He wants to integrate it with the system instead of making it a separate app.
[G1 Android Development] beast.in.black:
Like Karolis says, you probably didn't su in your terminal/adbshell. Also, did you first check that you have connectivity to the internet and that you are able to surf the market or use the browser? Sometimes (especially if you're running the experimental ROMs) I have found that even though you have a wifi icon in the status bar, you're not actually connected to the wifi network, and then you need turn off and then turn on your wifi to get proper connectivity.

I just downloaded the source code for the JF updater app, with a view to modifying it to do just this - become a CM updater app :) This may take a little time though, since I have a very demanding job and not too much free time :(

Do you know who, if anyone, is working on this? Sounds like I could take this on, and make an OTA updater instead of an app. I'll start researching on how to do this.
[G1 Android Development] njuncos:
I believe that Cyanogen will incorporate the OTA updater into his builds himself, unless that is, someone like you can get this done first. To be honest, Cyanogen has his plate pretty full it seems with all the other features and tweaks he is constantly doing.

So maybe he wouldn't mind if you worked on this feature on your own...who knows? I think the more working on this Cyanogen(AKA "community)Mod the better!!
[G1 Android Development] mjb337:
Can one su this script in terminal instead of adb? Don't have abd and don't have my lap-top to create adb @ this moment its being restored so is there anyway to do this in terminal to get it up and running?...Thankz
[G1 Android Development] kellz22:
SUPER G1 is better dude haha
[G1 Android Development] beast.in.black:
Hm. If you're working purely on your phone, you can do the following (first ensure you have internet connectivity, either using EDGE/3G or Wifi):

Download the "getcyan.zip" using DownloadCrutch along with your browser. This should put "getcyan.zip" on your SD card, on the /sdcard partition.

Open up the terminal app and type

su

to get a root shell

Unzip the file using

cd /sdcard
unzip getcyan.zip

Copy the getcyan script to /system/bin after mounting your /system as read-write

mount -o rw,remount -t yaffs2 /system
cp /sdcard/getcyan /system/bin/getcyan

This should get the script into your /system/bin folder, from where you can use it.
[G1 Android Development] :
Yeah, I didn't su first. Thanks. Anyway that the script can fetch the latest version of itself? To update itself would be great so we wouldn't have to wait to get the timing right for you and cyan on getting the latest, newest version on the phone easily.
[G1 Android Development] beast.in.black:
I don't have a website hosting solution yet, which is why the script is being disseminated as a zip file attachment in the first post. But I plan to get a hosting solution going within the next couple of weeks. Auto-update of itself was one of the reasons I put in the script version number option in v2.1 :D
[G1 Android Development] dixxa:
I think there is a problem,

This is what I get :

# getcyan -L -x

getcyan -L -x

LIST : LATEST : Contacting server to determine which ROM is the latest...

wget: bad address 'n0rp.chemlab.org'

ROM List for Option "latest" from the EXPERIMENTAL ROMs:

-------------------------------------------------------------

#

a permission problem ?

I've looked many times to the script and can't see where is the problem

EDIT : I've just noticed, I had no network .... I feel so noob... sorry. It actually work !
[G1 Android Development] Karolis:
I actually have the same problem even on 3G network. Weird.

I'll try to upgrade to the latest version of the script when I'm home.
[G1 Android Development] dixxa:
yeah same here it works only in wifi...
[G1 Android Development] Karolis:
Got it! Will have to try that when I'm home.
[G1 Android Development] beast.in.black:
I tested it out with my data network with my wifi off. I'm on AT&T and so can't use 3G on my G1 (the phone can't access the AT&T 3G frequency band), but it works fine with EDGE; I'm able to list and fetch ROMs with no problems.

If you're having problems using data mode, first check whether you have connectivity. In terminal, you can type

ping 4.2.2.2

and see if you get a ping reply. If you do, and the getcyan script still doesn't work, then something weird is going on.

I assume that when you guys are using your data mode, other apps which require connectivity (browser, market etc) continue to function properly....?
[G1 Android Development] Karolis:
Everything works just fine BUT the script. I mean, I can download files, I just can't list them.

Does it use some non-standard port to do the look-up? T-Mobile UK is known to block ports.
[G1 Android Development] beast.in.black:
Nope, no special ports. It uses wget for both the list and the fetch operations. If, using the script, you can download ROMs but not list them, that is indeed weird; more so if it works in wifi but not in data mode.

Let me see if i can get a repro mechanism for this problem...