[INFO][ROM] Guide to build AOSP 4.2. Builds provided for crespo and 4g 2013-02-20

Search This thread

greenblue

Senior Member
Jan 30, 2011
88
181
Download:
Nexus S: crespo-20130220
filename: greenblue-crespo-20130220
md5sum: 3503235e1f66b0d2cfeeea43c2d1699b
sha1sum: 48c1cfbee8a226aae2ce5b5ab9fb7ad6d30339e3

Nexus S 4G: crespo4g-20130220
filename: greenblue-crespo4g-20130220.zip
md5sum: b02e36b543293a337dd3359bd68444d3
sha1sum: 7095ab401e71204532bf2866664452687866551a

Use the latest gapps for 4.2.1: 20121212
Warning: The new swipe keyboard and the gallery/camera/photosphere are not included. Stock photosphere apk will not work. It is hard coded to work on certain phones. You must use modified binaries or edit the build prop.

Steps to flash:
1. Flash the ROM and SuperSU.
2. Boot at least once before flashing Gapps. FCs may occur if you don't reboot.
3. Be patient: the phone will be laggy for the first few minutes as the phone scans for media on the built in sdcard.
4. If you have strange issues or FCs, make sure you wipe data / factory reset and reflash everything.


Important notes:
No tweaks, mods or kernel patches will be added. This is strictly a basic AOSP build.
A complete set of patches are provided on github so you can build your own ROM with your choice of modifications.

Flash your favorite AOSP based 4.1.x or 4.2.x kernel if desired. ASOP version of Matr1x and CM10 version of Marmite has been confirmed to work. Stock ROM is not as smooth as other kernels but it works.


Changelog:

20130221
Rebased on 4.2.2

20121206
Add bluetooth build cfg for fix build warning (trivial)
Bluetooth prevents deep sleep. Patch.
Crespo4g only: Fix Phone.apk force closes after a call *
Crespo4g only: Set voicemail number to own number for Nexus S 4G
Lockscreen PIN keyboard cuts off letters from number 7 and 9. Patch.
Update init.herring.rc: bluedroid has replaced system/bluetooth (trivial)

20121128
Restore original clock font size
Allow backups to Google account from Settings -> Backup & restore
Updated platform version number to 4.2.1 (cosmetic issue)

20121127
Build from 4.2.1 tree
Remove December to Contact's calendar - fixed in 4.2.1
Fix the building of Email.apk
Reduce the lockscreen clock font size
Update the FC on accessing Settings -> Storage patch

20121123
Add December to Contact's calendar
Fix FC on Daydream's clock setting
Fix alarm button in quick settings
Fix FC on accessing Settings -> Storage
Update the name, brand and model in build.prop

20121122 - Prevent lockscreen clock from getting cut off
20121120 - Added patch to fix MMS receive on crespo4g
20121119 - Initial build

Todo list:
Enable emulated storage. *
SElinux configuration.

Broken:
Nexus S 4G: Can't set voicemail number and cannot switch carrier back from Google Voice to My Carrier.
Nexus S 4G: Tethering with WiMax is troublesome at best.
Settings -> Battery does not properly show awake times in the graph. (Appears to be dependent on kernel used).

Working:
3G
4G WiMAX
Audio
Bluetooth audio
Camera
Daydream
Face unlock
GPS
Lockscreen widgets
MMS
NFC
Phone calls
SMS
Sprint system updates
Wifi



Instructions to build from source:

Code:
repo init -u git://github.com/diclusial/platform_manifest.git -b greenblue-4.2.2
repo sync
. build/envsetup.sh
lunch [model]
make otapackage

Build notes:
- All necessary patches and firmware are included in the repo.

Patches below my be out of date. Check github for changes.
The essential patches:
Add TARGET_ARCH to BoardConfigCommon
Fix camera build
Update location providers
Remove Launcher2 hardware acceleration overlay

Crespo bug fix patches
Set default backup transport to Google account
Fix clock and date/alarm display on lockscreen
Set the build prop value for version, brand, etc.
Remove redundant PRODUCT_PACKAGES for live wallpapers

Crespo4g bug fix patches
Update Mms config
Fix receiving MMS messages
Restore ability to utilize mobile/3g for tethering
Add full_crespo4g-userdebug to the lunch menu
Set default backup transport to Google account
Fix clock and date/alarm display on lockscreen
Set the build prop value for version, brand, etc.
Remove redundant PRODUCT_PACKAGES for live wallpapers

Patches to change the build process
Add support for overriding build.prop settings
Disable stock recovery

Bugs that might be fixed in future upstream releases
DeskClock: Fix Dream settings
Fix building, the product listing in build/ wants Email2
Merge "Settings: fix storage measurement for device without emulated
QuickSettings : Fix alarm intent
 
