[Nexus 4 Android Development] ganachoco:
[ROM][N4][NMF26O] Fake nexus rom for Nexus 4. [Dec/06/2016]

Introduction

This is an Android 7.1 custom rom for Nexus 4 that fully integrated Gapps. (Pixel Launcher, Google dialer, Contacts, Webview, backuptransport, etc.. )

Screenshots

Features

Almost same as Pure Nexus Stock image.

Enabled SEAndroid, No Rooting feature provides for security reason.

All build scripts are opened on github

3G data is disabled as default for user that has cheap data plan. But you can enable on data setting menu.

Stock rom users can use this rom without perform reset userdata partition. (In theoretically, it can be applied to other custom rom users, but not tested. )

Known Issues

Nougat version is still unstable. Please use at your own risk.

Some apps can be crashed (ex: firefox, games using unity, etc...)

Camera app shows invalid orientation on preview screen

[*] User switch feature is not working. It should be fix in next release.

Please see FAQ

Installation instructions

1. power down

2. press power and volume down button, and your nexus 4 will go fastboot mode

3. connect usb cable with your PC

4. run fastboot for flashing

If you are using stock factory image or already use this rom.

$ fastboot update occam-img-20160108.zip

Or if you are using other custom roms, you might perform clear userdata partition.

$ fastboot -w update occam-img-20160108.zip

After flashing, it needs several (about 5-10) minutes to complete booting.

Changelog

Dec/06/2016: 20161206 (testing)

Update to NMF26O(android-7.1.1_r4)

Nov/08/2016: 20161108 (deprecated)

Update to NDE63V(android-7.1.0_r6)

Rebuild stubs for destroy useless icons

Nov/03/2016: 20161103 (deprecated)

add GmsCoreSetup

add Google VR Service

add help uri on Settings

apply pixel color accents

Nov/01/2016: 20161101 (deprecated)

fix user switch feature

add ringtone migration

fix tethering feature

fix dirtycow exploit

Oct/25/2016: 20161025 (deprecated)

Integrate Wallpaper picker on Settings

Integrate Google Backup & Sync on Settings

Integrate Google Storage Manager

Add Gesture menu on Settings

Enable color temperature setting in developer options

Use Ustwo wallpaper as default

Add Google Wallpapers

Stub apks can show round icons

Oct/21/2016: 20161021 (deprecated)

Update to NDE63P(android-7.1.0_r4)

apply pixel bootanimation, sounds, white navbar

apply latest pixel launcher

apply rounded icons for launcher

Note: it is not capable to use google assistant. :P

Note2: apps are not odexed, so, boot speed can be slow.

Note3: default ringtone, alarm, and notification sound is changed.

If you cannot hear these sounds, please set manually.

Oct/05/2016: 20161005 (deprecated)

update to NBD90Z (android-7.0.0_r14)

Oct/04/2016: 20161004 (deprecated)

fix ptrace bug on linux 3.4, thanks @zaclimon

switch to non-debuggable build :D

Sep/30/2016: 20160930 (deprecated)

Remove useless binaries and save space for system partition

apply qualcomm specific build macros

tune codec configuration for legacy binaries

Sep/26/2016: 20160926 (deprecated)

switch to debuggable build.

