yashsingh1/xdaforums huggingface dataset:
[Touch Diamond, MDA Compact IV ROM Development] davidwong:
thanks to bro help, i have sucessfully flash the china (chinese) (21890) 6.5 titanium 2.1 clean OS on the diamond, cool was pretty fast and low mem usage abt 54% - 57%

and the full screen chinese wrting and the chinese wording for 90% of the icons are cool, my mom now starting to learn to use this phone, breathing new life to my diamond. :D

the only strange thing is there is no connection wizard to setup the phone network, it will assume you are using either china mobile or china unicom? hence my nodata will not work... cos no data couldnt detect any data connection hence have an error, i have to call singtel to deactivate all GPRS (incl MMS) services to my mom (my 2nd line) line.

Anyway one knows where can i download the network connection wizard cab?

Thanks in Advance.
[Touch Diamond, MDA Compact IV ROM Development] davidwong:
thanks all bro,

i managed to find a standalone cab for the connection wizards :)
[G1 Android Development] Ace42:
Autosign doesnt need to be in the SDK place, I had it in my music folder and it worked fine.I accidentally formatted my PC last night and dont have the SDK installed but autosign works for me so im happy.

Note to OP-You cant brick from flashing any 32B rom, you would only get a blank screen that stays..which some seem to call soft-brick, i call it nonsense though.
[G1 Android Development] migalito:
Thanks for this excellent tutorial ;)
[G1 Android Development] speedysilwady:
Really? I had no idea that the SDK wasnt required, ill remove that.

and yeah i know its usually a soft brick, if anything, and youre right its nonsense, and can be solved using a nandroid backup and wiping the proper things, but im playing it safe with that disclaimer just like the rom devs do lol

.

Youre welcome! I hope it works out for you!
[G1 Android Development] cg87:
Will this work with the Super D rom?
[G1 Android Development] speedysilwady:
yes! I tried it on Super D!
[G1 Android Development] cg87:
Then I'm so confused. If it's possible, why does the rom still require the Danger SPL? Why didn't bbuchacher make it so it doesn't require the Danger SPL? Doesn't make any sense to me. Can someone please enlighten me?
[G1 Android Development] speedysilwady:
Well, to be honest, im not sure why, but im assuming some developers like to include features and apps that arent necessarily required for the rom to run properly but to make their rom more appealing to users, than other roms. keeping those apps in system prevents those apps from disappearing after you wipe your phone/ext. Plus devs always keep ringtones and sounds included in their roms for completeness's sake.

Now a Hero ROM on the other hand is loaded with system apps that cant be deleted and i dont think theyll ever fit on a Stock SPL, except maybe MicroHero, but im not sure.

But for whatever reason, a lot of regular ROMs are fat and bloated with apps and extras that dont necessarily have to be saved on the system partition,so the best thing to do is shrink those roms down till they fit, if you can't or dont want to upgrade your SPL.
[G1 Android Development] lbcoder:
How to make it work *WITHOUT TRIMMING*

Take a look at your update.zip archive.

Probably has 4 things in the root:

boot.img

system

META-INF

data

If system is greater than about 67MB (or lets say 60 just to be real safe...), then create ANOTHER directory and call it "cache".

Now MOVE /system/app into /cache/

You now have the space cleared up, but it still won't work.

So go into META-INF/com/google/android and edit the script "update-script".

just below the line where it says "format CACHE:", add these lines:

copy_dir PACKAGE:cache CACHE:

set_perm_recursive 0 0 0755 0644 CACHE:

symlink /cache/app SYSTEM:app

Wow, did we just move the extra crap into cache? Yep.

May require slight modification. Use your head.
[G1 Android Development] Dr-b:
Seems someone else is in the same boat as I am.

Can't update my radio, looks like some kind of hardware problem almost. Tried everything in any possible way.

So it looks like we're stuck with the standard or engineering SPL, which is fine but means there are some restrictions.