Last edited:

Nick N

Senior Member
Sep 10, 2009
952
243
Columbus, Ohio
So far so good here. My brother just got his N4 8gb today, at least we can run the same software... He already received an update.

---------- Post added at 11:51 PM ---------- Previous post was at 11:33 PM ----------

4G Works!

Bluetooth media audio working (listening to Pandora on my Moto S305 headphones)

I think we have a winner here. Using included kernel BTW.
 
  • Like
Reactions: greenblue

Articudos

Senior Member
Dec 20, 2011
1,494
2,113
Thanks for the guide,:)
Can you tell me how to solve Hunk#1?
I cannot understand op which related to hunk#1....:/

Code:
patching file 0s
Hunk #1 FAILED at 34.
1 out of 1 hunk FAILED -- saving rejects to file 0s.rej

it shows like this..:/
 

Articudos

Senior Member
Dec 20, 2011
1,494
2,113
Which patch file are you trying to patch? What is the output of 0s.rej?


001 patchfile.

0s.rej is here..same as .patchfile.
Code:
--- .repo/manifest.xml    2012-11-19 00:34:09.716145171 -0800
+++ .repo/manifest.xml    2012-11-16 15:00:40.058124761 -0800
@@ -34,6 +34,8 @@
   <project path="device/lge/mako" name="device/lge/mako" groups="device" />
   <project path="device/lge/mako-kernel" name="device/lge/mako-kernel" groups="device" />
   <project path="device/sample" name="device/sample" />
+  <project path="device/samsung/crespo" name="device/samsung/crespo" groups="device" revision="refs/tags/android-4.1.2_r1" />
+  <project path="device/samsung/crespo4g" name="device/samsung/crespo4g" groups="device" revision="refs/tags/android-4.1.2_r1" />
   <project path="device/samsung/maguro" name="device/samsung/maguro" groups="device" />
   <project path="device/samsung/manta" name="device/samsung/manta" groups="device" />
   <project path="device/samsung/toro" name="device/samsung/toro" groups="device" />
 

greenblue

Senior Member
Jan 30, 2011
88
181
Daydream works - what an awesome feature! Only problem with it is a FC when Clock setting is pressed but you can still use it as is.

Can't duplicate the problem. Only thing I can think of is that AOSP by default includes DeskClock.apk. The GAPPS I linked contains a DeskClockGoogle.apk so there might be a conflict.

Things to try:
1. Use adb to delete the existing DeskClock apk file inside /system/app and then copy the DeskClock.apk from the AOSP rom.
2. Use adb to delete the existing DeskClock apk file inside /system/app and then copy the DeskClockGoogle.apk from the GAPPS.
3. Uninstall the existing DeskClock with Titanium Backup. Try to install DeskClock or DeskClockGoogle one at a time a regular app (non system app).
 
Last edited:

greenblue

Senior Member
Jan 30, 2011
88
181
001 patchfile.

0s.rej is here..same as .patchfile.
Code:
--- .repo/manifest.xml    2012-11-19 00:34:09.716145171 -0800
+++ .repo/manifest.xml    2012-11-16 15:00:40.058124761 -0800
@@ -34,6 +34,8 @@
   <project path="device/lge/mako" name="device/lge/mako" groups="device" />
   <project path="device/lge/mako-kernel" name="device/lge/mako-kernel" groups="device" />
   <project path="device/sample" name="device/sample" />
+  <project path="device/samsung/crespo" name="device/samsung/crespo" groups="device" revision="refs/tags/android-4.1.2_r1" />
+  <project path="device/samsung/crespo4g" name="device/samsung/crespo4g" groups="device" revision="refs/tags/android-4.1.2_r1" />
   <project path="device/samsung/maguro" name="device/samsung/maguro" groups="device" />
   <project path="device/samsung/manta" name="device/samsung/manta" groups="device" />
   <project path="device/samsung/toro" name="device/samsung/toro" groups="device" />

Are you inside of the directory where you initialized the repo? Might be easier to just manually edit .repo/manifest.xml to add those two required lines. Are you trying to build it for crespo?
 
  • Like
Reactions: Articudos

Articudos

Senior Member
Dec 20, 2011
1,494
2,113
Are you inside of the directory where you initialized the repo? Might be easier to just manually edit .repo/manifest.xml to add those two required lines. Are you trying to build it for crespo?


Yeah, crespo..
I downloaded in ~/ , and moved whole file to ~/crespo_4.2/ .
It can cause problem..?
 

Articudos

Senior Member
Dec 20, 2011
1,494
2,113
So you created a git repo inside ~/, successfully synced, and then you moved all the contents to crespo_4.2? This is seperate from the download. You need to sync a few gigabytes of aosp code first.


