Related
Just throwing an idea out there, and since it's for developers (specifically people who make their own recovery images) I assume this is the right section.
Since we have 'control' over the recovery image on our phones, would it not be possible to add a little script to an update.zip that a suitably modified recovery image could extract and run to interactively prompt the user for various Rom options? I'm thinking specifically of kernel choices, but it could be extended to almost anything that needs to be done prior to booting the installed image.
Imagine installing a rom, and during the install you got a little menu like this:
1: RamHack, BFS Kernel
2: RamHack, CFS Kernel
3: No-RamHack, BFS....
etc...
inefficient, it adds extra baggage to rom, and more things can go wrong. what would you rather downlaod a 90mb file or a 110 mb file.
Which would you rather download, one 110MB ROM or 2 90MB ROMS?
I'm pretty sure there's more than a few people who'll download different variations of the same ROM so they can see which is faster, how much easier would it be to just download one thing and then choose which options you want in there without downloading anything else.
I believe it is entirely possible. As a matter of fact, I was working on a ROM project that would have an interactive installer from the update.zip that would selectively install different features, apps, customization, themes, etc., based on the recovery menu application. It would use a lot of the /cache for temp space, though, as the installer application and its resources and configuration file, and later, the necessary parts of the ROM itself, would need to be unzipped before the install can run, if I recall correctly.
Does anyone have a good link to a reference for the command syntax for the /META-INF/com/google/android/update-script file? I'll go search for it in a few moments myself. I could probably make a simple ROM installer that chooses between ROM X and ROM Y based on a key input, as a proof of concept. I'll test it myself, I don't really mind half-bricking my device for science. (As long as I don't need to touch the SPL/Radio, that is.)
Update: Some creative searching finds me this:
JesusFreke said:
Assuming you mean update-script in an update.zip update, you will need to either look at existing update-script files for an example of the syntax, or look at the source of the recovery program in the android source
Click to expand...
Click to collapse
There's also a "make-update-script.c" file I'm seeing here and there, I'm trying to find the file in the Android source.
Update 2: From install.c at donut from cyanogen's android_bootable_recovery:
Code:
#define ASSUMED_UPDATE_SCRIPT_NAME "META-INF/com/google/android/update-script"
#define ASSUMED_UPDATE_BINARY_NAME "META-INF/com/google/android/update-binary"
and in commands.c, toward the bottom at register_update_commands is all the commands defined, and above that are all the functions they carry out.
sorry about that deicist i was sleepy when i wrote that so i must have been cranky yea i guess that is a fine idea, with just 30 more mb you have like 300mb worth of stuff. and you can pick which 90 mb you want.
markolo25 said:
sorry about that deicist i was sleepy when i wrote that so i must have been cranky yea i guess that is a fine idea, with just 30 more mb you have like 300mb worth of stuff. and you can pick which 90 mb you want.
Click to expand...
Click to collapse
Well, on the 32B platform with the Death SPL (my phone) we have the following partitions of the internal NAND memory (mtdblock*) from the df and mount command:
NAND 3: /system 92160kb - OS partition, static and read-only
NAND 5: /data 91904kb - User, system config, app config, and apps (without a2sd)
NAND 4: /cache 30720kb - OTA cache, Recovery/update config and temp
And I'd assume NAND 1 and 2 are the kernel, ramdisk, and bootloader config.
So the ROM wouldn't exceed 92MB installed (most leave some room in /system for hacks and updates). And the update process doesn't ever really "flash", per se; it just formats, copies files, and sets permissions and initialization configs, like Windows or Mac.
So the files that are common to the different ROMs being packaged don't need to be duplicated, only the ones that are changed (like a boot.img, or 32A/B compatibility, or different apps). The update script and chooser menu will decide which files to copy. Meaning the ROM package in and of itself shouldn't really need to exceed 128MB, even if choosing from a wide variety of platforms. And upon installation, the system might take less than 32 MB.
yeah, what he said ^
The scenario I was thinking about specifically was SuperD. If you look here:
http://forum.xda-developers.com/showthread.php?t=613809
There's 8 different downloads there. How many files are actually different between those 8? I guess the themes mean a lot of application files are different (due to having different resources in them) but the underlying framework files will be pretty much the same I think.
Deicist said:
yeah, what he said ^
The scenario I was thinking about specifically was SuperD. If you look here:
http://forum.xda-developers.com/showthread.php?t=613809
There's 8 different downloads there. How many files are actually different between those 8? I guess the themes mean a lot of application files are different (due to having different resources in them) but the underlying framework files will be pretty much the same I think.
Click to expand...
Click to collapse
I could download them all, and find the differences of each. It would be cool if a ROM like this were available in a single download, from which you would choose the content from the device before flashing.
Also, inspired by talking about this, I wrote up a guide on the update-script in the package file. It's still not finished, but it'll be the only guide available for that syntax yet (trust me, I couldn't find one myself ). Link's in my sig.
I'm surprised that nobody's mentioned the Droid... the sholes.info rom (now called droidmod) have used a .tgz archive instead of a .zip, the .tgz installs have always allowed this customization, droidmod makes one of the most common recovery's AND rom's. (SPRecovery/Droidmod).
It give you the option to choose what launcher to install, what theme, what apps to remove.
page here: http://droidmod.org/news/droidmod-v1-0-is-out/
how big of a ROM are you thinking about?
There are roms (WG etc...) that offer more than one kernel as update.zip you can flash over an existing installation of your rom instead of adding all the stuff to one big file. also you can download themes for several roms/for metamorph.
so why would you want some big install script instead of just downloading the files you like and flash it?
jmhalder said:
I'm surprised that nobody's mentioned the Droid... the sholes.info rom (now called droidmod) have used a .tgz archive instead of a .zip, the .tgz installs have always allowed this customization, droidmod makes one of the most common recovery's AND rom's. (SPRecovery/Droidmod).
It give you the option to choose what launcher to install, what theme, what apps to remove.
page here: http://droidmod.org/news/droidmod-v1-0-is-out/
Click to expand...
Click to collapse
Is the Droid's recovery image capable of running on the G1, and/or is it open-source enough to be cross-built to the G1? If so, we could port it here. Only problem there though, is that all the roms are in update.zip format for the G1 already, we'd need to make it dual-compatible if we don't want to split the community and annoy generally everyone ("My rom only supports TGZ recovery!" "ROMs are in ZIP format, and I will not make a TGZ one for those unfortunate enough to use the other Recovery!")
domenukk said:
There are roms (WG etc...) that offer more than one kernel as update.zip you can flash over an existing installation of your rom instead of adding all the stuff to one big file. also you can download themes for several roms/for metamorph.
so why would you want some big install script instead of just downloading the files you like and flash it?
Click to expand...
Click to collapse
Well, for one, devs need to host one file only, and users need to download one file only. The file won't be much bigger or more complex at all, really. And the way things look on the recovery side, we could probably put a selection of themes in with the updater and patch them in post-install with a Metamorph script straight from recovery. That way, the rom is as you want it out-of-the-box, no multiple reboots, etc.
Also, those scripts that usually run on first-boot, like zipalign, dexopt, apps2sd etc. should run from the recovery environment, instead of before the Android bootanimation (I do get tired of hearing "This ROM will take a LONG time on the first boot. If it's stuck at the G1 screen, just wait 10-30 minutes.")
So what would you rather have, one single ROM (G1_Android_ROM_v1.17.zip) for each version released,
or six different ZIPs to flash (G1_Android_ROM_10MB_CFS.zip, G1_Android_ROM_Greentheme.zip, G1_Android_ROM_Bluetheme.zip, G1_Android_Nowipe_GApps.zip)?
Would you rather select what you want to include at flash (and be able to change things like themes or features after flashing), or have 20 different files to choose from, wiping and flashing on each?
I am aware of the no-wipe upgrades for many ROMs, but they can get confusing (I once flashed a CFS_10MB.zip that was for a Hero ROM, stupidly thinking that it might have been for the Eclair that I just downloaded.) Needless to say, I had to wipe and reflash. Again.
TylTru said:
Is the Droid's recovery image capable of running on the G1, and/or is it open-source enough to be cross-built to the G1? If so, we could port it here. Only problem there though, is that all the roms are in update.zip format for the G1 already, we'd need to make it dual-compatible if we don't want to split the community and annoy generally everyone ("My rom only supports TGZ recovery!" "ROMs are in ZIP format, and I will not make a TGZ one for those unfortunate enough to use the other Recovery!")
Well, for one, devs need to host one file only, and users need to download one file only. The file won't be much bigger or more complex at all, really. And the way things look on the recovery side, we could probably put a selection of themes in with the updater and patch them in post-install with a Metamorph script straight from recovery. That way, the rom is as you want it out-of-the-box, no multiple reboots, etc.
Also, those scripts that usually run on first-boot, like zipalign, dexopt, apps2sd etc. should run from the recovery environment, instead of before the Android bootanimation (I do get tired of hearing "This ROM will take a LONG time on the first boot. If it's stuck at the G1 screen, just wait 10-30 minutes.")
So what would you rather have, one single ROM (G1_Android_ROM_v1.17.zip) for each version released,
or six different ZIPs to flash (G1_Android_ROM_10MB_CFS.zip, G1_Android_ROM_Greentheme.zip, G1_Android_ROM_Bluetheme.zip, G1_Android_Nowipe_GApps.zip)?
Would you rather select what you want to include at flash (and be able to change things like themes or features after flashing), or have 20 different files to choose from, wiping and flashing on each?
I am aware of the no-wipe upgrades for many ROMs, but they can get confusing (I once flashed a CFS_10MB.zip that was for a Hero ROM, stupidly thinking that it might have been for the Eclair that I just downloaded.) Needless to say, I had to wipe and reflash. Again.
Click to expand...
Click to collapse
You could just have flashed the original rom without wipe.
Would be a step forward if you could simply put roms and additional files in folders... maybe even whole zip files containing some updates and an xml like file to describe them. This would guarantee compatibility with earlier boot images (just unpack the updates in the zip). Tar might work better than zip as it is not compressed thus faster afaik.
http://droidninja.com/?p=26334
We got ninja'd. Apparently the Droid Does exactly this.
So let's get to work on porting it! Like this comment says, I'm working on finding the source code to a good Droid recovery image (sadly Droid hasn't its own forum here), and if it's closed source, I'll get on reverse-engineering a .tgz rom to see exactly how it works.
TylTru said:
http://droidninja.com/?p=26334
We got ninja'd. Apparently the Droid Does exactly this.
So let's get to work on porting it! Like this comment says, I'm working on finding the source code to a good Droid recovery image (sadly Droid hasn't its own forum here), and if it's closed source, I'll get on reverse-engineering a .tgz rom to see exactly how it works.
Click to expand...
Click to collapse
This is pretty awesome. I was going to say, we could easily run bash scripts but this is so much better.
This needs to be merged with both Amon_ra's recovery and the new 2.x based recovery...
First of all... Thanks Chainfire!!!! This is totally based on your work.... i made only some MOD....
Ok, the work is quite finished... the CF-ROOT for I9003 is ready!
I called this "beta version" (since i need your tests/opinions) but all might work.
IMPORTANT: This is only for KPH Firmware!!!
You can flash this over any other CWM or over the stock FW.
Many people will ask "Why i have to install this?"... because with this your phone will have:
- Root ( don't need to use SOC or any ZIP);
- Busybox 1.17.2;
- Sqlite3 v3.7.2;
- init.d support (you can put in the folder /system/etc/init.d all the script that you want to be loaded at the startup);
- New fixed CWM ( unyaffs issue has been fixed - offline charge fixed - USB storage mode while in CWM fixed);
- Add EXT4 support to the phone ( so you can convert the filesystem to ext4 to improve performance);
- full working CWM Manager (backup - restore - delete backup - install apk - flash update.zip - flash kernel - reboot to CWM);
- Tweaks Manager with various tweak ( Ram Min Free - SD Speed - I/O Scheduler - Kernel Scheduler - CPU Conservative Governor - Swappiness - Ram Script by Juwe11 - Media Stagefright)---> Many people asked for Juwe Ram Script ---> to enable it completely choose in the Tweaks Manager: Ram Script - Ram Min Free and Swappiness;
- Auto ZIP-Align on boot - You can choose it in the tweaks app(NEW)
- Reviewed tweaks values (some from darky's rom some from hardcore some from other post in XDA)( thanks to bigeyes0x0 and Misledz )(NEW)
- Custom Boot-Animation support (place your custom bootanimation in /system/media/ and call it sanim.zip)(NEW)
To do:
- other tweaks suggested by you...
- whatever can be added.
Let me know what you think
HERE you can find the original post.
HOW TO INSTALL:
1- Flash with Odin the .tar file
or...if you went from a previous version of CF-ROOT
2- Download the .zip file into the external SD the open CWM Manager --> flash Kernel --> select the file you have just downoaded
IMPORTANT:
If you cannot find the two apps on your app drawer maybe you haven't space left on /system so delete some unused apps like aldiko, delere /system/cfroot folder and reboot
IMPORTANT/2: after the flash the phone might take some time to boot. You might think that it freeze on Samsung Logo but it's normal cause the auto-zipalign proc need some time. Just Wait.
UPDATE: Added CF-ROOT with my custom kernel. This have Ext4 inside the kernel (no modules) and OC to 1.1 Ghz. I think that it is secure. I haven't test it very well so please report me the issues you will find.
!
Version 05.09.2011 Changelog:
- added Graphics Boost Tweak (thanks Gana)
- added acid tweaks (thanks to the people that worked on it .. specially Bigeyes0x0);
- reviewed 00tweaks file by Bigeyes0x0;
To disable journaling on ext4 partition apply the attached journaloff.zip in CWM (Not CWM Manager app - it must be fixed).
There're two version of the CF-ROOT, the version with **CWM_Manager** can be flashed with CWM Manager App (select flash kernel) the other with odin (like always)
UPDATE 20.10.2011:
CF-ROOT for XXKPM can be found HERE:
- Standard Version --> http://www.multiupload.com/S463K75UED
- Surprise version ( i suggest you this) --> http://www.multiupload.com/G20L6PL5WC
What's new ?
- I finally finished the custom bootanimation support.... now works like he have to works. Just copy your bootanimation into /system/media and rename it to sanim.zip.... i think that here you can find what you need http://forum.xda-developers.com/showthread.php?p=17322814#post17322814
IMPORTANT!!!
If you have installed the beta version you must know that the ext4 conversion for that doesn't work properly. Ok, system, cache and dbdata will be on ext4 but data not. This because the init binary check on boot if /data have rfs FS and, if not, it format the partition wiping all your data.
In the new version i modified the init binary so it cannot do it more
I must say that i became mad to discover this damn thing !
A few questions: Are you using the latest fixed version of CWM? Also you mentioned that you would be releasing another update soon regarding the Nandroid backup image corruption issue. Is it in this release?
Also: Is this an alternative to ROM manager, apart from the inclusion of the tweaker tool?
Regarding the enhancements, could you please elaborate on some of them and what is safe/not safe to use (particularly in the tweaks and what they do)?
What I understood, after looking over all the posts, was that you optimized the CF-Root by chainfire for the i9003, by using a compatible Root, CWM, and adding an ext4 kernel? Are you going to port the ext4 converter tool as well? Will we be able to use an external SD card with ext4 formatting (Could be used to store files larger than 4GB)?
Sorry about the ton of questions. Trying to learn, and what better way to learn than from the best!
I'm going to take it out for a test drive now on XXKPE with ext4! Will report back later!
Thanks for your valuable work, I'm a huge fan!!!
Cheers
Update: Confirming that the passive charging bug has been fixed! Thanks Skin1980!
I cannot find the CWM or Tweaks icons in the app drawer as indicated in your screenshots. I can access CWM recovery mode using the 3 button combo though.
I had installed the last version of CWM by Amit and formatted with ext4 and I just used ODIN to flash over that install. I tried flashing again, still not appearing in app drawer. Any solutions?
Great job skin.. Hoping for the early release of a stable one.. Will test it later
Sent from my GT-I9003 using XDA Premium App
it's great...>.<
Auguri! Ok wow, This is pure genius . I've always been wondering what our CWM were based off. I guess using this would fix most issues people get when flashing CWM, since it's based off the original firmware
Also I'm loving the tweaks, they seem to make the phone more smooth, Although I've seen a few bugs after applying this I can't seem to use the V6 charger script anymore I get an error, will be posting one shortly. There are some minor hiccups in between and I tend to get FC on some apps when I multitask.
Edit: Turns out It's busybox related, no shell access. I've tried launching Busybox by Stericsons to check and It says no root access was given and boots me out.
i happy that u r belong to this community
Is there any recovery module or tweak available, in which we can handle basic file operation like copy, move from sd card to system or any thing similar?
Erahgon said:
A few questions: Are you using the latest fixed version of CWM? Also you mentioned that you would be releasing another update soon regarding the Nandroid backup image corruption issue. Is it in this release?
Also: Is this an alternative to ROM manager, apart from the inclusion of the tweaker tool?
Regarding the enhancements, could you please elaborate on some of them and what is safe/not safe to use (particularly in the tweaks and what they do)?
What I understood, after looking over all the posts, was that you optimized the CF-Root by chainfire for the i9003, by using a compatible Root, CWM, and adding an ext4 kernel? Are you going to port the ext4 converter tool as well? Will we be able to use an external SD card with ext4 formatting (Could be used to store files larger than 4GB)?
Sorry about the ton of questions. Trying to learn, and what better way to learn than from the best!
I'm going to take it out for a test drive now on XXKPE with ext4! Will report back later!
Thanks for your valuable work, I'm a huge fan!!!
Cheers
Update: Confirming that the passive charging bug has been fixed! Thanks Skin1980!
I cannot find the CWM or Tweaks icons in the app drawer as indicated in your screenshots. I can access CWM recovery mode using the 3 button combo though.
I had installed the last version of CWM by Amit and formatted with ext4 and I just used ODIN to flash over that install. I tried flashing again, still not appearing in app drawer. Any solutions?
Click to expand...
Click to collapse
1- The CWM used is always the last... if i'll update the CWM i'll update the CF-ROOT;
2- The CWM fixed reguard nandroid backup is under test;
3- My CWM isn't ROM Manager compatible... with the CWM Manager from Chainfire you can do a lot of things without going into CWM
4 - to convert in EXT4 just follow the guide on the other thread;
5- Not sure if you can format in XT4 your external_sd... try ;
6- The tweak are all sure... now i haven't time to exlplain better... some don't work.... some other work.
7- If the icon don't appear in app drawer try to check into system/app if the two files are there... if not try to remove /system/cfroot folder and reboot. Maybe your system folder is full so you can install they manually, the original apk are inside /res/misc/ folder.
8- bye
for me wifi not working obtaining ip address,gps not lock can i flas normel bootimg.ur work is awesome thx
bala242 said:
for me wifi not working obtaining ip address,gps not lock can i flas normel bootimg.ur work is awesome thx
Click to expand...
Click to collapse
I'm sorry.. for me everything is working...Before my CF-ROOT all works?
ur a superhero man!!
great ;-)
Skin1980 said:
I'm sorry.. for me everything is working...Before my CF-ROOT all works?
Click to expand...
Click to collapse
ya everything work before,can i reflas ur ver cwm?any body get this error?
Is there any tweak for increasing the 2g speed ??
or getting 3g speed in 2g plans...
I need this very badly...
I am not getting exact idea that what exact cf root does??? Or how cf root is so special...?? Will this make our work easy to do changes in kernal (that would be great)...???
Please can anybody in simple language....!!!
anigr88 said:
Is there any tweak for increasing the 2g speed ??
or getting 3g speed in 2g plans...
I need this very badly...
Click to expand...
Click to collapse
What your asking for is impossible.
Update!
The problem I had turned out to be due to the lack of space in the "/system" folder - as you had predicted Skin1980! Once I deleted some unnecessary software, I was up and running fully within minutes!
The phone works great! The fixes are really good! Having no issues except for one so far. I can't seem to mound "sdcard" in CWM recovery mode and cannot do a restore, for the same reason, from the CF-ROOT menu.
I have a feeling it's something I did wrong earlier, so I'll reflash completely and try again ('cause I have a lotta time on my hands atm and I want the bestest possible phone I can get).
Note: This doesn't seem to be compatible with DDKB2. Assuming that this is mainly for GB firmwares? Can someone corroborate this?
As usual, thanks!
Erahgon said:
The problem I had turned out to be due to the lack of space in the "/system" folder - as you had predicted Skin1980! Once I deleted some unnecessary software, I was up and running fully within minutes!
The phone works great! The fixes are really good! Having no issues except for one so far. I can't seem to mound "sdcard" in CWM recovery mode and cannot do a restore, for the same reason, from the CF-ROOT menu.
I have a feeling it's something I did wrong earlier, so I'll reflash completely and try again ('cause I have a lotta time on my hands atm and I want the bestest possible phone I can get).
Note: This doesn't seem to be compatible with DDKB2. Assuming that this is mainly for GB firmwares? Can someone corroborate this?
As usual, thanks!
Click to expand...
Click to collapse
after a whole day of using it. The phone will tend to lag and build up after a while. You'll notice the phone becomes slow again. I don't know what's going on.
Misledz said:
What your asking for is impossible.
Click to expand...
Click to collapse
I just want a small boost in the speed ....
Misledz said:
after a whole day of using it. The phone will tend to lag and build up after a while. You'll notice the phone becomes slow again. I don't know what's going on.
Click to expand...
Click to collapse
I did notice that initially it was fast. But as I kept it going through the day to recalibrate the battery, it did slow down and start to lag. I thought it was something to do with that. Also I felt that I had done something wrong with the flashing.
Going to overhaul my phone completely: Format, re-partition, XXKPE install (flashing twice), flash fixed CWM from the other thread, root using SOP 2.1.1, install busybox requirements for deodexing (this failed for me the last few times), restore settings using Titanium Backup, Nandroid backup, ext4 this baby, restore, and then install CF-ROOT to monitor.
Wish me luck! See you guys on the other side... again!
anigr88 said:
I just want a small boost in the speed ....
Click to expand...
Click to collapse
You've got the wrong thread mate!
Your bandwidth is capped by you operator and is dependent on how much they allocate you. On top of that 2G is physically limited to certain speeds which, usually, cannot be surpassed by legal means, and the illegal ones give you too less of a boost vs complications and errors to even bother about (I mean big ass hardware)!
Warning/disclaimer: This thread is intended for those who already know how to compile a kernel and have a working knowledge of Linux and its derivatives. There shouldn't be a great deal of risk involved, but you are responsible for what happens if you decide to follow these instructions.
Polite request: Please don't post replies to this thread that aren't of a technical nature directly related to compiling, modifying, or testing the kernel.
Introduction:
It appears as if Lenovo have released a buildable and bootable kernel source. I've done some preliminary testing with it. However, it would be better if we could get lots of people building and running the kernel, so that we can spot any remaining problems. This is also an opportunity to start hacking it to add/fix features such as USB OTG, etc.
Kernel source:
Get it from the Github repository at: https://github.com/gmarkall/lenovo_a1_07_kernel
Toolchain:
The Makefile seems to suggest that Codesourcery 2010q1 has been used by Lenovo to compile the kernel. Get it from https://sourcery.mentor.com/sgpp/lite/arm/portal/release1293, and make sure that the arm-none-linux-gnueabi-* binaries are on your path.
Building the source:
You may wish to edit the Makefile around line 192 to set CROSS_COMPILE=arm-none-linux-gnueabi- instead of the hardcoded path that is the default.
Then, to build the kernel:
Code:
make distclean
make a1_07_defconfig
make uImage
Booting the kernel
Normally, Android devices have two boot images that consist of a kernel and a ramdisk. One boot image is for the recovery, and the other is for the Android system. This makes it safe to flash a new boot image containing an untested kernel for the Android system, since the recovery can always boot up using the other boot image. However, the A1, by some bad design decision, only has one kernel - the bootloader always loads the same kernel, and just loads a different ramdisk depending whether it is to boot into recovery or system. As a result, it is not safe to flash a kernel to your A1 unless it's already been tested, since a bad kernel will make it impossible to boot from the internal memory, and you'll need a bootable SD card.
The solution to this problem is to make a bootable SD card for loading the kernel and ramdisk from. A bootable SD card consists of two partitions:
* A small bootable VFAT partition, that holds the X-Loader (MLO), U-Boot (u-boot.bin) and the kernel (uImage).
* An ext2 partition that holds the root filesystem.
In order to create a bootable SD card, use the omap3-mkcard.sh script that is attached below. To invoke it for making /dev/mmcblk0 a bootable SD card:
Code:
sudo omap3-mkcard.sh /dev/mmcblk0
You may need to hack the script if your SD card device isn't a /dev/mmcblk* one, since the script searches for partitions denoted "p1" and "p2" - this may need changing to just "1" and "2" respectively (thanks Xbdesign and Brancaleone for this).
This will create the necessary partitions, set the bootable flag, and format them. You will then need to mount the first partition (e.g. /dev/mmcblk0p1), and copy MLO and u-boot.bin to it (also linked below). Then, copy the uImage that you built from your kernel tree, which will be located in /arch/arm/boot. You can now unmount this partition.
Next, mount the second partition (e.g. /dev/mmcblk0p2). This will need to contain the same set of files that the initial ramdisk contains. There are two different ramdisks that you might want to use - one is from the Cyanogenmod 7 build, and the other one is from the stock system. Download links for these are also below. To extract the ramdisk, copy it onto the SD card second partition, then run the following commands (assuming the ramdisk is called ramdisk.ub):
Code:
dd if=ramdisk.ub of=ramdisk.img.gz bs=64 skip=1 # Strip off the U-Boot header
gunzip ramdisk.img.gz # Unzip
sudo cpio -idmv < ramdisk.img # Extract the cpio archive
Then, unmount the second partition of the SD card.
You should now be able to remove the SD card and insert it into your A1. Power down the A1 and power up again, and it should hopefully boot from the SD card and load your kernel. If it's booted from the SD card and loaded your kernel, you should be able to see that it was compiled on your host by looking in Settings -> About Phone -> Kernel Version.
Troubleshooting:
This is not a comprehensive guide, just a few pointers to where a problem might be - please post replies to the thread to get troubleshooting suggestions.
System boots up, but is not running my kernel - it didn't boot from the SD card. If the A1 is plugged into the charger/USB, you sometimes need to reboot multiple times before it boots off the SD card (I think it doesn't always turn off fully when the charger is plugged in).
The static Lenovo logo flashes up over and over again - it's booted from the SD card, but didn't manage to load your kernel
The static Lenovo logo comes up and stays there/goes to a black screen - it's probably loaded your kernel and mounted the root file system, but failed to mount /system. Try running adb shell to see what happens. If you get something like
Code:
/system/bin/sh: no such file or directory
then your kernel is running but /system isn't mounted.
IRC Channel
Join #ideapad-a1 on irc.freenode.net to discuss the kernel and other A1 development-related topics!
Download Links:
MLO
u-boot.bin
omap3-mkcard.sh
Ramdisk for Cyanogenmod 7
Ramdisk for ROW 2643 stock release
I've added the two ramdisks that I suspect will be most common - if you need another ramdisk, you'll have to extract it from an OTA.
Also, I compiled a tun.ko - www.doc.ic.ac.uk/~grm08/ideapad/tun.ko
Here's a cifs.ko - http://www.doc.ic.ac.uk/~grm08/ideapad/cifs.ko
EDIT: AutobahnA1 and infraredevans have confirmed that tun.ko works on ROW_2643.
EDIT 2/3: Please test out cifs.ko! (It doesn't work - it needs slow-work.ko. Will get that done when I can. Thanks to Ilikecokethree on the Lenovo forums for pointing that one out).
你懂中文吗,大神!
我是中国人 关注你的帖子很久了,我不懂英文,用翻译软件看的大概,我们这里很多人支持你,都在用你的rom 很棒!比联想官方的好多了,谢谢!
I think I did exactly the steps as you told, but it still boots the original kernel, may something be wrong? Thank you very much.
PS: I'm a chinese too, and my English is not good either
gmarkall said:
This is also an opportunity to start hacking it to add/fix features such as USB OTG, etc.
Click to expand...
Click to collapse
Please do not forget to try the WiFi-based geolocation, which is also missing!
I wish I had the knowledge to work on it myself but I am far from taking over such tasks...do not have the slightest idea about how these things work.
Good luck and please keep us informed!
geoponer said:
Please do not forget to try the WiFi-based geolocation, which is also missing!
Click to expand...
Click to collapse
Geolocation bug has nothing to do with kenerl. It's a missing entry in framework-res.apk in ROM from Lenovo
see : forums.lenovo.com/t5/IdeaPad-Slate-Tablets/A1-Geocode-Bug-in-Firmware-Solution/td-p/709701
betabox said:
Geolocation bug has nothing to do with kenerl. It's a missing entry in framework-res.apk in ROM from Lenovo
see : forums.lenovo.com/t5/IdeaPad-Slate-Tablets/A1-Geocode-Bug-in-Firmware-Solution/td-p/709701
Click to expand...
Click to collapse
Also, it's working in CM7.
hohoxu_hao115 said:
I think I did exactly the steps as you told, but it still boots the original kernel, may something be wrong?
Click to expand...
Click to collapse
Sounds like it's booting from eMMC instead.
Can you post the partition table of the SD card as listed by fdisk, and also a directory listing of each of the two partitions? I ask this to confirm what's happened - seems like you're the first person to follow these instructions, and it's quite possible I made a mistake somewhere.
betabox said:
Geolocation bug has nothing to do with kenerl. It's a missing entry in framework-res.apk in ROM from Lenovo
see : forums.lenovo.com/t5/IdeaPad-Slate-Tablets/A1-Geocode-Bug-in-Firmware-Solution/td-p/709701
Click to expand...
Click to collapse
Apologies for the off-topic, but I think that we are discussing two different things here: I am referring to the Geolocation bug, which prevents me from e.g. checking in with Foursquare by using only WiFi location information (active GPS signal is needed) while you have solved the Geocoding bug, which has nothing to do with the Geolocation one...
Please correct me if I am wrong.
@Graham: I plan to install the CM7 that you have been working on (with the feedback from other users - I keep an eye on that thread!) but since I use my A1 for professional purposes as well, I would like to make sure that everything is working fine before moving to CM7. Apologies for not being able to contribute to the beta testing of CM7 but I am really looking forward to seeing a version based on the source code provided by Lenovo, which I think will lead to a more stable version of your CM7. I cannot thank you enough for taking the time to work on this, really!
geoponer said:
Apologies for the off-topic, but I think that we are discussing two different things here: I am referring to the Geolocation bug, which prevents me from e.g. checking in with Foursquare by using only WiFi location information (active GPS signal is needed) while you have solved the Geocoding bug, which has nothing to do with the Geolocation one...
Please correct me if I am wrong.
Click to expand...
Click to collapse
I think that whether it works in CM7 or not, it almost certainly isn't a kernel issue. I'll test it by signing up for Foursquare and give it a try out on CM7 to see if it works later on. Will post my findings in the CM7 thread.
Hi Graham,
just gonna pile up several questions/thinkings and feel free to comment them the or answer on your liking
We do have few hickups on CM7 but I am more excited about idea of having proper recovery then ironing current CM rom that works more than satisfactory right now. Do we have enough code (I assume that target here is u-boot) on our hands that someone can implement necessary changes to internal partitions and boot procedures?
what is your opinion on replacement of u-boot with something else? for example LK loader or to be more precise with its current HD2 implementation known as cLK. it allready has some neat features like HBOOT like GUI, ability to change partition sizes on device itself (without computer), ability to boot from different partitions (would be nice to have android and ubuntu side by side loaded on our devices) and last but not least it has fastboot support enabled...or is it better way fill up u-boot with desired features if possible?
so...just my wishful thinking...not enough knowledge on my side to do anything regarding all this just hoping that some of you, more capable guys gets interested in this
dusko_m said:
Hi Graham,
just gonna pile up several questions/thinkings and feel free to comment them the or answer on your liking
We do have few hickups on CM7 but I am more excited about idea of having proper recovery then ironing current CM rom that works more than satisfactory right now. Do we have enough code (I assume that target here is u-boot) on our hands that someone can implement necessary changes to internal partitions and boot procedures?
what is your opinion on replacement of u-boot with something else? for example LK loader or to be more precise with its current HD2 implementation known as cLK. it allready has some neat features like HBOOT like GUI, ability to change partition sizes on device itself (without computer), ability to boot from different partitions (would be nice to have android and ubuntu side by side loaded on our devices) and last but not least it has fastboot support enabled...or is it better way fill up u-boot with desired features if possible?
so...just my wishful thinking...not enough knowledge on my side to do anything regarding all this just hoping that some of you, more capable guys gets interested in this
Click to expand...
Click to collapse
I do want to implement something that's pretty much as you describe. My biggest motivation is that it's currently not safe to flash a kernel since you can break both system and recovery that way in one go - I really want to make the boot process more robust.
gmarkall said:
Also, I compiled a tun.ko - tun.ko
I haven't tested it yet - is anyone able to try it please?
Click to expand...
Click to collapse
The module loaded without a problem on my 2643_ROW Kernel. Installed "Rooted AnyConnect" from the "Play Place". Now I can connect to my company VPN.
gmarkall: YOU ROCK! THANK YOU!!!
tun.ko
Graham
The tun.ko module works perfectly with openvpn on 2643_ROW.
I can now access my Amahi home server,awsome.
Thanks a lot you are doing a great job.
Dont want to sound presumptuous but any chance of a cifs.ko to go with it .
Cheers
Infraredevans said:
Dont want to sound presumptuous but any chance of a cifs.ko to go with it .
Click to expand...
Click to collapse
I'll give it a whirl... give me a few minutes.
gmarkall said:
I'll give it a whirl... give me a few minutes.
Click to expand...
Click to collapse
Here it is: http://www.doc.ic.ac.uk/~grm08/ideapad/cifs.ko
To compile it I had to copy md5.h from another kernel source to fs/cifs in the kernel tree. I also had to edit init/Kconfig so that CONFIG_SLOW_WORK defaulted to yes. I configured the module with the options:
Support Legacy LANMAN servers which use weaker security
CIFS Extended attributes
CIFS POSIX attributes
and without statistics, debugging, or experimental features. Let me know if this is a suitable config - I could always tweak it and build another one.
arm-2010q1-202-arm-none-linux-gnueabi.bin
Did someone manage to install arm-2010q1-202-arm-none-linux-gnueabi.bin on 64bit system?
xbdesign said:
Did someone manage to install arm-2010q1-202-arm-none-linux-gnueabi.bin on 64bit system?
Click to expand...
Click to collapse
I did - I didn't have any problems, but my random guess about how to solve it could be to install ia32-libs. If installing that doesn't solve it, can you post a bit more detail about the problem?
I am using ubuntu 10.04 LTS and just cant install / find Getlibs to install a 32-bit version of xulrunner :-(
xbdesign said:
I am using ubuntu 10.04 LTS and just cant install / find Getlibs to install a 32-bit version of xulrunner :-(
Click to expand...
Click to collapse
Do you need that to run the installer? I just downloaded the tar version instead and extracted it. I saw there was an installer as well, but I thought it would be more hassle than using the tarball so I just ignored it.
Hola peoples!!! Ok so I just thought I'd create my own thread on this matter. Mustangtim started one in apps and themes (and here is the link to that thread) but since I'm taking over this project it was brought to our attention that this should be in the dev section as its no longer just an app.. I am actually tearing .imgs apart trying to figure out what the deuce.
FIRST OFF THIS IS A WORK IN PROGRESS, WE ARE NOT YET FULLY SUPPORTED. HOWERVER I'M DOING MY BEST TO CHANGE THAT.
Secondly if you want to help get this started please visit the market and grab the app here. Its a $3 dollar app for unlimited amount of roms, based on your SD card storage capacity anyway. And speaking of which you need AT LEAST a class 4 or better SD card to make this run smoothly.
Also feel free to visit the forums at http://forum.init2winitapps.com/
Ok so here it is, Boot Manager Pro. Its been a long time coming for the g2x to dual boot. First off let me say long story short, I currently have a bootable SD Rom, known as ROM1. I have yet to be able to recreate my findings tho. But it works and it doesnt brick at all. However it is a bit laggy on my class 4 SD card. Luckily I've already done my research on this project as there are many threads of such awesome info so I'm just going to be lazy about it and quote the good people of xda versus re-writing it based off of their info.
ChrisDDD said:
So here's a very basic description of how it works... It doesn't partition your SD card, it just creates a folder of its own, and then sub-folders to hold the different roms you install. When you install a rom, it basically creates images of the usual Android partitions - system, data, cache, & boot. These are standard .img files, just like the ones Clockwork creates when you do a backup. After the images are created and wiped (formatted, which you should do initially) it installs your rom into these essentially the same way as Clockwork installs a rom to your phone's actual partitions. I assume it modifies the kernel that comes with each rom to mount the image files on the SD card instead of the phone's partitions.
When you want to boot a rom, it just replaces your current boot image with the modified one and restarts the phone. With the modified boot image, the system, data and cache images on the SD card are mounted to the correct locations and Android starts up none the wiser. The rom will initially run a little slow, because the SD card is slower than the internal memory, but after things get cached it speed up considerably.
When you want to reboot to another rom, or back to the phone's rom, Boot Manager again swaps boot images that mount the desired rom's partitions (in the case of the phone's rom) or files (in the case of an SD card installed rom).
When you first run Boot Manager, it makes a Clockwork flash able backup of your current boot image, which you can flash if a rom hangs or loops on startup. Alternatively, you can also simply boot into recovery and do an advanced restore, choosing just the boot image to restore from a backup. It accomplishes the exact same thing.
It can be a little hit or miss, with some roms just plain refusing to start through Boot Manager, but it does work and when it does, it's pretty amazing given what it's actually doing.
Click to expand...
Click to collapse
So basically upon installing the app you need to setup your phone so that way you can properly install a ROM, follow these steps:
1. Go into the supersu(or superuser app) and then go to settings then disable logging or click none.
2. Then go into the BMP app and press the menu button on your phone, not the app, and go to settings. Once in settings put a check mark in force large boot.img, screen on during install, and then go into variables, leave tegra alone but change the sdcard block to show mmcblk1p1. Then press finish and let the app restart. By the way I didnt change any of the sizes of the .imgs but feel free to do so. But be warned do not decrease the size of the system.img only increase it, if desired.
3.Then after you've done the above you need to setup the phone rom. Click on 'Setup Phone' under phone rom and follow that process to setup your phone rom.
4. Once your phone rom is setup you may begin to install a zip to rom1 or rom2 or whatever slot you want. This is the tricky part. I have done tons of reading and most people say that if your using CWM, which us g2x'ers do, then you will probably have a better chance of getting a bootable rom by restoring from a nandroid backup you did versus installing new.
5. So after you decide which path you will take, nandroid backup or fresh rom install, choose install. If you choose a fresh rom, wipe system, data, and cache right away. If nandroid, then wipe after the install.
6. Now once you have clicked install put your phone down, DONT MESS WITH YOUR PHONE AT ALL! PUT IT DOWN AND WALK AWAY OR SOMETHING! Don’t mess with it, text from it, xda from it, dont even use the screen as a mirror!!!! lol seriously the app is picky and while under the .img creation process you want nothing to mess that up or you will not get it booted. You may however drag down the notifications bar to follow the progress of the install.
7. Once its complete, tap the install complete notification in the notification bar and let the app do its thing to finalize the install and get you back to your rom selection screen. Now if you did a nandroid back up here is where you click 'manage slot' and then factory reset the backup you did. Just do it, dont ask why.
7.1 Also so if you desire to install gapps and/or possibly a different kernel, now would be the time to do so while your here. I have read mixed reviews of doing this process right after the rom installs. However when I set up my rom1, I booted into it first all happily then realized I had no gapps. So I had to reinstall BMP on rom1 then boot back to phone rom and then I installed GB gapps and had no issues booting back into rom1.
8. Once the above steps are done if your feelin lucky go ahead and tap on boot the rom you installed, and if all goes well it will boot up.
9. If it boots up you need to post confirmation here!!! Provided info such as phone rom and the info on the sd rom you used and slot number and such.
Hopefully it will just work for you. I have done all the above steps using HFP 2.1 as my phone rom and only been able to get 1 bootable rom. Being it was for testing I used HFP as my phone rom and as well as my rom1.
So if the above steps dont wortk out for you and your boot lopped or what ever, then turn your phone off and reboot into cwm. You have 2 options to resolve the boot issue you just created. 1, you may go to restore then advanced restore then restore your boot. Or 2. select install a zip and nav to the bootmanager folder then phone rom then flash the update zip there.. then reboot and you should be back at your phone rom.
Here is a basic run down of everything that I have done so far:
When I first started working on this project I wasn’t doing any dev'ing to change any of the stuff in the boot.img. I just changed settings in the app per all the research I did. So when all was said and done I restored HFP 2.1 to ROM1 and it actually booted!! And it works lovely btw.. I can still boot into this rom today. I then decided to pass the word and ways that I created the working rom1, well I nor anyone else I passed the info to was able to get it working. Only one other person was able to confirm that rom1 works but only after I copied all my rom1 info and sent it to him for testing.. and he was able to boot into my created rom1… As I see it, it was a blue moon event that I have yet to repeat. So I thought eff it lets do some dev'in so I unpacked the boot.img from rom1 then compared that to the unpacked boot.img from rom2 that I created in my trial and error experiences. So in doing so I noticed 4 differences; 1, the mount points obviously, 2, in the sbin folder had a ueventd file from the working rom1 was a text file viewable by gedit in ubuntu. In rom2 it was just a non-readable file. 3, in the init.rc file was also missing a chmod command for system, (the command is in rom1 but not rom2) and 4, there was a ueventd.tegra file that was in rom1 that wasn’t in rom2, but everything else is the same. So I decided to plug and play with the differences to see if she boots and no go. I don’t understand why its boot looping because I am using the same rom as phone rom as for rom1 and rom2. So it boot looped. So I had to restore my boot.img many times in cwm.
So then I said eff it lets do some more research, then I noticed in the .zips folder plus the individual rom folder there are .zips that will let you flash via cwm if you get boot loops and 'should' get you booting to your desired sdrom. I then tried that way and no go.. so then I opened up the zip and had a look at the internals.. first there is the moveboot.sh file that the app runs in cwm flash the given boot.img. I then checked out the meta-inf and opened up the updater-script thinking that the app wasn’t actually flashing the boot.img which is why it loops... Well I think im half way right. However the script itself is lil dodgy... first thing I noticed was at the end of the script they have a command to cp the log from /tmp to /sdcard/bootmanager well the command was wrong so it never copied the log. So I fixed that. I also saw that the assert command was pointing to ‘boot’ instead of mmcblk0p5, so I changed that too. Then I decided to do away with the assert command and the moveboot.sh file they have going on to utilize the same functions that the kernel zips use, which is a kernel folder that holds the boot.img and a run_program that dd's the boot.img to 0p5. plus I even updated the update-binary that the file uses. I used the one from the g2x nullifier as I know that one was made for our phone and should have no issues.. plus there was a noticeable difference in the sizes of the provided binary to that replaced binary. So with the updated.zip file I then rebooted into cwm to flash that being that I was using a different command to flash the boot.img as well as the other changed stuff and still it boot looped. So as of now the only thing I don’t think ive done was grab the boot.img from rom1 then change the mount points, only change that, and then use that for rom2 and see if it boots. I don’t think I’ve done that yet. But every dam process I do I get boot loops. So basically I have came to the conclusion that it’s now NOT a boot.img issue being that I have done everything to change the boot.img and to make sure it flashes, which it does indeed and now creates the log too… I think maybe it has issues with the system.img as that’s what comes next in the boot process. But that’s just my hypothesis. I won’t be able to confirm this till I liberate rom1’s boot.img then change the mount points to point to rom2 and then see if it boots.. if it don’t work then that would mean to me that there is an issue with system.img created. But that’s just my hypothesis…
What I don’t understand is why the eff when I didnt hack the app I got a working sd-rom, but when I do change some stuff with it still don’t work!!???!! I guess maybe ill just edit/hack the apk to see what’s up.. This is getting way more complicated than it needs to be, since it worked prior to all my major changes to the script its using for flashing and the boot.img and what not. Anyone have any ideas feel free to add them.
My next steps are to edit rom1 boot.img one last time to change the mount points to point to rom2 and then if that’s a no go then it’s got to be the system.img that’s getting created. By the way this whole process I have only been restoring my nandroid backup for HFP 2.1. I have not attempted to flash new as with thru my research more times than not people would get a bootable rom via restoring versus flashing new.. so if anyone wishes to experience an sd rom let me know, ill send you a link to download my rom1 to get it going. Mind you that its not perfect and you need a class 4 or better sdcard. Everything works but it just takes a bit longer to load things and get things cached as its on the sdcard and not nand. Also if you have any input or are wishing to help pm me I need more heads to get this sorted as I can’t be the only one who knows how to edit scripts and unpack imgs and such. Either way I will continue to do this until I get it right damit!!! Oh and I just ordered a class 10 sdcard to help with this process…
That was copied from the other thread that mustangtim started. Last night when I went home the first thing I did was change the mount points on rom1 to reflect rom2, I changed nada else, then I tried to boot it... it boot looped. So maybe its a permissions issue or the system.img.
So just as a proof of concept and before anyone calls bs on my work/findings Here is the link to my rom1 that boots and is HFP2.1. *Update, 'm just going to
leave it on my DB for now till I find something better I guess. xda wont let me attach the file since its 233MB. Oh well here is the link :
Code:
[URL="http://db.tt/eBZwrOrs"][U][B]Here it is, my Rom1 HFP 2.1[/B][/U][/URL].
I have also attached my updated script file to flash back to rom1, for now.
The boot.img points to rom1 instead of phone rom, ill add to phone rom
as well, just not the now. :) Feel free to flash this via cwm versus
restoring...
Also this is part of the this: the ‘.zips’ folder you need to replace the file in
that folder as well. It’s an update file for rom1 to flash the boot.img.
..
If you’re going to use this you need install a random rom to rom1 then replace those created files in rom1 with these files in the 7z file..
So I am doing this new thread to get the devs or people with know how to help me out with my findings. I have edited the boot.img so much I could pretty much re-write everything in there by now including using magic to create to my own kernel eff!! lol jk but seriously I need people with knowhow to provide confirmation of go or no go. Basically I have people whom have helped out but It seems that I'm the only one who has dug this far into this app(unless i've been misinformed) and I have no one on my level to talk with except the init2winit devs. Which are very helpful btw.
And lastly:
Conap said:
Guys if it's failing to make the boot.img first make sure your using the market version....others have released cracked versions of our app which they broke...if your using the actual market version just send me a pm or email [email protected] and send your log.txt from BootManager folder on sdcard and we'll get it straightened out. Thanks.
Click to expand...
Click to collapse
or post here or PM me, I'm always down to help out.
Also thanks go to the init2win team, Gflam and Conap as they started this app. and as well to Mustangtim as he brought me into the light of BMP.
So you got all that???!!!??? Now lets get this party started and get full support for dual booting. I will not rest until I get this working. Thanks for your time and possible assistance.
Ok so since I have a book above I thought this is a good place for links and such...
So just incase anyone is curious, here is the Official Boot Manager Manual
Here is a nice link for Tips and Tricks while Installing ROM's that so far has good info to help you watch via adb what the BMP is doing in its creation process.
Some FAQs:
When should I set up my phone ROM?
Set up your phone ROM EVERYTIME you install a new ROM to your phone so you can get back to your phone ROM and won't get stuck on your SD ROM.
My SD ROM seems to lag how can I fix this?
SD ROM lagging may be due to a few things which all have easy fixes. First fix is that most of you have class 2 cards which are what usually come with your phones. These have a much lower read/write then cards of a higher class, we recommend a class 6 card or above. Another easy solution is overclocking merely install a better kernel and use CPU Boost (or any other overclock app) to overclock your phone.
Can I nandroid my SD ROM slots?
Yes and no you can't nandroid them in the traditional sense of the word using recovery but this app works as a recovery for your SD ROM slots and you can back up your ROM slots within the app in the Manage Installed ROMs section which works as a nandroid for your slots by fully backing up your slots to your sdcard which can later be restored.
What if I want to change the sizes of my images, how may I determine the individual sizes easily?
Easiest way is to open up terminal emulator in your app drawer. Type 'su', then grant permissions if need be, then type 'df -h' and it will display such information. You may also use adb in the same fashion. Connect via usb, open up command prompt/terminal and get adb connected and then type 'df - h' again and the same info will show. I will say this again just because, do not decrease the size of your system.img ever! Unless you want mad issues!
Here is the changlog link and just for heck of it the info based on that link:
Code:
V3.2.6
Fixed DroidX/Droid2 Install issue
Fixed UI theme issues
Fixed issue with spaces in name of pic when selecting photo for screen shot
V3.2.5
Fix to allow continue of install if no boot.img is found.
V3.2.4
Added support for HTC Rezound
Added support for rom's with multiple boot.img's
Added support for rom's made for multiple phones
AutoDetect sdcard for usb mounting
Fix for installing ICS gapps
Optimized SDRom Install process
Added support for Motorola RAZR
Added install queue
V3.2.3
Fixed issues with rom's not showing when on emmc on Droid Incredible
Fixed issues with not showing correct booted rom in app
More improvements to sms sync(all rom's will need updated app for changes to apply)
Fix issues with loader
Fixed issue with switching to backup server when main server goes down
Fixed 1x1 widget to show unlimited rom slots
Added 2x2 widget that works with unlimited rom slots
V3.2.2
Fixed force close for img's over 1Gb when resizing
Fixed current booted rom displaying correctly on gnex
Fixed issue with wrong busybox downloading on gnex which should fix alot of install/boot issues
V3.2.1
Fix for errors causing installs to fail.
Fix for some of the licensing stuff.
Removed sdbooster prefs from Galaxy Nexus(Since they don't have sdcard).
V3.2
Changed 4 sd slots to infinite slots!
Galaxy Nexus Support
Sms and Call Log synced between ROMs (you choose what ones too also requries updating boot manager in all slots)
License Check extended to a week
ROMs do not need market installed for boot manager to run (requires updating boot manager in all slots)
Hide su toasts (superuser elite only)
Fix for force close when setting screen shot in MIUI rom's
Thunderbolt defaulted to force large boot.img
Fixed unsupported device using a key
Manually setting variables only accepts numbers
V3.1.1
Fix for various force closes in rom installs and Nand restores
V3.1
Added su binary check
User selectable colors for everything
Better navigation (press title for quick action)
Added compatability for new twrp backups
Better compatiblitlity with memory tweak scripts(i.e. supercharger script and liquids default scripts)
Fix for install process being killed by android
Fix for some themes erasing img's
Fix more force closes during install
Force smaller boot.img option in settings(Fix for some phone's who's boot.img won't fit on the phone after BootManager edit's it)
Improved gapps checker
Improved security
Boot Manager now accepts keys pay for by paypal (see http://init2winitapps.com/stories/BootManager.html)
Added Evo 3d GSM Support
Added notifcation sound/vibrate for finished install (turn on in settings)
Improved data check
V3.0.3
Fix some force closes
V3.0.2
Added backup server (Sorry our server dropped out)
Fixed some force closes
2nd init fixes for Liquid's ROMs
V3.0.1
Last minute UI fixes
V3.0
UI Completely redone
Includes screen shot of each slot
Custom Info
Custom Dialogs
Custom Animations
Custom everything!
Bug Fixes
Added Droid 2 Global support
Screen shot with long press of search
V2.2.1
Bug fixes in file browsers
File browsers only show relevent files
Kernel installer fix
Droid 2 bug fix
V2.2
New security (more advanced and requires data only once a day)
Installs no longer require data
Added Italian translation thanks Black-Ice
Droid X support
Droid 2 support
Fixed status bar notifications
Fixed phone rom rebooter if gapps aren't installed
Bug fixes
V2.1
Restore android_secure to sd from nandroids
Added TWRP nandroid support
Added CWM tar nandroid support
Added Spanish translation
Made widgets easier to use
SD Booster added (Change SD read cache for better preformance)
Added current settings to manually set variables.
Added option to keep screen on during install in settings
Fixed usb layout
Updated Security
Bug Fixes
V2.0
Install now runs from the foreground (status bar)
Restore Nandroids to slots also in the foreground
User can cancel installs as they run
4 new themes added including one by apophis9283
Some phones such as tb moved to new install code (Fix for some sense rom's)
V1.3
Added third theme to app (Red Theme)
Added 4x1 widget and new widget styling
Fixed in app messenger
Added support for Htc Evo 3D
Added support for Htc Sensation
Added Support for Htc Incredible 2
Added Support for Htc Incredible S
Added Support for Htc Desire S
Added support for LG Ally
V1.2
Added option to reboot to phone rom to install gapps in license check dialog
Better error checking and error logging
Automatically install's ext2 libs if not present
Moved Set Names to Manage rom's
Fix for add-on's not installing correctly
Better compatiblility for rom's that use data2ext or apps2sd(user must set larger img's in manual variables)
Trash cleaner added to extras
Better Fix for WiFi issues on Droid 1
Added display to show what rom you are booted into
Fix for updater-script not found errors
Added support for Htc NexusOne
Added support for Htc MyTouch4G
More compatiblity for ext4 support
V1.1
Fix WiFi issues on Droid 1
Fix bug in rom installer for setting permissions correctly
Fix bug for cache size not setting correctly in setting variables manually
Fix for decimals entered into partition sizes causing force close
Fix force close in widget
Fix force closes in installer
Added Wipe data/Factory reset to Manage Rom's section
Added code to show what file's are being unzipped in dialog
Added support for rom's that extract files to sdcard so the files actually end up on your sdcard
Added support for Htc Desire (apps2sd and data2sd rom's support is experimental. Please email if you test it and it works/doesn't work)
Added support for Htc Inspire4g
Added support for Htc DesireHD
Added option to use ext4 filesystem if rom's support it-Experimental Won't work with all rom's.
Added log.txt file to sdcard to log errors during install
V1.0
Initial Release
YEZZZ
glad to finally see this here!
jookdakang23 said:
glad to finally see this here!
Click to expand...
Click to collapse
indeed... hopefully it wont be before too long that I get this app fully supported for us!
This app will be extremely useful for G2X owners and makes the G2X more versatile and desirable.
da-pharoah said:
indeed... hopefully it wont be before too long that I get this app fully supported for us!
Click to expand...
Click to collapse
idk how you get it booted. lol i keep getting bootloops
jookdakang23 said:
idk how you get it booted. lol i keep getting bootloops
Click to expand...
Click to collapse
Are you using the files I supplied or the ones that BMP created for you?
Woo hoo good job bud
Sent from my LG-P999 using xda premium
x0xhellx0x said:
Woo hoo good job bud
Sent from my LG-P999 using xda premium
Click to expand...
Click to collapse
LOL thanks bro.... Go Team Hellfire!!!!
da-pharoah said:
Are you using the files I supplied or the ones that BMP created for you?
Click to expand...
Click to collapse
i remember requesting the files but think you ever sent them
jookdakang23 said:
i remember requesting the files but think you ever sent them
Click to expand...
Click to collapse
no we had a miscommunication due to our avail times and GB's lacking ability to utilize two accounts on gtalk.... I have posted those files in the op however...
First, I want to thank everyone who has helped with us on this app. Second, I know I picked the right man for the job, did you see that OP! All kidding aside, a lot of you know I write for ACS under screen name artifintel. I just had too much on my plate to give this project the attention and direction it needs. The right guy is in charge, he's a stand up person and very knowledgeable with this app. Good luck everyone!
[email protected]
I tried installing CM9, it didnt work, stuck on first boot screen after the LG logo.
I'm using rooted stock 2.3.4
Rafase282 said:
I tried installing CM9, it didnt work, stuck on first boot screen after the LG logo.
I'm using rooted stock 2.3.4
Click to expand...
Click to collapse
what rom are using as phone rom? and you installed to rom1?
da-pharoah said:
what rom are using as phone rom? and you installed to rom1?
Click to expand...
Click to collapse
As phone rom i;m using rooted stock 2.3.4 v21y
The to rom1 I installed CM9 kang from oiwan with gapps and harsh kernel
Rafase282 said:
As phone rom i;m using rooted stock 2.3.4 v21y
The to rom1 I installed CM9 kang from oiwan with gapps and harsh kernel
Click to expand...
Click to collapse
and no bootloop you say?? well then it may be the stock rom your using... The app is very picky and if you get a bootloop, I feel that those can get booted with tweaks... but stuck on lg screen is just no bueno.. Try a different rom... maybe one that has its partitions at ext3 format just to try it.. I think owains rom uses ext4, but I could be wrong. I havent fully researched his rom yet..
hands down, a badass app...
SiL3nTKiLL said:
hands down, a badass app...
Click to expand...
Click to collapse
lol +1 for sure!
da-pharoah said:
I think owains rom uses ext4, but I could be wrong. I havent fully researched his rom yet..
Click to expand...
Click to collapse
positive on ext4
By popular demand, I am bringing to you CM10.1 that you can install into Nook's internal ROM.
Note, this version totally overwrites your ROM, so back up everything important before proceeding. This is not a dual-boot solution as before, you do loose B&N ROM for good after installing this.
This is work in progress, yadda yadda.
Simplified instructions if instructions below don't work for you or you cannot follow them.
Get emmc-cwm-early2.1.img.gz, gunzip and write it to an sdcard of at least 1G in size (all content on that card will be lost).
Download CWM recovery (text) or TWRP recovery (gui) zip if you want internal recovery to be replaced with CM one (if you don't know what is it about, then you need ONE of these).
Also download latest binary zip from CM nightlies: http://download.cyanogenmod.com/?device=ovation
Add all these files + whatever other packages you might need right away on to the sdcard.
Boot from that sdcard, and install recovery (if desired) and the cm10.1 binary and whatever else you put there.
Erase /data (During initial install only. this is important to avoid crashes on bootup! Naturally, make sure you have copies of whatever important info from there).
unmount /sdcard and remove the card from the Nook. You might need to use this sdcard for your recovery needs in the future should EMMC content become badly damaged, so probably a good idea to have a copy of it somewhere.
Congrats, now on reboot you'll get into cm10.1 on your Nook HD+.
When you need to get into recovery, you can either do "reboot to recovery" in reboot menu (need to enable that in settings) or reboot the nook, and when you see original nook boot logo, press and hold power + home buttons for about 4 seconds.
If you plan to use USB Host feature, you will need a gender changer, as B&N decided not to release a special cable so far. The control to enable USBHost is in quick settings panel (slide down in the top right corner of the screen to bring it up). (QS controls are not available in CM nightly builds so you'll need to install the switcher app for now if you need it).
Known problems:
- Nook app reports incompatible in market (workaround1: just sideload it ; workaround2: change ro.product.device to nookhdplus in build.prop) - This is because they specifically blacklist Nooks! Note that workaround #2 will actually kill your sound, so revert back when you are done.
- Certain sdcards still remain unstable.
- Google Earth crashes when pressing "my location" button (but works fine otherwise).
Useful apps:
Overall loudness and volume control app: NookHDVolumeAdjuster-1.apk
Touch screen sensitivity control: NookTouchscreenSensitivityAdjuster-4.apk (backup link)
USB host control (not really needed, as you can use Quick Settings panel): USBHostSwitcher.apk
Changelog:
13/08/09 - We are official part of CM now, yay! Further updates will be at http://download.cyanogenmod.com/?device=ovation
13/08/01 - cm-10.1-20130801-UNOFFICIAL-ovation-emmc.zip
- Data usage display should work now
13/07/19 - cm-10.1-20130719-UNOFFICIAL-ovation-emmc.zip
- Picked some kernel fixes from omapzoom tree that I think would be useful for us too, this includes some voltage changes (decreases).
- Disabled hwui scissors optimization as it seems to be doing more harm than good.
- Reverted too greedy davlik vm settings
13/07/16 - cm-10.1-20130716-UNOFFICIAL-ovation-emmc.zip *Experimental*
- Update wifi drivers to R5.SP3.06
13/07/11 - cm-10.1-20130712-UNOFFICIAL-ovation-emmc.zip (backup link)
- Added Apple keyboard support
- Updated to CM-10.1.2 for security fixes
13/07/10 - cm-10.1-20130710-UNOFFICIAL-ovation-emmc.zip
- Updated to CM-10.1.1 for security fixes
13/07/08 - cm-10.1-20130708-UNOFFICIAL-ovation-emmc.zip
- NTFS and ExFAT support from upstream
13/07/06 - cm-10.1-20130706-UNOFFICIAL-ovation-emmc.zip
- redone touchscreen sensitivity changing mechanism. (app to control touchscreen sensitivity NookTouchscreenSensitivityAdjuster-4.apk)
13/07/04 - cm-10.1-20130704-UNOFFICIAL-ovation-emmc.zip
- upgraded to fixed SGX DDK [email protected] (this fixes Google Earth, and a bunch of games)
13/07/03 - cm-10.1-20130703-UNOFFICIAL-ovation-emmc.zip Experimental
- experimental touchscreen sensitivity change
- usb ids changed to match stock
- swap support enabled
13/06/30 - cm-10.1-20130630-UNOFFICIAL-ovation-emmc.zip
- Serial number is now visible in Android
- usb audio now actually works (only for output)
13/06/29 - cm-10.1-20130629-UNOFFICIAL-ovation-emmc.zip
- in-kernel bluetooth
13/06/26 - cm-10.1-20130626-UNOFFICIAL-ovation-emmc.zip Experimental
- cpu frequency changes for screen on scenario, new sgx binary blobs.
13/06/24 - cm-10.1-20130624-UNOFFICIAL-ovation-emmc.zip
- more kernel drivers for bt hid, usb 3g modems and gps devices
13/06/15 - cm-10.1-20130615-UNOFFICIAL-ovation-emmc.zip
- WiFi Direct and BT tethering are now working
- /sdcard now points to internal storage.
13/06/13 - cm-10.1-20130613-UNOFFICIAL-ovation-emmc.zip
- Boosted speaker volume. If you do not like new loud volume, flash this reversal zip after every ROM update: quietvolume-2.zip
- zinio now should work out of the box
13/06/11 - cm-10.1-20130612-UNOFFICIAL-ovation-emmc.zip
- Fixed HDMI audio
- Added USB audio support
13/06/08 - cm-10.1-20130608-UNOFFICIAL-ovation-emmc.zip
- Fixed nav bar settings crash
13/06/05 - cm-10.1-20130605-UNOFFICIAL-ovation-emmc.zip
- USBHost access is now conveniently located in QuickSettings. (IF you use some mod that disables quick settings, you still need my old ugly USBHost switcher app, just sideload it).
- now any (one at a time) usb storage should be automounted no matter how you plug it.
13/06/02 - cm-10.1-20130603-UNOFFICIAL-ovation-emmc.zip
- Forced USB Host support.
13/05/30 - cm-10.1-20130530-UNOFFICIAL-ovation-emmc.zip
- No Nook-specific changes, based on CM10.1-RC3
13/05/27 - cm-10.1-20130527-UNOFFICIAL-ovation-emmc.zip
- Fixed microphone input volume
- Kernel change to hopefully better work with some sdcards.
13/05/12 - cm-10.1-20130512-UNOFFICIAL-ovation-emmc.zip
- Fixed A2DP audio
- Fixed booting when not connected to PC/charger.
13/05/11 - cm-10.1-20130511-UNOFFICIAL-ovation-emmc.zip
- Should fix sgx crash on startup for those affected -- not.
- Cover close now should sleep the device (please test)
- Updated screen properties to highdpi (though that did not fix Nook app compatibility in market)
- Baselined on CM10.1-RC2
13/05/10 - cm-10.1-20130510-UNOFFICIAL-ovation-emmc.zip
- Wifi battery drain should be gone now.
13/05/05 - cm-10.1-20130505-UNOFFICIAL-ovation-emmc.zip
- Fixed mmc presentation, BT, sdcard mounting.
13/05/04 - cm-10.1-20130504-UNOFFICIAL-ovation-emmc.zip initial release.
Thanks for this though.
Verygreen, I am interested how this boots without sdcard as before the expliot worked because B&N left dev code to boot a kernel from sd card.
What exploit is used to boot from internal since sdcard isn't used.
Also I don't think cm10 is needed really.
I think its best to put the work into cm10.1 as its the latest platform and try bring that up to the same stage as cm10.
Wow, thank you once again verygreen! Thank you so much for your efforts!
I'm just wondering, does this overwrite the stock ROM, this no dual boot? Also, are there any performance differences?
Regardless, appreciate your efforts once again!
HiddenG said:
Wow, thank you once again verygreen! Thank you so much for your efforts!
I'm just wondering, does this overwrite the stock ROM, this no dual boot? Also, are there any performance differences?
Regardless, appreciate your efforts once again!
Click to expand...
Click to collapse
Is the reboot to 99% problem solved ? This is the biggest issue to me.
sorrowuk said:
Verygreen, I am interested how this boots without sdcard as before the expliot worked because B&N left dev code to boot a kernel from sd card.
What exploit is used to boot from internal since sdcard isn't used.
Click to expand...
Click to collapse
Same method as Bauwks, B&N forgot to fix it, they fixed some other possible vectors only.
I was holding to this knowledge hoping that it would be useful on next B&N reader, but it does not look like they'll release another omap-based one, so no need to keep suffering anymore.
So here's hope whatever they release next, the debugging code will remain in place
HiddenG said:
I'm just wondering, does this overwrite the stock ROM, this no dual boot? Also, are there any performance differences?
Click to expand...
Click to collapse
Yes, this does overwrite stock ROM, so no dualboot.
While it's possible to perform some hair-splitting by putting multiple kernels into boot partition, that's quite a bit of hassle + all the /data splitting, so I decided to not go that way, at least yet.
There are performance differences. I did not perform any real studies, but I was shocked at how fast the install phase in cwm works compared to sdcard.
lchen5 said:
Is the reboot to 99% problem solved ? This is the biggest issue to me.
Click to expand...
Click to collapse
Yes, it is solved by removing the ROM, so nothing is left there that could complain about cards with too many partitions
Awesome
I've gotten this loaded up this morning, haven't done a whole lot with it as of yet, but it did boot right up
I have noticed one thing that is not working correctly, specifically the sd card. It's reported as not mounted.
aszid said:
I've gotten this loaded up this morning, haven't done a whole lot with it as of yet, but it did boot right up
I have noticed one thing that is not working correctly, specifically the sd card. It's reported as not mounted.
Click to expand...
Click to collapse
Yes, I was just going to post that. Verygreen forgot to change the vold.fstab file from the sdcard version to emmc version.
Go to /system/etc/ and edit the vold.fstab file to say "/storage/sdcard1 auto" instead of "/storage/sdcard1 5". Just change the 5 to an auto. Then reboot and it should be ok.
Sent from my Nook HD+ running CM10 on Hybrid SD
leapinlar said:
Yes, I was just going to post that. Verygreen forgot to change the vold.fstab file from the sdcard version to emmc version.
Go to /system/etc/ and edit the vold.fstab file to say "/storage/sdcard1 auto" instead of "/storage/sdcard1 5". Just change the 5 to an auto. Then reboot and it should be ok.
Click to expand...
Click to collapse
It's always the small things that gets forgotten, sigh.
I knew I needed to update that, but did not find it at 4am. Now it's in my tree, so next version will have it fixed.
Also need a better way to write sdcard image, I guess, without uploading a whole gig or so of zeros which will get slow. I tried to put in some shortcuts to minimize the write area, but failed so far. Since everything is in the same partition, changing stuff on the fly is hard.
Perhaps a solution where we only use sdcard as means to do initial bootstrap and write correct recovery and use /data/media as the actual sdcard would be better after all.
Follow up question
Could one of you guys explain a method of going back to stock from this? What I mean, is it possible to install Leapinlar's version 2.1 back to the emmc using the recovery used to install this emmc-based CM 10.1? If you suggest that we backup before installing this ROM does that mean that we can use that backup to restore the stock we have on emmc now back to emmc if this were not to work out well?
jentous said:
Could one of you guys explain a method of going back to stock from this? What I mean, is it possible to install Leapinlar's version 2.1 back to the emmc using the recovery used to install this emmc-based CM 10.1? If you suggest that we backup before installing this ROM does that mean that we can use that backup to restore the stock we have on emmc now back to emmc if this were not to work out well?
Click to expand...
Click to collapse
For restore (note, I did not really test any of these steps, but that's how it should unfold):
boot into recovery image from sdcard you made at the beginning.
Upload the backup boot image there (adb push mmcblk0p4 /tmp)
then do adb shell and in there write the image in place:
dd if=/tmp/mmcblk0p4 of=/dev/block/mmcblk0p4 bs=1048576
then do:
mount /bootdata ; rm /bootdata/BootCnt
The removal of BootCnt will tell stock u-boot to force factory restore.
now remove sdcard and reboot, the Nook will do factory restore and you are back to some sort of early 2.0.0 B&N release.
verygreen said:
It's always the small things that gets forgotten, sigh.
I knew I needed to update that, but did not find it at 4am. Now it's in my tree, so next version will have it fixed.
Also need a better way to write sdcard image, I guess, without uploading a whole gig or so of zeros which will get slow. I tried to put in some shortcuts to minimize the write area, but failed so far. Since everything is in the same partition, changing stuff on the fly is hard.
Perhaps a solution where we only use sdcard as means to do initial bootstrap and write correct recovery and use /data/media as the actual sdcard would be better after all.
Click to expand...
Click to collapse
I've been trying to examine what you have done here, and have most of it figured.
That CM zip is pretty straight forward where it just flashes the rom to emmc /system and replaces the boot.img.
The CWM looks straight forward too, but you must use the empty file for something and I can't quite figure that. I thought maybe you were using it to mount something on emmc but I see no code to do that in the ramdisk. You might have the code in a customized init binary. Recovery looks like just a normal 6.0.3.2 recovery from CM.
A suggestion on the CWM recovery.fstab. Change the boot partition fstype from vfat to emmc and backup/restore will handle it properly. And change the emmc to datamedia and /dev/null instead of vfat and 0p10. That way the emmc media partition will mount properly.
Sent from my Nook HD+ running CM10 on Hybrid SD
leapinlar said:
That CM zip is pretty straight forward where it just flashes the rom to emmc /system and replaces the boot.img.
Click to expand...
Click to collapse
Yes, it's pretty straight-forward, and that was one of the goals. Unlike Kindle where you need to jump through some crazy hoops due to Amazon design decisions, Nook is significantly more relaxed.
The CWM looks straight forward too, but you must use the empty file for something and I can't quite figure that. I thought maybe you were using it to mount something on emmc but I see no code to do that in the ramdisk. You might have the code in a customized init binary. Recovery looks like just a normal 6.0.3.2 recovery from CM.
Click to expand...
Click to collapse
The recovery IS straighforward, there's no modified init or anything like that. I am not sure what empty file do you refer to.
The only difference between this CWM and sdcard cwm for sdcard installs are: removed repartitioning code in postboot script and updated fstab to point back at emmc.
A suggestion on the CWM recovery.fstab, change the boot partition fstype from vfat to emmc and backup/restore will handle it properly. And change the emmc to datamedia and /dev/null instead of vfat and 0p10. That way the emmc media partition will mount properly.
Click to expand...
Click to collapse
Aha, thanks. I'll try this and it'll probably solve the remaining CWM problems for me.
Also need to do twrp image, I guess.
verygreen said:
The recovery IS straighforward, there's no modified init or anything like that. I am not sure what empty file do you refer to.
Click to expand...
Click to collapse
I'm talking about the "file" in the recovery image. It is about 950MB and all zeros.
And if you make those mods to the recovery.fstab, then users can use that CWM to reflash back to stock using the B&N zips.
leapinlar said:
I'm talking about the "file" in the recovery image. It is about 950MB and all zeros.
Click to expand...
Click to collapse
Whoops, forgot to remove.
This is how I zero out sdcard content so it better compresses before uploading it somewhere.
jentous said:
Could one of you guys explain a method of going back to stock from this? What I mean, is it possible to install Leapinlar's version 2.1 back to the emmc using the recovery used to install this emmc-based CM 10.1? If you suggest that we backup before installing this ROM does that mean that we can use that backup to restore the stock we have on emmc now back to emmc if this were not to work out well?
Click to expand...
Click to collapse
Based on what verygreen said in the posts above, you should be able to use my stock CWM SD to both backup and restore his new setup. And you can restore an earlier backup of stock too. You can use my 2.1 zip on my thread to put the new stock on if you want replacing his CM10.1 on emmc.
Thanks verygreen, you are awesome!
EDIT: Yes! I just flashed verygreen's new CM10.1 emmc to my internal memory using my stock CWM SD. Worked perfectly.
I just uploaded emmc-cwm-early2.img.gz with fixed recovery.fstab and a zero file removed as well.
Got it going
Thanks Verygreen and Leapinlar.
I got it installed and I saved the boot partition just in case. I hopefully will not be needing to restore, but it is nice to know that I can.
The installed ROM appears snappy and I will report back any issues I discover.
my sdcard is working great after updating the mount. Thanks!
leapinlar said:
Based on what verygreen said in the posts above, you should be able to use my stock CWM SD to both backup and restore his new setup. And you can restore an earlier backup of stock too. You can use my 2.1 zip on my thread to put the new stock on if you want replacing his CM10.1 on emmc.
Thanks verygreen, you are awesome!
EDIT: Yes! I just flashed verygreen's new CM10.1 emmc to my internal memory using my stock CWM SD. Worked perfectly.
Click to expand...
Click to collapse
verygreen said:
I just uploaded emmc-cwm-early2.img.gz with fixed recovery.fstab and a zero file removed as well.
Click to expand...
Click to collapse
Is there any effective difference between the 2 recoveries? That is.. is there any reason i should be bothering to keep 2 different recovery SD cards?
Thanks for all the great work!
aszid said:
Is there any effective difference between the 2 recoveries? That is.. is there any reason i should be bothering to keep 2 different recovery SD cards?
Click to expand...
Click to collapse
There's no great logic in my recovery, just an image I use to test-drive my installs for now.
So you can use whatever other recovery you like.