I'll try some of the tips you gave and flash something besides Cyanogenmod tonight. :)
[G1 Android Development] xile6:
I thought about that but I'm not 2 good @ programing unless its cars/video console. But doesn't the cache get used for something after the rom is up and running? Or is it only for ota updates?

If only for ota updates how come the danger spl doesn't give you 120mb or so since cache and system are 67mb each
[G1 Android Development] Dr-b:
That's a very good question. Just tried it and it seems to work, though. It's booting as we speak. All system/app files in the cache directory.

EDIT: Actually, all apps seem to force close on boot. So I'll just try it the regular way I guess.
[G1 Android Development] xile6:
try the Fix apk uid mismatches maybe idk ill try it in a lil bit

*update*

Got a boot loop on openeclair1.0.1 not sure why but dont got the time to fig. it out right now.

also why does a boot loop drain the crap out of your battery?
[G1 Android Development] speedysilwady:
I remember you suggested this a while back when I asked about eclair roms on stock spl, I'm guessing if you use this method and wipe, you'll have to reflash the rom because those system apps are gone, correct?
[G1 Android Development] xile6:
yea anytime you wipe you would have to reflash the rom because a wipe deletes. data and cache folder
[G1 Android Development] lbcoder:
Might be a minor goofup on the permissions. Just verify the permissions and it will be fine.
[G1 Android Development] lbcoder:
What programming?

There is no programming involved in this.

Mainly cache is for OTA, but also some other crap related to the download manager.

As for the deathspl allocation, it puts *some* of the /cache into /system, *some* of the /cache into /data, and the balance of /cache remains in /cache.
[G1 Android Development] lbcoder:
Why would you want to wipe it?

Note: you could just create an update.zip with an update-script that says ONLY "format DATA:" That would wipe the data withOUT wiping the /cache. Maybe name it "betterwipe.zip" and put it on your sdcard. Boot into recovery and apply "betterwipe.zip".
[G1 Android Development] speedysilwady:
true, with fix permissions, and wipe dalvik, there really isnt much use in wiping data anymore, but would fix permissions still work if the apps are in cache? i know theyre syslinked, but im not sure how that works with the fix_permissions script. sorry if im asking dumb questions, im still learning.

Ill try your idea a really big rom and see if it works.
[G1 Android Development] speedysilwady:
just wanted to confirm that all Hero ROMs seem to require Danger SPL, I see no way of shrinking system anywhere close to 67 or less.

But my method should still work on any eclair or donut rom. I still havent had a chance to try lbcoder's method though it should work. if people can get lbcoders method to work ill add it to the first post!
[G1 Android Development] lbcoder:
It definitely works. I'm just not going to spoon feed the itty-bitty details about getting the permissions set right on every file.
[G1 Android Development] speedysilwady:
im guessing one could easily modify a fix_permissions script to search through the cache directory instead of the system/apps, correct? or would fix permissions work the same without modifications because its syslinked?
[G1 Android Development] lbcoder:
fix_permissions definitely will NOT do it in its present form. It doesn't change any permissions on the "app" directory, just on the HOME directories. What it does is it parses the /data/system/packages.xml file to determine the UID for each application and does a chown -R /data/data/{its home directory}.

It also isn't necessary to make it part of a separate fix_permissions script since the update-script has this capability.
[G1 Android Development] xile6:
how is app_s done different is that because it is under data/ ?
[G1 Android Development] yokonunz:
i dunno how update flashing work. but if you remove some files is there no update script that going to fail? because it is missing some files?
[G1 Android Development] xile6:
anytime you change an update.zip you gotta resign it or it will fail because of checksum

