[Nook Color Android Development] HamNCheese:
Coming soon: Full access to the 2.x market.

Progress is being made to bring the new market to the NC (less the FC permissions or APK signature issues.) Check posts towards the end of this thread for more info.

UPDATE - Version 1.1a - 4/27 - NOW WITH MORE ROOT!

I'm happy to announce that I now have a much improved version of apk-enabler all packaged up and ready to install. This version will work much better than the last one, and should provide much better application compatibility.

Version 1.1a:

Major update...

* Added Edify code to clean up old versions before installing or re-installing (either version)

* Updated su (version 2.3.6.1 - thanks dascud)

* Updated and relocated Superuser.apk (now lives in /data/app so updates will not complian about it being a "system application" anymore.)

* Added Zeam 2.9.2 to /data/app

* Added NookColorTools to /data/app

* Added SoftKeys 3.06 to /data/app (in case anyone needs this - some apps don't display the nook status bar properly.)

* Added latest busybox binary to /system/bin

* Added a crapload of symlinks to busybox functions in /system/xbin. Almost everything works now (grep, mount, etc) without having to run through busybox or toolbox. (thanks RileyGrant)

* I have attempted to perma-enable adb by setting the adb_enabled value in /data/data/com.android.providers.settings/databases/settings.db. Unfortunately it appears that this setting is ignored - at least when auto mounting is enabled. See notes below.

Notes:

Now that we have busybox and a current version of su, we now have what resembles a "normal" android shell environment. More apps should work with the updates, and we can now get a shell (then su) via adb. You can also run the Android Termainl app and su from there.

Also, since Zeam and SoftKeys now baked in, the first boot will now ask for your preference of default launchers (Home, SoftKeys, or Zeam.)

To get ADB working, you need to update your drivers, and play with settings in NookColorTools (development section) to enable USB debugging.

I have validated this install via a fresh install and over-top of existing installs. The only requirement is that the Nook has been turned on and registered. You can flash this over older versions, the script cleans up cruft from prior runs before installation.

Original Post:

So I went about fooling around with the stock 1.2 ROM, and like many I was frustrated by the lack of certain apps in the Nook app store. So here's a little work-around until we get a properly rooted solution in place:

What this hack does:

* Updates the SQLite Settings Database (data/data/com.android.providers.settings/databases/settings.db) with a hacked version, enabling the install_non_market_apps and adb_enabled settings.

* Installs a version of "su" in /bin and /xbin.

* Installs busybox to /system/bin and sets symlinks for most shell commands in /system/xbin

* Installs SuperUser.apk, SoftKeys_3.06.apk, NookColorTools_0.2.apk, and zeam-2.9.2.apk to /data/app (you may uninstall any of these if you wish.)

*

With these in place, the stock browser (and other Market apps) are fully capable of downloading, launching, and installing .apk files of your choosing.

Is this safe? What if I brick my Nook?

The Nook Color bootloader will boot anything you throw at it. There are no signature checks anywhere, and even their own code is signed using test keys. If you get a bad flash or whatever, you can always boot your Clockwork SD card and restore from there. Remember - this is not a phone - there is no subsidy or baseband to protect. So, no there's no S-ON, locked boot loader, or any of that other silly crap the carriers do to screw their customers. You can flash forwards, backwards, sideways, whatever you want, as long as you can put it on an SD card.

Overall, this is no more dangerous than running a stock android device with the "Unknown Sources" setting enabled. Nothing is happening yet that is uncharacteristic of a "standard", vanilla android device.

That said, you should probably make a backup while you are running Clockwork, just to be on the extra-safe-side.

So, is this a full ROM that I can use to flash the 1.2 update?

No. This is a stand-alone update to 1.2 that overwrites one file and adds two others. You need to have 1.2 up and running in order to use this.

How to install...

First, you must have a microSD card already flashed with ClockworkMod. I'm not getting into that, you can find a good guide in this post:

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

(thanks fpga_guy)

NOTE - THIS WILL ERASE YOUR SD CARD - SO YOU MIGHT WANT TO PICK UP A CHEAP 2GB CARD FOR THIS.

* Once you have Clockwork set up, drop the attached zip in the root directory, and reboot your Nook Color. Once Clockwork is booted:

* Select

"install zip from sdcard"

, then

"choose zip from sdcard"

* Select

"Yes - Install apk-enabler-1-1a-signed.zip"

. The install process will begin promptly.

* Once flashed, you will be prompted to Reboot,

* The Nook OS will almost certainly crash on the first reboot - I'm not sure why as of yet... If it does, hold the power button until the Nook powers off completely, then turn it back on. It should continue to boot normally after this point.

* Once you are back up, you can use the browser to download and run .APK files from anywhere. Some apps do not work, others do.

Fortunately for us, Superuser.apk is one that does

:)

As for launchers, you will not see your installed apps in the Extras area of the stock launcher - B&N is doing something shady here... Instead, you will need to install another Launcher. Zeam seems to work well, while ADW doesn't.

Once Zeam is installed, you can hit the "Home" (n) button and select it as your Launcher (permanantly, if you like...) This is where you'll see all of your downloaded apps.

I have attached the flashable zip file, plus links to SuperUser.apk and Zeam. Use the built-in Nook browser to install both of these to your device. Once you download an APK file, tap the notificaiton in the lower left corner and select "Package Installer." The usual Android install screen will appear, and you know what to do from there...

What's not working?

Probably lots of things. I know ADW doesn't work, and the open source Terminal emulator doesn't either... Superuser.apk detects SU, which is a good thing. It isn't "full root access" until I hack /etc/fstab to mount /system r/w (probably tomorrow.) B&N hacked up the frameworks pretty bad for this, so there are probably lots of issues with non-market apps. However, this should open the door to someone willing to port Nookie Froyo (or something similar) over to the stock 1.2 ROM.

Credit where credit is due:

First, thanks to everyone on XDA, the official Nook forum, CyanogenMod, NookDevs, some kind folks on IRC who helped me sort out the partition layout, some helpful folks in this thread, and probably 20 others that I'm forgetting. This would not have been possible without your help.

Where do we go from here?

I suspect we will have something more like Autonooter in a day or so... However, this is a fully usable solution for the time being. You have su, busybox, Superuser, SoftKeys, and a Launcher.

Also, someone needs to look into getting side-loaded apps onto the home-screen and/or into the Extras screen. My fear is that B&N is checking signatures there - but hopefully I'm wrong on that one....

Version 1.1a: apk-enabler-1-1a-signed.zip (1.28mb)

md5sum: 65267cf3314d7fae829881970d70b444

http://www.mediafire.com/?bb7o66282bqfp6q