I have been building/compiling my Nook Color's ROM from the CM repo. Besides the geek satisfaction, I build for removing some extras and customize for performance. This thread is for sharing what I build for myself with the community. Here is MiRaGe.
Please thank/donate to CM project, especially the lead Nook Color developers, dalingrin, fattire, and keyodi.
Thanks to Nick N, unibroker, Tool Belt, k8108, christoophat, deboyz1014 for their generous donations.
Special thanks to nissanskylinebam for the banner.
CyanogenMod 7 changes are here.
My changes on the nook kernel are here.
Updates: 07/27/2013: - Android security fix 8219321 (CYAN-1602) to Bluebox security bug merged - Updated ADW Launcher 05/13/2013: - Optimized kernel configuration by removing unused features - Removed debugfs for security improvement - Switched to performance optimization - Updated boot animation 03/28/2013: - Synced with CM repo - updated kernel with the 03282013 build - removed ro.pm.awake_on_usb enforcement from build.prop 03/10/2013: - Synced with CM repo - updated ADW Launcher - updated kernel with the 03082013 build 03/08/2013: - New kernel update package: -- cryptography library optimizations (sha1, crc32, aes) -- use get_random_int() to fix entropy depleting 11/10/2012: - Updated ADW Launcher 09/30/2012: - Synced with CM - Updated Cyanoboot 07/30/2012: - Reverted the KSM support in the kernel and dalvik-vm 07/27/2012: - Modify Running ProcessView as ics in Settings - Fixing a crash when doing lock profiling in dalvik vm - Basic KSM Support in dalvik vm. This is complementary to the KSM feature added into the kernel build. - Customizable kill app via back key timeout. - updated the kernel -- added KSM support. See this post for a patch that will initiate the KSM service. -- removed several debug configs 07/12/2012: - New build, synced with CM - ICS menu icons - default to hardware EGL libraries of SGX530 instead of using generic android EGL libraries (thanks to leolawliet) - new kernel with the following changes -- use optimized strnlen, strncpy, and crc32 functions in ARM (thanks to faux123) -- disable several DEBUG settings in kernel config 07/05/2012: - New build, synced with CM - ICS icons for settings.apk and power widget - new kernel with the following changes -- BFS 4.04 scheduler added to kernel -- updates to ashmem, lowmemorykiller, and interactive governor -- updates to rcutiny and core scheduler components 06/23/2012: - New 06232012 build, synced with CM 06/08/2012: - New build, synced with CM - Backported many bug/security fixes from 184.108.40.206 kernel for block layer, file system, networking, bluetooth, ARM architecture, and sound. See my github link above for details. 05/27/2012: - New build, synced with CM - Backported the staging android drivers from kernel 220.127.116.11 - added a fix for uptime overflow in the kernel after a recent report - added a modified Cyanbread_light theme to replace the orange highlights with cyan/blue that matches with the recent Google Play apps. The source code of Cyanbread_light is here. 05/18/2012: - New build, synced with CM - Integrated the 05112012 build of encore kernel and included Dalingrin's flicker fix by default since many users downloaded it. All of the kernel downloads below include the fix. - Replaced the bluetooth icon on statusbar with a new one - Tagged CM7.2 RC2 05/11/2012: - The final build of the newly updated kernel is ready with a long list of changes (see the link above). You can download from the link below. The kernel is compiled with gcc-4.6 for better performance. - There is an important bug fix for busybox in the CM repo. You can patch your ROM with this file in the recovery. 05/09/2012: - Synced with CM - Updated the kernel source with B&N 1.4.2 update which brought updated touch screen and accelerometer drivers - Added Simple I/O scheduler as default and removed BFQ scheduler in the kernel. - Synced the binary/proprietary blobs in CM repo with B&N 1.4.2 update. - Removed the 16-bit framebuffer support since 32-bit performance is very good - Reverted the 68kHz pixel clock to default 48kHz. There is an optional kernel in the download section with Dalingrin's flicker fix included. - Reverted edge responsiveness workaround since it was not effective and causing more insensitivity at the touchscreen corners - Reduced the ROM size by ~5MB 05/05/2012: - Synced with CM - Replaced the lock screen clock font with the ICS clock font. 04/16/2012: - Synced with CM - integrated the OOM optimizations, see this post for details - removed the V6 Supercharger recommendation 04/07/2012: - Synced with CM - transparent notification background 03/30/2012: - Updated Cyanoboot with 03/28/2012. Thanks to tonsofquestions and fattire - Synced with CM 03/23/2012: - Added Cyanoboot (thanks to fattire) - Synced with CM 03/04/2012: - CM 7.2 RC0 -> RC1 - Synced with CM 03/01/2012: - Synced with CM 02/25/2012: - Synced with CM - Replaced the soft button, battery, WiFi, smiley icons with ICS style icons in GB color. - Tested the ICS kernel with CM7.2. There were many problems. See this post for details. 02/17/2012: - Synced with CM 02/10/2012: - Synced with CM 02/01/2012: - Synced with CM to include the FC fix with rotation. No Statusbar FC on boot anymore. I had tested this fix earlier and it was not preventing the statusbar FC. Now works, I missed something apparently. - Built an optional ROM with the full language set. If you don't need any other language than English(US) and Spanish, smaller ROM is recommended. 01/26/2012: - Synced with CM to include the rotation animation fix. Thanks to kalltkaffe for this brilliant fix. - Please upgrade to this build if you are on 01232012 build. No other rotation fix is necessary. We are using unchanged CM7 kernel again without the backported CM9 rotation fix. - For the ones who want to go back to an earlier build, I had given the links to 01132012 build in this post. 01/23/2012: - Synced with CM 01/13/2012: - Synced with CM 01/10/2012: - Synced with CM 12/12/2011: - Synced with CM - Switched to modular kernel (see the previous update below), includes the SOD patch, and compiled with linaro 4.5-2011-10 toolchain. 12/05/2011: - Based on Dalingrin's encore kernel, built a modular kernel by configuring the uncommonly used features (they are still available) as kernel modules. There seems to be about 20% increase in the free RAM (available to the apps and cache) after first boot on my nook. If you want to try, here is the link. See this post for more details 12/01/2011: - Synced with CM 11/28/2011: - Synced with CM - Dalingrin's kernel with SOD patch included in the build with recompiled kernels using linaro 4.5-2011.10 toolchain since the feedback was positive. The optional files are still downloadable for the ones who want to use them with other builds. - Updated Superuser.apk to 3.0.7. Market was constantly showing this update. 11/24/2011: - Included dalingrin's SOD fix in the kernel build. 11/20/2011: - CM sync - Added a flashable zip with Dalingrin's Encore kernel recompiled with Linaro 4.5-2011.10 toolchain. 11/18/2011: - Synced with CM - Reverted my signal icon fix to include Dalingrin's commit. - Added back CMStats 11/16/2011: Well, everyone is talking about ICS code release but there is another news that CM switched to 7.2.0-RC0 recently which came with a large number changes. I will not go through all those but you can check them here. I have also updated Roboto font with the improved version in the Android 4.0.1 source release. 11/13/2011: - Synced with CM - Resolved persistent signal bar problem in the status bar. The source of the problem is this commit, removed the commit before compiling the code. - Updated Superuser.apk and su binary - Removed extra themes, - Removed CMwallpaper, - Removed large ring tones, - Removed and decompiled CMUpdateNotify - Removed development app, - Removed all languages except English(US) and Spanish - Removed ROM Manager, latest version is available in the Market. - Replaced the system font with the Roboto font from ICS - The optional status bar transparency theme as a flashable zip, please see the screenshot to decide if you want it.
- ROM with only English(US) and Spanish languages - 07272013 build: MD5sum: 1fb04c4134b76798c930300d54d3f197
- International ROM with full language set - 07272013 build: MD5sum: a8c940244c9d3f68a4699133a1d51c57
- Latest (05/16/2013) kernel update package. MD5sum: 945e7bd31a3553debea6e7d1543d8c4c (please see this post about turning off WiFi )
- Just follow Eyeballer's guide.
- If you are installing MiRaGe for the first time or upgrading after a long time, complete wipe is recommended.
- When upgrading from a recent MiRaGe build, do wipe cache/dalvik-cache only.
- If you do a clean wipe, you will need to flash gapps again. You can find it here or here.
1) Regarding the status/notification bar force close issues, I recommend unchecking the "disable full screen" option in the Tablet Tweaks to avoid the status bar crashes. This also improves the app behavior especially movies and games that need full screen. To bring the soft buttons back in the full screen mode, I recommend Button Savior (available in the Market). If you had tried this app before, Button Savior developer greatly improved the app lately. When I enable autohide feature in Button Savior, it does not occupy any space on the screen. I just use the short swipe option at the right edge of the screen and bring the soft buttons when needed. Since I keep the soft buttons on the status bar, Button Savior is only used when an app goes to full screen mode. You can even remove the soft buttons from the status bar completely if you prefer an uncluttered status bar.
2) If WiFi is not starting automatically on reboot, please see the fix in this post.
Using ICS Launcher icons by kovdev. The clock widget is Sense Analog Clock.
Disclaimer: I don't accept any responsibility for any kind of damage or loss. If you are going to report problems, please make sure that there are no mods or themes applied to the system. Also, SD installations are not supported since many problems are related to the performance of particular SD card. Only EMMC installation is recommended and supported. Before reporting any problem please try reflashing after a clean wipe.