The update script just tells it what to do. where the files should go etc.
[G1 Android Development] yokonunz:
i extracted a kingklick 2.1 /system is 57 MB but all the apps are in data folder so this rom is ok? or i can also remove something in /data ?thanks
[G1 Android Development] xile6:
as long as the system is under 65mb you shoul dbe good. If the apps are in data/app_s then they will be added to your sd card which does make the phone go a little bit slower
[G1 Android Development] lbcoder:
Yes. There is already a /data/app directory, which is used for storing user-installed applications. They obviously couldn't mess with this since more stuff would get screwed up, so they created a /data/app_s and created a symlink /system/app-->/data/app_s
[G1 Android Development] xile6:
ok correct me if Im wrong but couldnt you take any rom that needs the danger spl convert it into app_s with this script and moving system/app to data/app_s

copy_dir PACKAGE:data DATA:

set_perm 1000 1000 0771 DATA:app

delete SYSTEM:app

symlink /data/app_s SYSTEM:app

I believe so but need another input on it.

and yea i know it will run slower due to card transfer.
[G1 Android Development] schwiz:
deleating ringtones from the media folder is keeping me from installing, verification fails when it doesn't find certain ringtones and alarms. Also I wanted to add my own ringtone but the verification fails when I try to do that too, saying no digest for the new ringtone. :(
[G1 Android Development] speedysilwady:
ooh i just realized robotteapots ringtones dont contain the sounds for ui, and thats whats causing your problem. ill upload a modified version to the first post including the ui folder and you shouldnt have that problem.

btw youre supposed to delete the audio folder not the media folder, if you want you can keep all the folders and just delete the files within each one but thats just a lot of work lol.

im uploading the modified audio folder right now, ill update the first post, sorry to anyone who had this problem, it was an oversight on my part.

edit: see first post for the correct file. sorry guys!
[G1 Android Development] schwiz:
My problem is that the autosign script is not working at all, I 'm using windows 7 and setx.exe already has some paths set, and the script won't let me clear them out and I don't know how to do it otherwise. I also tried just running the autosign.jar but java says it can't find the class. I have searched pretty hard but I can't find any insturctions on how to sign a rom other than multiple sources telling me to use the autosign script.
[G1 Android Development] speedysilwady:
oooh okay windows 7. Yeah you have to set the paths manually or else it wont work...i saw a thread on here about it, i dont know where it is...but i think youre supposed to go to

system properties < advanced settings < environmental variables

and under User Variables:

CLASSPATH C:\folder\testsign.jar (use the location of your testsign.jar)

and I think you go to Global Variables

PATH C:\folder (use the folder containing testsign.jar)

i think that should work, not sure though. but there is a thread on here about manually setting it up for windows 7
[G1 Android Development] lbcoder:
You're missing the point.

Why waste space on /data when you can use up the UNUSED SPACE on /cache?

The ONLY difference between what I suggest and using /data/app_s is the partition that you move the crap into.

And card transfer? WHAT card transfer? /data is INTERNAL. /system is INTERNAL. /cache is INTERNAL. There is NOTHING here about putting stuff on the sdcard.
[G1 Android Development] xile6:
when you do app_s doesnt it put system apps on the sd card that what i was talking about
[G1 Android Development] lbcoder:
No, it most definitely DOES NOT. And you wouldn't want it either -- it would be terribly unstable.
[G1 Android Development] xile6:
ok cool some how thats what i got from it nut thanks for the info
[G1 Android Development] will4958:
Resigning Danger SPL roms

Hey all. I've been trying to use this auto-sign tool to resign a rom requiring the dreaded Danger SPL, and unfortunately I keep getting the error message "'java' is not recognized as an internal or external command, operable program or batch file. Not sure what could be wrong, so any help is appreciated. Thanks in advance.
[G1 Android Development] JAguirre1231:
You need to have the Java SDK (or JDK, Android has me confused) and the path to it in your PATH
[G1 Android Development] speedysilwady:
that is correct, i didnt think i had to mention that in the first post since i linked to the thread which mentioned it for me lol
[G1 Android Development] will4958:
Signing