No more several apps might be crashed . but lesser secure. :(

revert to 320dpi as default

Sep/23/2016: 20160923 (deprecated)

debuggerd can dump stack when app is crashed on native code

Use Pixel launcher as default home

set 352 dpi as default

sign with release key

Refactor scripts to build other device(Nexus 5)

Sep/07/2016: 20160907 (deprecated)

update to NRD90S (android-7.0.0_r4)

Turned on sdcardfs

Sep/05/2016: 20160905 (deprecated)

Rebase device tree from @zaclimon V4

Remove w/r permission from vidc encoder device to all

It seems while mediacodec server open vidc encoder, camera server cannot use hardware encoder, and cannot record video stream.

Fix facelock funtion

Update widevine drm binary blobs from bullhead.

It might prevent to crash mediadrm and media service. But I cannot be sure it can play drm contents.

Switch to user build.

Sep/03/2016: 20160903 (deprecated)

Enable cpuset

implement exclusive core feature with simple mpcpusetd. @xenyz hints to me how to implement. Thanks.

Tune cpu governor while booting

Aug/31/2016: 20160831 (deprecated)

Rebase device tree from @zaclimon V3

Aug/29/2016: 20160829 (deprecated)

Rebase device tree from @zaclimon V2

Aug/28/2016: 20160828 (deprecated)

update to NRD90M (android-7.0.0_r1)

Rebase kernel source tree from @zaclimon

Rebase device tree from @zaclimon

Update occam device tree (fix compilation, update resources, etc...)

Aug/02/2016: 20160802 (stable)

update to MOB30Y (android-6.0.1_r60)

update google apps

Jul/07/2016: 20160707 (deprecated)

update to MOB30P (android-6.0.1_r50)

replace google photo as stub for reduce rom size

update google apps

Jun/07/2016: 20160607 (deprecated)

update to MOB30M (android-6.0.1_r46)

apply kernel security patches

update latest gapps

remove korean ime

May/03/2016: 20160503 (deprecated)

update to MOB30H (android-6.0.1_r41)

update latest gapps

update google play stub apks' icons

Apr/12/2016: 20160412 (deprecated)

update to MOB30D (android-6.0.1_r30)

apply flo kernel patches

Apr/05/2016: 20160405 (deprecated)

update to MMB29X (android-6.0.1_r20)

update latest gapps

Mar/21/2016: 20160321 (deprecated)

apply flo kernel security update for mm_mr1

Mar/09/2016: 20160309 (deprecated)

sync sources properly and rebuild

Mar/08/2016: 20160308 (deprecated)

update to MMB29V (android-6.0.1_r17)

update latest gapps

Feb/02/2016: 20160202 (deprecated)

update to MMB29Q (android-6.0.1_r11)

update latest gapps

setupwizard property typo fix ( reported by @jolas )

add hdcp binary blobs ( reported by @xenyz )

update opengl binary blobs (Jan 2016 qcom update)

Jan/08/2016: 20160108 (deprecated)

update latest gapps

I hope it could resolve Input Method issue.

Jan/05/2016: 20160105 (deprecated)

update to MMB29O (android-6.0.1_r7)

apply latest callmealdy kernel

Remove SysV IPC from kernel

fix leak of kernel memory to userspace

update qcom opengl binaries

Dec/10/2015: 20151210 (deprecated)

fix Google LatinIME to enable swipe gesture.

In 20151209 version, this rom used latinime from n7 factory image, and it had some problems when try to input with swipe gesture.

So I replaced with latinime from n5 factory image.

It is binary change, so there is no git commit link.

Dec/09/2015: 20151209 (deprecated)

update latest gapps that includes latinime

remove duplicated sound resources

add Google Connection Service and Nfc Provision

Dec/08/2015: 20151208 (deprecated)

update to MMB29K

remove unnecessary patches

replace to stub package for DeviceAssist to save storage

MMB29K image is slightly bigger than olders.

add Stk package as requested from @MarvinOl .

but cannot tested, because my mobile operator is not supported.

update apn list

update latest gapps

Nov/21/2015: 20151121 (deprecated)

Update adreno drivers (Nov 2015)

Update media codec profiles from flo

Apply audio resources from Nexus 5X (same things, but it is smaller than aosp stuff)

Apply memchr optimize patch

Apply patch that make surface buffer allocation asynchronous

Apply workaround for GoogleCamera3 crash

Nov/11/2015: 20151111 (deprecated)

apply libcore patches for speed up finalize daemon and object reference from aosp master

apply skia patches for using NEON from codeaurora

Nov/08/2015: 20151108 (deprecated)

remove useless camera behavior patches

reapply flashlight bug patch

Nov/07/2015: 20151107 (deprecated)

Switch to MDB08M (tree for Nexus 5x/6p)

Update resources and properties for MDB08M

add Dialer workaround for MDB08M

fix Audio HAL for MDB08M

apply recent gapps

Nov/03/2015 : 20151103 (deprecated)

MRA58V(Nov 2015 security patch level) applied

update kernel configurations for android recommands

add init.occam.rc (but it is empty yet)

remove invalid EAP-SIM support

Oct/30/2015 : 20151030 (deprecated)

FaceLock added

set Google Messenger to Default SMS/MMS app

adjust Launcher layout slightly

Oct/29/2015 : 20151029-1 (deprecated)

fix issue that home button is not working when upgrade from Stock factory image

Oct/29/2015 : 20151029 (deprecated)

All locales are available!!!

Also All (Stub) Gapps are available, too

Enable full odex (except prebuilt gapps) to reduce first booting time

Oct/25/2015 : 20151025 (deprecated)

stock rom users can be transitable to this rom without perform clear userdata partition

enable minikin text layout engine

fix gps hal build

Oct/24/2015 : 20151024 (deprecated)

fix a2dp bluetooth profile.

fix calendar sync problem (If calendar app is crashed, Please perform Settings -> Apps -> Calendar -> Storage -> "CLEAR DATA")

add several locales (sk_SK ar_EG pt_BR)

add version codes in gapps build rules

Oct/21/2015 : 20151021 (deprecated)

update adreno gpu driver (Oct/2015)

apply @CallMeAldy mako kernel

apply memcpy, memmove patch from codeaurora

apply flashlight torch mode bugfix

add "Press power button twice for camera" menu in Accessibility Setting (it will be removed after MDB08I source code opened)

Oct/16/2015 : mra58k (deprecated)

initial release

Before you ask something about this rom

Please read this article at first..

If you cannot read English well, it's okay. There are many translations of this article.

This is a very famous article for beginners that want to solve their problems.

Please DO NOT ASK via Private Message or Mail as described as upper article.

I cannot reply all messages and I may not understand all your problems.

If you post your question in this thread, any others can tell about your problems.

If you want to report your issue with this rom specific, please share bugreport data.

You can gather bugreport data with following methods.

Turn on USB debug feature, connect with PC, and run this command

$ adb bugreport > bugreport.txt

OR

Go to Developer options, select Take bug report. After several minutes, notification will be shown to share data.

Downloads

Stable (Aug/02/2016): https://androidfilehost.com/?fid=24651430732235260

Testing (Dec/06/2016): https://www.androidfilehost.com/?fid=457095661767121028

XDA:DevDB Information

fake_nexus, ROM for the Google Nexus 4

Contributors

ganachoco

Source Code: https://github.com/ganadist/vendor_fake_nexus/tree/nougat-dev

ROM OS Version: 7.x Nougat

ROM Kernel: Linux 3.4.x

Based On: AOSP

Version Information

Status: Testing

Current Stable Version: 20160802

Stable Release Date: 2016-08-02

Current Beta Version: 20161206

Beta Release Date: 2016-12-06

Created 2015-10-21

Last Updated 2016-12-06