[Optimus One, P500 Original Android Development] Dovidhalevi:
Missing Apps, Space, more ... (long)

First off, though full wipe is usually the best procedure for flashing new ROMs, it is unlikely the problem here. Even if it is not soooo much effort, if play may not be working, I won't do it! If Titanium comes up missing or one does not have it, smoke.

I had "missing" apps on LG's stock Froyo. More than occasionally, random. I was informed that the problem is endemic to Android. Just like when one adds an mp3 anywhere, it eventually shows up in the player, the same with APKs. There is a background crawler that caches an app list, icons, etc. Takes time--one can sometimes see the icons refreshed if one opens the screen too soon after a CM9 boot. The problem on Froyo was certainly exasperated by lack of internal storage. So what to look for here:

Does the crawler get killed, quit too soon?

Does it fail to tell the launcher to refresh?

Does the launcher fail to obey the refresh signal?

IS ITS CACHE OUT OF SPACE??

As several posts show, the space business is killing Dalvik, maybe data-cache, definitely /system with gapps.

Aside: Revealing my age and why I am no longer employable in development :(, I started in this when "gigabyte" had not entered the vocabulary list. Megabyte was a luxury. Remember the IBM 1620 (first-desktop or I should say, the whole desk--not enough core--you know, little ferrite loops strung on signal wires--to run a real Fortran)? I had that baby translating Spanish in 1963 before Google Translate and when most pros debated whether it be possible--only entered enough punch-cards of vocabulary for proof of concept (not enough memory!). In assembler. In those days, one learned to program economically. Resources were not (and still ARE NOT) unlimited. Imagine my joy (20 years later) when I had a DEC system with two 5 meg Winchester platters (each bigger than today's PCs).

Shame on Google. Resources are NOT unlimited. Just because Apple's arch-enemy Samsung sells phones with 8 gig internal memory does not mean one has to gobble it all up in one go.

What to do about space? One JB ROM developer moved the keyboard (20 meg!) off /system. Hephappy does not want to move the dictionaries. However, if one really needs a keyboard to start Android, it need not be swiftkey with predictive text in umteen languages. The simplest KB, no more. The predictive text, the languages, the dictionaries, Swype, etc., are user-choices and belong in user-space. From what I have seen, only hackers-keyboard does it reasonably, Swype has gotten better. And yes, that inane bootup animation can be dispensed-with (the logo with a few sparkles would be more than enough).

All of Dalvik on sd-ext would cause too many problems, performance hits (maybe not so noticeable) and reduce the life of the sdcard. However, linking pieces of it (note: one must redo this, linked app by linked app, after a new ROM flash--hint-hint link2sd devs!), does make sense.

Gapps? Which of these are needed to start android? Any others belong somewhere other than /system which is why I have mine linked (with their Dalvik) or moved whenever I can, why I do not routinely wipe and flash gapps.

Apps are not run by env PATH. There is only one env entry for apps that I have seen: android-assets=/system/app. I do not know how this is actually parsed/used but could this be android-assets=/system/app:/sdcard/system/app or something like that? This is a linux distro (of sorts) so the usual rules and capabilities should be available.

(Disclaimer: I am not knowledgeable of Linux or Dalvik/Android internals and make the above suggestions innocently. Correct me if impossible!)