Thanks for the response. Please forgive my ignorance, but could you or someone else please provide an example of the whole Java JDK thing? Thanks.
[G1 Android Development] speedysilwady:
lbcoder, I tried using your suggestion to port KingKlick's Droid Eris port, but I got a huge amount of force closes. I'm pretty sure I have the permissions set right, I can post the update script or the rom here if you'd like to help.

Thanks!
[G1 Android Development] lbcoder:
Don't worry about getting it all right from the recovery script if you are having trouble. You can manually edit things from recovery. As long as all the files are actually installed and accessible to the appropriate users, there can be no issues with this method.
[G1 Android Development] speedysilwady:
well it installs fine when i run the update. i get no error messages while it is booting. i get it up to the lockscreen, i let it sit for 10 minutes and when i unlocked the lock screen i got force close after force close after force close...

im still inexperienced at android obviously, so thats why im asking for help in understanding how to do this.
[G1 Android Development] protomanez:
._. something tells me this will be buried in the forums in a month or so like most tut threads...
[G1 Android Development] Firerat:
didn't even now this thead existed

I have read the above, and tbh I think its all bit over complicated.

I much prefer my way , but I guess I would

I posted it here

http://xdaforums.com/showpost.php?p=5832618&postcount=3174

copy below

flashing is a little slower as apps are going straight to SD

since posting I'm wondering if it would be better to have the 'symlink' as app_sys

Perhaps the 'prep' could be featured in a recovery.img possibly along with modifying update-script as it is simply a case of removing format SYSTEM: extract a single file, sed /format\ SYSTEM\:/d, put it back in the zip and sign. no thought required.

ok, so for the recovery to be able to do this it would need a working zip and jre to sign but this isn't impossible is it?

anyone have any thoughts on this?
[G1 Android Development] speedysilwady:
i actually learned a lot from that, thanks! its a good idea, but if youre running swap, apps2sd, and dumping the system apps to the sdcard as well, its gonna be slow as you mentioned... plus itll probably kill the sdcard a little faster. The reason i prefer lbcoder's method of putting it in /cache is because the apps will still be on the phone so it should be faster...maybe i can modify that script you wrote to dump them into /cache instead?

something like:

does that look right?

as for the recovery.img maybe that idea should be tossed to Amon_RA?

i hope im understanding everything correctly. Please forgive me if i said something that didnt make sense, im still learning lol
[G1 Android Development] sianaka:
I am not a dev...

I was wondering if you ever figured out the easiest way to do this. I don't know how to program or anything, but I am trying to learn. I really appreciate all of the dev's work and appreciate any help.
[G1 Android Development] zeezee:
Excellent!!
[G1 Android Development] speedysilwady:
hmm i still havent tried your method with the ext partition, but i tried the modified version for /cache, it seems no matter what i do to symlink anything from system to cache, the symlink doesnt work and i get force closes whether its from the update script or recovery, i dont know what would be interrupting the symlink or messing with the permissions but so far i havent been able to get the cache method to work. ill try the ext partition method you mentioned firerat, and ill add it to the first post if it works, which i think it should.
[G1 Android Development] speedysilwady:
anyone know why nothing symlinks to /cache properly even after setting the right permissions?
[G1 Android Development] Firerat:
ramdisk doesn't mount it

unpack your boot.img

unpack ramdisk

edit init.rc

repack ramdisk

repack boot.img

flash boot.img

if needed I can do this for your boot.img, just let me know what ROM ( update kernel) your using

edit : ahh, I see your working with Kings Eris Port, I will make a boot.img for you

edit2: now I look it does mount /cache , so I'm going to have a little play and see what I can do

edit3: OK, I have made some changes to init.rc, so far I have linked media, bootanimation works where it didn't before

diff below and on ramdisk, I have also attached boot.img King #7 from his Eris 1.1

NB it is not an update.zip, just a normal zip

unzip boot.img someplace and get it on your sdcard

flash_image boot /sdcard/boot.img

NB King's eris doesn't have flash_image, so you need to do that in recovery