Aha, OK. It was first time using linux:eek:
I'll try it again and post result here!:)


BTW, There is way to sync in ~/crespo_4.2/ , not ~/ ?

edit: Success!
 
Last edited:

Articudos

Senior Member
Dec 20, 2011
1,494
2,113
Sorry for bothering you... How can I apply step6 to crespo?


Second question,
If 4.2.1 source releases, how can I update source w/o losing my commits?

Sent from my Nexus S using Tapatalk 2
 

Top Liked Posts

  • There are no posts matching your filters.
  • 40
    Download:
    Nexus S: crespo-20130220
    filename: greenblue-crespo-20130220
    md5sum: 3503235e1f66b0d2cfeeea43c2d1699b
    sha1sum: 48c1cfbee8a226aae2ce5b5ab9fb7ad6d30339e3

    Nexus S 4G: crespo4g-20130220
    filename: greenblue-crespo4g-20130220.zip
    md5sum: b02e36b543293a337dd3359bd68444d3
    sha1sum: 7095ab401e71204532bf2866664452687866551a

    Use the latest gapps for 4.2.1: 20121212
    Warning: The new swipe keyboard and the gallery/camera/photosphere are not included. Stock photosphere apk will not work. It is hard coded to work on certain phones. You must use modified binaries or edit the build prop.

    Steps to flash:
    1. Flash the ROM and SuperSU.
    2. Boot at least once before flashing Gapps. FCs may occur if you don't reboot.
    3. Be patient: the phone will be laggy for the first few minutes as the phone scans for media on the built in sdcard.
    4. If you have strange issues or FCs, make sure you wipe data / factory reset and reflash everything.


    Important notes:
    No tweaks, mods or kernel patches will be added. This is strictly a basic AOSP build.
    A complete set of patches are provided on github so you can build your own ROM with your choice of modifications.

    Flash your favorite AOSP based 4.1.x or 4.2.x kernel if desired. ASOP version of Matr1x and CM10 version of Marmite has been confirmed to work. Stock ROM is not as smooth as other kernels but it works.


    Changelog:

    20130221
    Rebased on 4.2.2

    20121206
    Add bluetooth build cfg for fix build warning (trivial)
    Bluetooth prevents deep sleep. Patch.
    Crespo4g only: Fix Phone.apk force closes after a call *
    Crespo4g only: Set voicemail number to own number for Nexus S 4G
    Lockscreen PIN keyboard cuts off letters from number 7 and 9. Patch.
    Update init.herring.rc: bluedroid has replaced system/bluetooth (trivial)

    20121128
    Restore original clock font size
    Allow backups to Google account from Settings -> Backup & restore
    Updated platform version number to 4.2.1 (cosmetic issue)

    20121127
    Build from 4.2.1 tree
    Remove December to Contact's calendar - fixed in 4.2.1
    Fix the building of Email.apk
    Reduce the lockscreen clock font size
    Update the FC on accessing Settings -> Storage patch

    20121123
    Add December to Contact's calendar
    Fix FC on Daydream's clock setting
    Fix alarm button in quick settings
    Fix FC on accessing Settings -> Storage
    Update the name, brand and model in build.prop

    20121122 - Prevent lockscreen clock from getting cut off
    20121120 - Added patch to fix MMS receive on crespo4g
    20121119 - Initial build

    Todo list:
    Enable emulated storage. *
    SElinux configuration.

    Broken:
    Nexus S 4G: Can't set voicemail number and cannot switch carrier back from Google Voice to My Carrier.
    Nexus S 4G: Tethering with WiMax is troublesome at best.
    Settings -> Battery does not properly show awake times in the graph. (Appears to be dependent on kernel used).

    Working:
    3G
    4G WiMAX
    Audio
    Bluetooth audio
    Camera
    Daydream
    Face unlock
    GPS
    Lockscreen widgets
    MMS
    NFC
    Phone calls
    SMS
    Sprint system updates
    Wifi



    Instructions to build from source:

    Code:
    repo init -u git://github.com/diclusial/platform_manifest.git -b greenblue-4.2.2
    repo sync
    . build/envsetup.sh
    lunch [model]
    make otapackage

    Build notes:
    - All necessary patches and firmware are included in the repo.

    Patches below my be out of date. Check github for changes.
    The essential patches:
    Add TARGET_ARCH to BoardConfigCommon
    Fix camera build
    Update location providers
    Remove Launcher2 hardware acceleration overlay

    Crespo bug fix patches
    Set default backup transport to Google account
    Fix clock and date/alarm display on lockscreen
    Set the build prop value for version, brand, etc.
    Remove redundant PRODUCT_PACKAGES for live wallpapers

    Crespo4g bug fix patches
    Update Mms config
    Fix receiving MMS messages
    Restore ability to utilize mobile/3g for tethering
    Add full_crespo4g-userdebug to the lunch menu
    Set default backup transport to Google account
    Fix clock and date/alarm display on lockscreen
    Set the build prop value for version, brand, etc.
    Remove redundant PRODUCT_PACKAGES for live wallpapers

    Patches to change the build process
    Add support for overriding build.prop settings
    Disable stock recovery

    Bugs that might be fixed in future upstream releases
    DeskClock: Fix Dream settings
    Fix building, the product listing in build/ wants Email2
    Merge "Settings: fix storage measurement for device without emulated
    QuickSettings : Fix alarm intent
    13
    GO TO FIRST POST FOR LATEST INFORMATION


    New test build based on 4.2.1:

    Changelog:
    Updated platform number from 4.2 to 4.2.1
    Setting -> Backup & rest -> Backup account now shows Google account. Requires the new official gapps. May require wiping data unless you have adb or terminal installed:
    Code:
    adb shell bmgr transport com.google.android.backup/.BackupTransportService

    Obsolete patches. The patches must be reversed.
    002-update-crespo.patch - outdated
    007-reduce-clock-font.patch - Not necessary anymore
    008-december-contacts.patch - Not necessary anymore
    011-storage-fix.patch - outdated
    013-buildprop-values.patch - outdated
    016-buildprop-values-4.2.1.patch - outdated

    New changes:
    018-backup-transport.patch - Add overlay to set the default backup account to Google
    019-update-crespo.patch - Removed platform version 4.2
    020-buildprop-values-4.2.1.patch - Added platform version 4.2.1

    Downloads:
    Nexus S: crespo 2012-11-28
    Nexus S 4G: crespo4g 2012-11-28
    Use the official gapps 20121128. (There may be a newer gapps zip soon so always use the latest.) The previous gapps and fix-gapps are no longer required. It fixes GoogleBackupTransport but does not include the new swipe keyboard nor the gallery/camera app among other things.

    greenblue-crespo-20121128
    md5sum ac280310a6a618bd22cb7626d7b80867
    sha1sum 263f8319f0de29e2da11f1cbf4f5860beb1ffcbf

    greenblue-crespo4g-20121128.zip
    md5sum 9b4560317ecca5ba714162b1c4b664fc
    sha1sum aaebf1928a27edaee675b2833aa7bd5ee9cdb4f0
    9
    Working Settings.apk

    Hello,

    Lets get the development going!
    Here is the working Settings.apk. I will share the code (patch if required) later since I am in a hurry to leave to my native.
    Just check and let me know.

    It was just a matter of one try-catch block in packages/apps/Settings/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java in the function totalValues(HashMap<String, Long> map, String... keys)!

    Adarsh
    8
    New builds based on branch 4.2.1:

    Obsolete patches. The patches must be reversed.
    007-reduce-clock-font.patch - Not necessary anymore
    008-december-contacts.patch - Not necessary anymore
    011-storage-fix.patch - outdated
    013-buildprop-values.patch - outdated

    New changes:
    014-fix-email-build.patch
    015-adjust-lockscreen-keyguard-size.patch
    016-buildprop-values-4.2.1.patch - Updated from previous patch
    017-storage-fix.patch - Updated from previous patch

    Crespo 20121127
    Crespo4g 20121127
    Continue to use the same gapps and fix-gapps.

    Issues:
    Version needs to be updated from 4.2 to 4.2.1 (Cosmetic issue)

    Sources attached. First post will be updated once I get more feedback on it. Patch 015-adjust-lockscreen-keyguard-size.patch may be changed for future builds.

    To build 4.2.1:
    1. Reverse all the previous patches with "patch -s -p1 -R -E"
    2. Delete device/samsung/crespo*
    3. repo init -b android-4.2.1_r1
    4. Reapply the first patch and repo sync
    5. Reapply the remaining patches.

    To report problems with the lockscreen security widget:
    1. You must enable developer mode
    2. Enable Security -> Developer options -> Show layout bounds
    3. Take one screenshots with the normal security lock right when the phone wakes
    4. Take one with lockscreen widget fully expanded.
    5. Post as attachment to the forum. Example attached.
    8
    New builds:
    crespo-20130220
    crespo4g-20130220

    Changelog:
    Rebase on 4.2.2

    Updated github trees:
    repo init -u git://github.com/diclusial/platform_manifest.git -b greenblue-4.2.2


    Is the new android-4.2.2_r1 a big enough update to warrant a new build? I will be using this ROM til the end of my contract in May. Doesn't matter either way for me, just thought it would be cool to go out with the latest Android version. :D
    Activity in the 4G forum is fading fast. Everyone is ready to move on.