Hi to everybody, I come from the BADA subforum, and there is a new project trying to port Android to samsung Wave phone.
Devs have some issues, we are in the last steps and here is a summary
will want to note that the kernel has been confirmed as able to boot into android homescreen when flashed though JTAG
we're modifying the init scripts to boot it from sdcard
the device is accessible from adb how ever the Android system services such as zygote are restart looping
i *think* i managed to execute standard boot on init.rc with adb interface, zygote and android services appear to be stuck in a restart loop:
http://code.google.com/p/badadroid/source/detail?r=192
EDIT: would like to note that while "VIBETONZ" is appearing on the log, the phone is not vibrating, nothing is appearing on the display either. If possible i'd like a check on my kernel sources Oleg. EDIT AGAIN: the phone does actually vibrate, my bad
line 3150ish you can see the zygote service and various others getting killed and restarting.
EDIT2: another debug log extracted using "adb bugreport" (very large, will want to download in order to view)
http://code.google.com/p/badadroid/source/detail?r=193
http://badadroid.googlecode.com/svn/trunk/adb logs/bugreportnb190511.log
EDIT3: it's possible that the restart loop is caused by lack of memory, this could be caused by the memory mapping of the current bootloader we're using, will have to ask rebellos and srg about that.
added a log to googlecode for procedure to boot kernel using init.rc with adb interface working ( i'm not exactly sure why this works) i may upload the zImage i'm using for this, but it'll only work if you partition your memory card in the correct layout and format.
http://code.google.com/p/badadroid/source/detail?r=194
http://code.google.com/p/badadroid/d...511v2&can=2&q=
Click to expand...
Click to collapse
We need some ideas, or whatever you can provide with your knowledge to help us in this project.
more info: http://forum.xda-developers.com/showthread.php?t=1012856&page=100
Thanks to everybody.
hi to everybody
need help, please!
anybody?
I will take a look later on this evening and see if I can tell anything.
Your kernel seems to work, most of your issues in the log that was posted in my thread come from the ramdisk and system build. Until you work at those for a bit, I don't think you're going to know where to place the blame for issues until you're clean.
For the VM crash loop:
Take all of the non critical apps and gapps out of /system/apps (stuff like vending, maps, touchwiz and so on.)
And see what you get. If you can't solve it that way, then try to do:
adb pull /dbdata/databases/com.android.providers.settings/settings.db settings.db
And see what you get. If its there, it's corrupt. If it isn't, check to make sure the directory is getting created. You can also get someone to pull settings.db from a similar device (i9000?) and try to push it to yours.
But that's only the first of your problems. You have some bad lines in init.rc (your rild daemon isn't configured correctly amongst other things), and a few things missing in /system/bin and /system/lib (calls to missing things). If you aren't using an extract of system.img from the sdk, you probably should. Then you can load in libs one at a time in a clean and controlled environment.
BTW: What Android system are you using? What device did it come from? If you built it from source, seriously, try using an emulator image first.
spacemoose1 said:
Your kernel seems to work, most of your issues in the log that was posted in my thread come from the ramdisk and system build. Until you work at those for a bit, I don't think you're going to know where to place the blame for issues until you're clean.
For the VM crash loop:
Take all of the non critical apps and gapps out of /system/apps (stuff like vending, maps, touchwiz and so on.)
And see what you get. If you can't solve it that way, then try to do:
adb pull /dbdata/databases/com.android.providers.settings/settings.db settings.db
And see what you get. If its there, it's corrupt. If it isn't, check to make sure the directory is getting created. You can also get someone to pull settings.db from a similar device (i9000?) and try to push it to yours.
But that's only the first of your problems. You have some bad lines in init.rc (your rild daemon isn't configured correctly amongst other things), and a few things missing in /system/bin and /system/lib (calls to missing things). If you aren't using an extract of system.img from the sdk, you probably should. Then you can load in libs one at a time in a clean and controlled environment.
BTW: What Android system are you using? What device did it come from? If you built it from source, seriously, try using an emulator image first.
Click to expand...
Click to collapse
It is possible it was not made clear, its a 2.2 stock ROM being ported from the Samsung Galaxy S to the Samsung Wave (formerly a BadaOS device). It is also being booted off of SD as apposed to OneNand. It uses a patched version of the SBL from the galaxy S but when Android is flashed to Nand it can boot fine (although problems are had initializing the Modem).
sabianadmin said:
It is possible it was not made clear, its a 2.2 stock ROM being ported from the Samsung Galaxy S to the Samsung Wave (formerly a BadaOS device). It is also being booted off of SD as apposed to OneNand. It uses a patched version of the SBL from the galaxy S but when Android is flashed to Nand it can boot fine (although problems are had initializing the Modem).
Click to expand...
Click to collapse
You need to compare logs from system booted from nand and from sd. Whatever errors are the same don't matter. Its the different ones that will tell you more.
But you're crashing right now because some line of code somewhere in your build is looking for a database and can't find it. If it doesn't do that when installed to nand, then your problem is that directories that the system creates to host configs and module parts aren't getting created at boot.
The modem issue, (if the error in logcat is the same whether the system booted or not, haven't seen both) looks to be a radio interface layer problem, your rild daemon isn't loading (check /system/bin/ for "rild") and make sure the line in init rc that starts it is correct.
spacemoose1 said:
some line of code somewhere in your build is looking for a database and can't find it.
Click to expand...
Click to collapse
It's a strange problem, as using the extracted system.img from the Android emulator as filesystem the above error disappears - with the same kernel/initramfs/init.rc (obviously other errors appear but the services seems to be stable).
I think we can forget the ril related errors now (I commented out the service in my build together with the DR daemon) as we have no modem driver yet ...
Hi all -
NOTE: This project is on permanent hold until Tasker 1.1.2 is officially released. There are lots more features that will make it much easier both from a development end and a user end to use tRUE. I regret that I can't work on this now, but there are just too many Tasker limitations to work around that will be dealt with in Tasker 1.1.2. This will hopefully be by the end of the month, but may take into mid-October.
Furthermore, Koush has locked down writing commands to recovery starting with CWM5. If your ROM uses CWM5 for its recovery, it will not be compatible with tRUE.
Introduction
Welcome to tRUE - the Tasker Recovery User interfacE. The main goal of this Tasker profile scheme is to act as a replacement for most ROM Manager Premium features.
Why tRUE? How is it better than ROM Manager?
tRUE replicates ROM Manager functionality by writing commands to /cache/recovery/extendedcommand; these commands get executed upon reboot to recovery, just like ROM Manager. But there's lots more that tRUE can do!
Automatically download and install latest CM7 nightly for your device, at a time or context of your choice! GApps flashed automatically for free!
Bulk update-flash install - great to flash kernels, fixes, and more, along with your nightly!
One-touch and scheduled backup - Click a widget and immediately perform a Nandroid backup! Or, let it run automatically every night!
Free with Tasker - Tasker's the greatest $6 app out for Android, and it can replace lots of apps you typically pay for!
TO DO: Flash profiles: Flash any set of zips you want at any time!
TO DO: One-touch Nandroid restore of latest backup!
TO DO: Simple backup management - automatically delete old auto-backups!
I'm always listening for ideas as well, please contribute to the development of this project!
What's in the ZIP
The following Tasker profiles:
tRUE-nightlywget
tRUE-nightlyMD5
tRUE-nightlyinstall
tRUE-nightlycheck
tRUE-boot
The following Tasker tasks:
tRUE-AddNewZip
tRUE-boot
tRUE-cwm
tRUE-flash_nightly
tRUE-flash_user_zip
tRUE-nandroid
tRUE-NandroidWidget
tRUE-nightlycheck
tRUE-nightlyinstall
tRUE-nightlyMD5
tRUE-nightlywget
tRUE-restorenandroid
tRUE-RestoreWidget
tRUE-SETUP
tRUE-s_volts_scheduler
tRUE-UPGRADE
tRUE-wget_gapps
tRUE-wipe_cache
The folder "tRUE", which contains:
folder "download" - contains gapps-gb-20110729-signed.zip, and will contain your downloaded nightlies
folder "scripts" - contains checkupdate.sh, flashzip.sh, install_nightly.sh, nandroid.sh, wipe_cache.sh, get_CWM.sh, s_volts_scheduler.sh
Requirements
Tasker 1.1+, available on the Android Market or Tasker website
Secure Settings Plugin, available on the Android Market
For now, ROM Manager (free or premium) - I only need this for the directories it creates, I'll do it myself later
Coming from tRUE 2.1.1?
See this post; download the scripts folder and replace yours with this. It corrects some issues if you have a CWM that was both detected by ROM Manager and is not CWM2.x or 3.x.
Installation
Make sure you're already running a CM7-based ROM. tRUE does NOT wipe /data and perform the first-time-install instructions for your device; if you try to do so, you might brick!
In Tasker, click Menu->Preferences->Misc and check the box "Allow External Access". This allows Tasker to pass arguments to the shell scripts run by Secure Settings Plugin.
UPGRADING USERS: Delete all old tRUE profiles and tasks. (Sorry about the tedious installation! It'll be more streamlined in the future.)
Download the attached ZIP. Place the tRUE folder in the root your SD Card. (UPGRADING USERS: it will suffice to replace the scripts folder with the one from the zip.) Place *.tsk.xml in /sdcard/Tasker/tasks . Place *.prf.xml in /sdcard/Tasker/profiles.
Open Tasker, hit the Menu Button->Profile Data->"Import One Task". Import the 19 tasks. (WOW THAT'S ALOT! It's what you get with awesome functionality )
Repeat previous step, but with profiles. Import the 5 profiles.
Exit Tasker by hitting the check-mark. This will save the profiles and tasks.
NEW USERS: Re-enter Tasker, the click Tasks and select "tRUE-SETUP". Click the play button.
UPGRADING USERS: Re-enter Tasker, then click Tasks and select "tRUE-UPGRADE". Click the play button.
Download the GApps package below and place in /sdcard/tRUE/download. Or, run the task "tRUE-wget_gapps"
Edit the "tRUE-nightlycheck" profile to suit your needs - currently it'll fire every day at 4am, if your device is powered.
Setup will try to automatically detect your device's CM7 codename; if it can't, enter the codename (i.e., cdma_droid2, vibrantmtd, glacier, etc)
Create the tRUE widgets - on your home screen, long-press, then click "Widgets"->Tasker->Tasks->tRUE.
Usage
When a new nightly is available, tRUE will automatically wget the zip and leave it in /sdcard/tRUE/download . You can skip this process if you download the zip yourself and place it in that folder. It then performs an MD5 check; if the check succeeds, it writes commands to /cache/recovery/extendedcommand to perform a Nandroid backup; wipe your cache and dalvik-cache; flash the nightly; flash the GApps package; and flash any zip you provide. See below.
Use tRUE-AddNewZip to add update-flashables to your nightly installation. I install Glitch Kernel and my own Software GPS Fix for my Vibrant. tRUE looks at /sdcard/tRUE/toflash.txt and installs zips in order. You can either use tRUE-AddNewZip or manually edit this file.
Limitations and Bugs
Currently tRUE-nightlywget is kind of slow - I tried to provide download percentage so you don't patiently wait wondering how long the download will take, but this seems to actually slow down wget, and sometimes wget actually quits out. I can't replicate this all the time.. I might have to just remove the download percentage indicator. Sorry!
AFAIK, all variants of CM7 run on ClockworkMod3+; I only provide commands to use CWM3+. If you're running CM7 and are on CWM2 or below, please let me know ASAP so I can include functionality.
It seems that if you abort a script via the Secure Settings plugin notification (it fires when I use a script), no more scripts will fire until after a reboot. I am working with the developer of the plugin to see if it's a true bug or an issue between keyboard and chair.
Right now, tRUE-nightlycheck will run the entire download and install process even if it couldn't detect you were on CM7. If you're not running a CM7-based ROM, YOU MIGHT BRICK UPON TRYING TO USE tRUE. FOLLOW THE CM7 FIRST-INSTALLATION INSTRUCTIONS BEFORE ATTEMPTING TO USE tRUE.
To Do
Only enable vibration when user presses the tRUE-nightlycheck widget - this way the user can sleep soundly without his phone vibrating in the middle of the night
Manage deletion of old nightlies - maybe keep 2 or 3, but delete older ones?
Menu-driven interface to more ROM Manager-esque - one widget to access all functions, instead of many
Add "flash profiles" - allows you to quickly go from vanilla CM7 to MIUI to some other CM7-based ROM, while flashing all your extras for you
Add one-touch Nandroid restore widget
on setup, create clockworkmod folders (to store backups) if it doesn't already exist
Add profile to perform automatic Nandroid backups
If I helped improve your CM7 experience, PLEASE hit the Thanks button! Or even better, donate This has been a really fun project for me and I hope my work helps you too!
Changelog
Code:
V2.1.2:
- fixed issue where having CWM that was not version 2 or 3 (e.g. 4) was not detected by shell scripts
V2.1.1:
- fixed wget looping error - had to remove attempted wget workaround for failed downloads
- fixed "typo" - forgot an End If statement in tRUE-installnightly
V2.1:
- Menu-driven UI - single widget "tRUE" to do nightly check, backup, recovery, add to profile
- one-touch backup/restore - perform with tRUE widget
- if S_volts_scheduler detected, save it before flashing a nightly and restore upon boot
- notifications after boot if you just flashed, backed up, or restored
- support for CWM 2.x
- bug fix - /cache/recovery/extendedcommand not always written - fixed by mounting /system before writing (via scripts)
- bug fix - adding zip to flash profile didn't use full pathname; now also makes sure that the file the user selected actually exists (wtf?)
V2:
-initial release of tRUE - a complete rewrite of AutoCM7 with
loads more features and robustness!
Downloads
http://cmw.22aaf3.com/gapps/gapps-gb-20110729-signed.zip GApps package (07/29)
COMING IN NEXT VERSION
I'm going to start using SL4A to do the heavy lifting. Writing for Tasker is exhausting and difficult. No new features will be added until V3, when everything will be written with Perl/bash; Tasker will be used only to support the Perl scripts. This gives me the ability to really use UI (show download progress, list cool menus, etc), and improve my own sanity! I get to write in a real programming language!
V2.1.x will contain bugfixes as reported by the community.
bug fix: S_volts_scheduler not restored correctly on new flash still - workaround in progress
FREQUENTLY ASKED QUESTIONS
Q: Why is the install process so tedious?
A: Tasker was designed to be very extensible, but wasn't designed to be able to run what some might call an app. There is discussion to implement mass-import of tasks and profiles in future versions of Tasker.
Click to expand...
Click to collapse
Q: JESUS CHRIST, 24 DIFFERENT THINGS TO IMPORT!?
A: See above. You're getting what's essentially a ROM Manager Premium replacement for free! If you wanted easy-to-use with no freedom to customize, go buy an iPhone
Click to expand...
Click to collapse
Q: Why do I need Secure Settings plugin? Why didn't you use Locale Execute plugin?
A: With Locale Execute Plugin, running commands as root requires granting permission to every single command that uses it. People got around that by writing all possibly needed commands into a single shell script, then used Tasker to pass arguments back and forth. SSP in the end makes the install process easier for the user. It also lets me look at exit codes and capture STDERR and STDOUT - both tasks are much more difficult than necessary using Locale Execute.
Click to expand...
Click to collapse
Q: Why are the icons so ugly!? Couldn't you pick better ones?
A: I could have - but that requires that users have Tasker icon packs installed, and in the end icon packs are just for aesthetics - I don't think making it a requirement to install more stuff before you get to play with tRUE just to make icons look pretty is worth it. You're free to change the icons, though!
Click to expand...
Click to collapse
Q: Why should I use tRUE instead of ROM Manager Pro!? It seems like a lot of work (both for me to install and you to develop) to replicate a well-known app.
A: Tasker is AWESOME is why. It's $6.50 on the Market (or $5 if you buy it directly from the developer), and that's the best 6.50 you could possibly spend. I replicate so many app functionalities with it, it probably saved me a good $15 in the long run. Contrast to RMP, which is $6 and only manages your ROMs. Not that that's a bad thing! A lot of apps are out there that let you control basic stuff on your phone - but Tasker can replicate the functionality of a LOT of apps out there. This started mostly as an exercise to see how far I could push Tasker.
Click to expand...
Click to collapse
Q: YOU'RE SO AWESOME, PLEASE HAVE MY BABIES!
A: I appreciate the gesture Really all I need from you is to push the Thanks button and post with your experience, questions, comments, bug reports, etc. If you're feeling REALLY generous, hit the donate button I do this in my spare time because it's fun and I love Tasker. I don't expect anything in return for me sharing the work that I would have done anyway.
Click to expand...
Click to collapse
Updated to v1.1. Found a bug where the device name was not being passed correctly to the shell script; also turned on Secure Settings notifications for debug purposes. Please re-download and try it out if you've had problems with V1.
update to v1.2, fixed bug where gapps package was accidentally deleted after new nightly found
Many thanks, this sounds awesome, will give it a go, though I have already purchased the rommanager premium (just for nightlies actually).
Looking forward to seeing more advanced useful profiles, I'm loving tasker as well.
This is pretty neat, I'm testing it on my Droid X right now.
I don't suppose there's any way to implement some sort of progress bar for the download? It's basically a wait-and-find-out process right now.
strictlyrude27 said:
[...] Create a new profile, and set your own contexts. I prefer to have a context of 4AM, if the device has power, and if I'm currently connected to wifi. [...]
Click to expand...
Click to collapse
Care to elaborate please? I'm stuck at point 7 What profile should I create and how. Thanks! Looking forward to testing this.
Sunblood said:
This is pretty neat, I'm testing it on my Droid X right now.
I don't suppose there's any way to implement some sort of progress bar for the download? It's basically a wait-and-find-out process right now.
Click to expand...
Click to collapse
I can't do a progress bar, but I think I can do a toast notification of how much of the file was currently downloaded..
I plan on doing a rewrite with more robust options and capabilities, but it's kind of on the backburner for right now..
Let me know if you run into errors, please! I'm kind of surprised more people aren't using this setup..
mi3x said:
Care to elaborate please? I'm stuck at point 7 What profile should I create and how. Thanks! Looking forward to testing this.
Click to expand...
Click to collapse
In Tasker, just hit the Plus sign on the bottom to start a new profile. Then select the first context you want the download check to fire. Like I said, I have mine set to fire at 4am every day. Then, set CM7_AutoInstall as the task to perform. Finally, long-press the first context once the profile is created to add more. I only want to have downloads happen when I'm power is connected.
Thanks, I guessed that was the way, but just wanted to be sure. Now looking forward to seeing CM7 build 16 today or tomorrow to test this. Will post my results. Many thanks again, nice work.
Another question, does it flash it directly over the existing build, or could you think of something to wipe cache before? I always wipe cache and dalvik as instructed in Q&A in CM thread.
Sent from my GT-I9100 using Tapatalk
Ok, my first report.
First, as a new build was released I tried to test the task directly, but after some minutes, I cancelled the script. Then, I browsed to the CM7 folder and I saw the build 9 downloaded there (I am on 15, and the new one was 16).
I thought it was because I cancelled the script, so I deleted the zip there, and placed instead my actual build i.e 15.
Re-ran the task again, all good, it d\l and flashed the rom on my phone, but instead of having build 16 on my phone, it was the build 9, (from 30/07).
So there must be a bug, I assume.
Just wanted to let you know, hope you'll fix it as I'd love to use it.
Sorry for my English
mi3x said:
Ok, my first report.
First, as a new build was released I tried to test the task directly, but after some minutes, I cancelled the script. Then, I browsed to the CM7 folder and I saw the build 9 downloaded there (I am on 15, and the new one was 16).
I thought it was because I cancelled the script, so I deleted the zip there, and placed instead my actual build i.e 15.
Re-ran the task again, all good, it d\l and flashed the rom on my phone, but instead of having build 16 on my phone, it was the build 9, (from 30/07).
So there must be a bug, I assume.
Just wanted to let you know, hope you'll fix it as I'd love to use it.
Sorry for my English
Click to expand...
Click to collapse
What device do you have? I'll look into it..
Sent from my SGH-T959 using XDA App
Im on Samsung Galaxy S2.
Nice catch. I just looked at the mirror page for your device.. Since 9 is a single digit, it's the last link on the page. I assumed that the last link is always the latest mirror.
If you try again tomorrow or the next day it should work, since eventually Build 9 will be removed from the page. I'll try to work on this this week (along with the rewrites).
Sent from my SGH-T959 using XDA App
The last couple times I tried the script, it will start the download and pop up with "Download completed with errors" a few minutes later (not long enough to actually finish the download) and then reboot and try to install the failed package. CWM fails the hash check and reboots normally.
Droid X (shadow)
Sunblood said:
The last couple times I tried the script, it will start the download and pop up with "Download completed with errors" a few minutes later (not long enough to actually finish the download) and then reboot and try to install the failed package. CWM fails the hash check and reboots normally.
Droid X (shadow)
Click to expand...
Click to collapse
Thanks for the catch. I check the MD5 before I reboot into download mode, and it's supposed to error out if the check fails.
All, I will try to have V2 released this weekend. Life's a bit hectic right now and frankly there wasn't a whole lot of interest in this project from the community before, so nobody tested for me all this stuff.. thanks for the help!
I find it very interesting, so I will gladly help if possible. Thanks again.
Sent from my GT-I9100 using Tapatalk
does this also wipe /data/ after flashing?
XlAfbk said:
does this also wipe /data/ after flashing?
Click to expand...
Click to collapse
I would hope not.
One suggestion: I use Rom Manager Janitor to clean up old backups on boot so I only have ~3 or so, but it specifically looks for the naming system that Rom Manager uses so it doesn't delete manual backups. Could you use the same naming convention or do you just pass the "backup" command to CWM and let it do its own thing?
Otherwise, I'd rather stick with RM's backup and just have this script flash the nightly.
The notifications that SecureSettings throws up (not the ongoing, but the one-off errors and such) don't activate the Clear button in the dropdown window so I have to click it to clear them. It's probably an issue with SecureSettings but I thought I'd let you know.
Finally, I have two gapps zips in the AutoCM7 folder. 20110613 and 201106130. Can I delete one?
Update on my issue: I'm going to try and get a screenshot of the error message that the download spits out. It shows the download hit 100% but the file size keeps increasing until ~102mb, then the md5 check fails. Manually downloading (i.e. via rom manager) works fine.
Screenshots:
http://i.imgur.com/Ix4jo.png
http://i.imgur.com/0BPBJ.png
http://i.imgur.com/a8Vn9.png
As you can see, the download hits 100% about halfway through the actual filesize. The MD5 of the downloaded file actually matches the md5 on the nightly site, but it says the md5 fails. Manually selecting the zip with Rom Manager works just fine.
I have managed to compile (from source) and install CM7.2 on my HTC dream, but my questions below are related to Android:
1. Is there a way to find out which packages (.apk) were installed on my system and if so, how do I do that?
2. Is there a way to find out each package dependencies (I need to figure out this as I am bent on removing the vast amount of guff installed on the phone - I won't need 90% of this stuff)?
3. Similarly to 2 above - is there a way to look at dependencies of a package not yet installed on my system (i.e. the .apk file)?
4. How do I actually remove a package for good from the system?
5. Similarly to 3 above, how do I actually install a package from within the root system - I know I can do this via adb, but is there a way to do this inside the, say, command line terminal?
6. Is there a way to alter (understand remove) certain program permissions which I could see "granted" to a particular program/package? I know there are various ways to look at these, but I wish to remove permissions I am not happy being granted to that particular program/package.
And one last a bit more advanced query: I would like to build a single package from the source tree and then install the resulting .apk file on my system.
Basically, I will try to upgrade a package with a new revision and add a few patches to the package source of my own before compiling it and building it again.
I usually build the whole lot (all packages + the rootfs image itself) with "mke bacon", but if I want to alter the source and build a single package how do I do that?
I am not very familiar with the Android make system, so I don't want to go heads-first into something and make a real mess of it.
Thanks a lot for any assistance given.
Small addition as apparently I cannot post a reply (too few posts) in this thread: http://forum.xda-developers.com/showthread.php?p=9055790#post9055790
Question to ezTerry (if he is reading this!): the advice given in that post above was absolutely splendid! I followed it religiously and it worked an absolute treat!
There is one exception though - I've LOST all of my IMEI, IMEI SV and Baseband information after applying these fixes. As soon as I installed the radio updates and then installed my newly-compiled kernel + CM7.2 (successfully!) I then checked the above fields from Settings and they were all gone!
After a while, the baseband, IMEI and IMEI SV appeared, but the IMEI and IMEI SV stuff have now different values than what I've had previously (I've had T-Mobile IMEI, now it appears that I was "assigned" O2 IMEI & IMEI SV values - very bizarre!).
Is this something I need worry about and (I don't yet have a sim card, but I plan to get one soon after I fix my phone), more importantly, how the hell do these IMEI numbers appeared on my phone - where did they came from?!
josh36 said:
Small addition as apparently I cannot post a reply (too few posts) in this thread: http://forum.xda-developers.com/showthread.php?p=9055790#post9055790
Question to ezTerry (if he is reading this!): the advice given in that post above was absolutely splendid! I followed it religiously and it worked an absolute treat!
There is one exception though - I've LOST all of my IMEI, IMEI SV and Baseband information after applying these fixes. As soon as I installed the radio updates and then installed my newly-compiled kernel + CM7.2 (successfully!) I then checked the above fields from Settings and they were all gone!
After a while, the baseband, IMEI and IMEI SV appeared, but the IMEI and IMEI SV stuff have now different values than what I've had previously (I've had T-Mobile IMEI, now it appears that I was "assigned" O2 IMEI & IMEI SV values - very bizarre!).
Is this something I need worry about and (I don't yet have a sim card, but I plan to get one soon after I fix my phone), more importantly, how the hell do these IMEI numbers appeared on my phone - where did they came from?!
Click to expand...
Click to collapse
Any takers?
@1 Check out the respective directories, i.e. for system apps /system/app
@2 Trial and Error, or someone might have made such a list for your device already
@3 No simple way, you would have to look through the decompiled code i guess
@4 Remove the apk from the folder (for example /system/app) and reboot your device, after wards you might have to clean up some extra folders, i.e. settings of that app. (you can use SD Maid from my signature for that)
@5 Some can just be installed the usual way, by opening it. Some .apk files have to be put in the system folders, afterswards reboot and the app should be "installed". To put those apps there use a rootcapable file explorer of your choice. To edit /system you will need to remount it as it is read only by default, you can do that through command line, but most good file explorers have an option for that.
@6 Yes thats possible, there was an app to do that, just not sure what it was called... It is very likely though, that those apps will not work correctly or just FC.
For the make system, if you just change a package, and build again, it will most likely just rebuild the changed files. I'm not so sure either though... damn make system can be pretty messy... and get upset real fast if you change something ;-).
Dark3n said:
@1 Check out the respective directories, i.e. for system apps /system/app
Click to expand...
Click to collapse
Yep, that indeed helped - I didn't realise that the .apk files are "intact" and do not behave in the "standard" (in Linux terms) way a "package" behaves - the app is "installed" as soon as .apk is placed in /data/app or /system/app. The PacketManager does the rest on reboot.
It also cleans up the mess "automagically" if I delete .apk file and reboot, which is nice.
Dark3n said:
@2 Trial and Error, or someone might have made such a list for your device already
Click to expand...
Click to collapse
Yeah, that's a real bugger - I can't see a way of finding the dependencies, but I haven't looked properly at "pm" (the Package Manager command line tool) - maybe I could use something there.
Dark3n said:
@6 Yes thats possible, there was an app to do that, just not sure what it was called... It is very likely though, that those apps will not work correctly or just FC.
Click to expand...
Click to collapse
A very simple example will issustrate my point - my calendar application is installed and needs some sort of GOOGLE_MAIL and access to the internet permissions, neither of which I am happy to grant, because 1) I won't be using online calendars; and 2) I won't use (google) mail.
The truth is, I deliberately did not install any google apps as I won't be using any of them - ever!
Now, every time I boot up and look at my log files with logcat I see a bunch of error messages that this application (the calendar) needs a bunch of permissions which do not exist (naturally, as I haven't installed a single google app on my phone).
So, I wish to wipe out these permissions from the calendar so that logcat is not filled with junk every time I start my phone.
As I already pointed out above, there are also some installed apps who are listed to "need" permissions I am not happy to grant - like the internet access to calendar for example (there are more apps, but I think you get the point).
Dark3n said:
For the make system, if you just change a package, and build again, it will most likely just rebuild the changed files. I'm not so sure either though... damn make system can be pretty messy... and get upset real fast if you change something ;-).
Click to expand...
Click to collapse
Yeah, that was my plan B - there must be another - easier - way though.
I wish to update a lot of stuff (I will be recompiling/refreshing existing packages as well as adding new things I developed for "standard" Linux), but with this Android make system I am blind - it is very different to what I am used to in the Linux world.
To top it all off, I can't post in any of the devs forums yet as I do not have 10 posts!
Further to my previous post - I just found out a superb article about stripping out Android and removing unnecessary packages from it - http://wiki.cyanogenmod.com/wiki/Barebones
It lists various dependencies and shows what could be deleted and what cannot be - what I wanted really.
My only remaining problem - at least for now - is the making of specific packages without building the whole image.