note cache is being mounted readonly

some scripts may fail as they won't be able to write to it

( normally they will remount /system, but as they don't know about /cache, they won't )

if that becomes a problem, we need to re-write the scripts

or simply not remount /cache ro in the init.rc , but personally I think that is a bad idea although I can't think of an example right now.

Oh, and I fixed the dmagent bug thing, no more SMD port failed to open nonsense

--- init.rc.orig 2010-03-21 19:48:52.000000000 +0000
+++ init.rc 2010-03-21 20:28:00.000000000 +0000
@@ -62,6 +62,10 @@
# Mount /system rw first to give the filesystem a chance to save a checkpoint
mount yaffs2 mtd@system /system
mount yaffs2 mtd@system /system ro remount
+ mount yaffs2 mtd@cache /cache
+ chmod 0770 /cache/lost+found
+ mount yaffs2 mtd@cache /cache ro remount
+

import /system/init.rc
trigger system
@@ -96,9 +100,9 @@
chmod 0640 /data/dontpanic/last_kmsg

# Same reason as /data above
- mount yaffs2 mtd@cache /cache nosuid nodev
- chown system cache /cache
- chmod 0770 /cache
+# mount yaffs2 mtd@cache /cache nosuid nodev
+# chown system cache /cache
+# chmod 0770 /cache

# This may have been created by the recovery system with odd permissions
chown system system /cache/recovery
@@ -143,13 +147,13 @@

# create the lost+found directories, so as to enforce our permissions
mkdir /data/lost+found 0770
- mkdir /cache/lost+found 0770
+# mkdir /cache/lost+found 0770

# double check the perms, in case lost+found already exists, and set owner
chown root root /data/lost+found
chmod 0770 /data/lost+found
chown root root /cache/lost+found
- chmod 0770 /cache/lost+found
+# chmod 0770 /cache/lost+found

# create DRM directories
mkdir /data/DxDrm
@@ -322,7 +326,7 @@

service debuggerd /system/bin/debuggerd

-service dmagent /system/bin/dmagent -N -P19 -VSY
+service dmagent /system/bin/dmagent -N -P27 -VSY
socket dmagent stream 660 root radio
user root
group radio cache inet misc

when I figure out how aufs works I'll be mounting /cache via my ramdisk by default

my new ramdisk will be based off aosp, I'll be mounting /cache ( for a union mount with system ) , and probably some mt3g checks to 'fix' a2sd for them
[G1 Android Development] Firerat:
how much space is wasted on your system partition?

I can save you around 3.5 mb on /system

this will confirm how much space you will save

