[Galaxy S I9000 Android Development] Kino87:
service post.

FAQ

Why should I use this script?

CM10 has just about 400mb for /data, this is not sufficient for applications and their data if you have a large number of apps installed. Since apk files usually take about the 60% of /data space moving them seems like the natural solution.​

Why not just move apps to /sdcard?

Every solution has its strenghts and weaknesses, actually moving apps to /sdcard isn't always possible, when it is (currently) is not always possible to move them back to the phone memory for a CM10 bug and apps installed in /sdcard are considerably slower than those installed in /data for many reasons.

Using this script avoid all the problems above (/system uses actually the same memory chip of the /sdcard but is formatted with ext4 fs and, more importantly, the script moves only apk while moving an app to /sdcard will move also its libraries). Long story short: performance of apps moved on /system are the same of the apps on /data while this is not true for apps on /sdcard and on the plus side you don't waste the 2gb of space in the /system partition. Problem with my script is that /system gets formatted every time you update your rom, so you have to backup yor apps somehow. The set of scripts I've developed takes care also of this aspect, but in the best case scenario it will take longer to update roms and in the worst you will have to backup and restore apps manually. Only you can decide what is the best for you. Since nobody pays me I will not advertise this suite as a solution to all the problems of the world :P​

I've lost all my apps/phone won't boot anymore after using your script!

I'm sorry, I'm really sorry... but this is an experimental script, a lot of bugs have been fixed in the last month but I'm pretty sure there are still a lot somewhere. By the way there is a disclaimer in the OP, if you read it (and you should) you know that something nasty could happen and you've done a nandroid backup: that will solve anything.
​

After installing your script phone works fine but as soon as I try to install or update an app it reboots

When this happens is because android can't write in /data/app, this can be caused by 3 things:

/data/app link or /system/user_app dir is somehow corrupted

/system is mounted as read only

/system/user_app doesn't have the correct permissions or ownerships

I've created the script z99SystemApps to address to all this problems but if for some reason there is something that get executed after that and causes the problem (remounting /system as read only was pretty common until I've renamed my script so that it gets executed as the last one) you will get a softreboot.​

Why my rom is not supported in automatic version?

Currently the automated version uses a CM10 function that calls every script it finds in /system/addon.d when you are updating a rom (twice, once before formatting /system and once after).

This, as far as I know, is the only way to make a custom script to be executed at update time without modifying the rom installer. Problem is not every rom incorporate this function and even when incorporated sometime is disabled.

Usually I can easily modify any rom and prepare the necessary files to make this function work but contacting the developer of every rom and asking them to patch it for a function that actually is used just by my script seems a little bit selfish and time consuming (I'm actually faster to write and test scripts than contacting devs, explain the situation and convince them to implement it).

If anyone wants to contact unsupported rom devs explaining them the situation and trying to convince them to add the patched files to enable the CM10 backup and restore system I will gladly prepare the patch.

Keep in mind that that list is just for automatic version, the manual one should work just fine

and since there aren't many roms out there with daily or even weekly updates you still can use the manual version of the script and backup and restore apps every time you update the rom.​