export MD5sumtoolbox=`md5sum /system/bin/toolbox|cut -d " " -f1`
md5sum /system/bin/*|grep -v toolbox|grep $MD5sumtoolbox|\
cut -d " " -f2-|\
sed -e :a -e '$!N; s/\n/ /; ta'|\
sed s/^/du\ -hc/|sh

remove line 4, and change line 5 (now line 4 ) to

sed s/^/ln\ -sf\ toolbox/|sh

to fix ;)

basically a lot of bins should be symlinked to toolbox ( which is like a light weight busybox ) toolbox is 72k, but if you add them all up it quite a bit ;)

below is what symlinks should be done

strip them from your zip and link them with update-script

symlink toolbox SYSTEM:bin/cat
symlink toolbox SYSTEM:bin/chmod
symlink toolbox SYSTEM:bin/chown
symlink toolbox SYSTEM:bin/cmp
symlink toolbox SYSTEM:bin/date
symlink toolbox SYSTEM:bin/dd
symlink toolbox SYSTEM:bin/df
symlink toolbox SYSTEM:bin/dmesg
symlink toolbox SYSTEM:bin/getevent
symlink toolbox SYSTEM:bin/getprop
symlink toolbox SYSTEM:bin/hd
symlink toolbox SYSTEM:bin/id
symlink toolbox SYSTEM:bin/ifconfig
symlink toolbox SYSTEM:bin/iftop
symlink toolbox SYSTEM:bin/insmod
symlink toolbox SYSTEM:bin/ioctl
symlink toolbox SYSTEM:bin/kill
symlink toolbox SYSTEM:bin/ln
symlink toolbox SYSTEM:bin/log
symlink toolbox SYSTEM:bin/ls
symlink toolbox SYSTEM:bin/lsmod
symlink toolbox SYSTEM:bin/mkdir
symlink toolbox SYSTEM:bin/mount
symlink toolbox SYSTEM:bin/mv
symlink toolbox SYSTEM:bin/netstat
symlink toolbox SYSTEM:bin/newfs_msdos
symlink toolbox SYSTEM:bin/notify
symlink toolbox SYSTEM:bin/printenv
symlink toolbox SYSTEM:bin/ps
symlink toolbox SYSTEM:bin/renice
symlink toolbox SYSTEM:bin/rm
symlink toolbox SYSTEM:bin/rmdir
symlink toolbox SYSTEM:bin/rmmod
symlink toolbox SYSTEM:bin/route
symlink toolbox SYSTEM:bin/schedtop
symlink toolbox SYSTEM:bin/sendevent
symlink toolbox SYSTEM:bin/setconsole
symlink toolbox SYSTEM:bin/setprop
symlink toolbox SYSTEM:bin/sleep
symlink toolbox SYSTEM:bin/smd
symlink toolbox SYSTEM:bin/start
symlink toolbox SYSTEM:bin/stop
symlink toolbox SYSTEM:bin/top
symlink toolbox SYSTEM:bin/umount
symlink toolbox SYSTEM:bin/vmstat
symlink toolbox SYSTEM:bin/watchprops
symlink toolbox SYSTEM:bin/wipe
[G1 Android Development] speedysilwady:
thank you very much firerat! Wow, I have a lot of reading to do, Im gonna read some tutorials on unpacking and repacking boot images. i figured there was some element other than the update script that was preventing it from working...I was trying to make this a n00b friendly tutorial, but wow its become a lil more advanced than i thought. Ill try your boot image on the zip i put together and see if it works. If so this will be the first hero rom on a phone with a non-danger spl, and the first 2.1 sense rom on a non-danger spl phone =P
[G1 Android Development] speedysilwady:
Updated First Post! Thanks lbcoder and Firerat!! =D
[G1 Android Development] Firerat:
cm5 test 1 on NoneDanger

Make sure you are going from a none Cyanogen rom ( else cm5 will try to backup and restore things that might not fit )

flash the main rom from Cyanogen's post

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

Edit

#########

CM5 test2 is larger and won't flash

I have included some details on how to get round this a few posts below

http://xdaforums.com/showpost.php?p=6382142&postcount=61

#########

then flash this gapps

FR-gapps-ds-ERE36B-FR-NDMod_S.zip

( not the one in Cyanogen's post )

Have fun, and be sure to read the cm5 post ref swap , lwp and battery!!

edit :

dalvik-cache is a little spreadout on CM5

even with the option to use /cache for dalvik-cache , user apps have their dalvik-cache put on data

to get round that

adb remount
adb shell mv /data/dalvik-cache/* /cache/dalvik-cache/
adb shell echo "busybox mount -o bind /cache/dalvik-cache/ /data/dalvik-cache/" > /etc/init.d/06bind-dc
adb shell chmod 700 /etc/init.d/06bind-dc
[G1 Android Development] speedysilwady:
oh awesome! Thanks firerat, eek yeah i read about the battery drain issues, havent read much about the battery and swap ill look into that tomorrow. right now its 121am and im struggling to finish my essay haha. ill flash it tomorrow and let you know how it goes. btw, the way you have it set up, you can flash any updated cyanogen build since you only modified the gapps base, correct? oh and sorry i didnt reply to your pm it kept giving me errors every time i tried to reply =/