[ROM][Android M/MPZ44O][UnnamedM - SDK port of Android M][for Multirom][29/05/2015]

Search This thread
Jun 29, 2014
38
312
Yes, I know this is in the wrong section - I didn't have 10 posts when I created this thread. Please move this to the developer section if possible.

This is a port of the Android M developer preview from the emulator SDK image to the Nexus 7 (2012).

This ROM is pretty useless. Wi-Fi doesn't work, it's insecure, and there's no point in running it unless you really want to play with some of the new features of Android M. You have been warned.

Currently, this is only tested with the Nexus 7 Wi-Fi (grouper) as a secondary ROM in MultiROM with the main partition formatted as ext4: other configurations probably won't work.

Since this is based on the emulator image from the SDK, no Gapps are included.

What doesn't work:

Wi-Fi - Unfortunately, the SDK image did not include wpa_supplicant, which is required for Wi-Fi. I tried copying it from 5.1.1, but the 5.1.1 version is compiled against OpenSSL, while Android M uses BoringSSL instead. If anyone has a solution for this, I'll really appreciate it!

Bluetooth

NFC

GPS (again, /system/bin/glgps uses OpenSSL, not BoringSSL)

Screenshot function over adb

SELinux - this port runs in permissive mode; it will not run in enforcing mode as I have not adjusted the SELinux policies

Security - this is a port from an emulator image, which is signed with test-keys; thus, a malicious application can impersonate system apps. In addition, the image is rooted, but does not have a superuser management app - all superuser requests are allowed. Please don't use this ROM if you're going to store important data on it.

adb on Ubuntu - if you're getting a "Permission denied" error while trying to use ADB with this ROM on Ubuntu, make sure to tap "USB for charging" in the notification tray and select "Transfer files". ADB will start working.

(Probably more.)

Kernel

The bundled kernel is "Kernel w/ kexec-hardboot patch (Stock 5.1 and 5.1.1)" from MultiROM, which can be found at http://forum.xda-developers.com/showthread.php?t=2011403

Installation

The recommended way to install this ROM is through the MultiROM custom recovery.

First, install MultiROM from http://forum.xda-developers.com/showthread.php?t=2011403

Then, boot into recovery, and select Advanced -> MultiROM -> Add ROM

Choose the ROM, and then swipe to install.

Download

Google Drive: https://drive.google.com/file/d/0B9YZBHL7jnUDXzNVMjAxNF9fb28/view?usp=sharing

Source

I'll be uploading the files and tools used to build this ROM to https://github.com/zhuowei/unnamedL

Credits

Thanks to everyone who contributed to the unnamedL ROM last year: http://forum.xda-developers.com/showthread.php?t=2799011

Screenshots

3GOfX7q.png

3zTEhaQ.png

f6cUpBz.png

bB3YJw9.png


Changelog

v1: initial release (05/29/2015)
 

webdroidmt

Senior Member
Dec 20, 2011
1,674
1,156
NJ
I see you're back again with another unnamed preview. LOL Thanks for a little taste of M, will be fun to play around with it.

Mike T
 
  • Like
Reactions: ecols33

judhin

Senior Member
Jan 18, 2013
52
21
Vilnius
Thanks. I was interested to test multiwindow mode and it works! Just needed to enable it in Developer settings.
 

WeShallFall

Member
Dec 14, 2014
45
6
Wpa

500 Internal Server Error said:
Wi-Fi - Unfortunately, the SDK image did not include wpa_supplicant, which is required for Wi-Fi. I tried copying it from 5.1.1, but the 5.1.1 version is compiled against OpenSSL, while Android M uses BoringSSL instead. If anyone has a solution for this, I'll really appreciate it!
I believe if anyone is running Linux at the minute, they could compile this into the zip (\rom\system.tar.gz\etc\) and change the boot image for WiFi to work (likelihood is it wont, this is a cheap fix at its best). Please notify me of any progress.

EDIT: If anyone would care to elaborate how I could participate in making WiFi work, I would gladly be able to help, but please, give a thorough explanation

EDIT 2:
If there's no WPA_supplicant in the Emulator image, why arent you using the ones from N5/etc. Images?
Seems Possible. Could be worth a shot.
 

Attachments

  • wifi.zip
    1.9 KB · Views: 78
Last edited:

Brawn_Sg

Senior Member
Jul 8, 2014
230
564
Liberty City
how to port sdk emulator v7 system image to any other device
like nexus 4 or nexus 7 2013
how to compress my system folder into system.tar.gz
thanks
 

Vyom

Member
Dec 12, 2011
44
9
Delhi
Hi first I was glad to install this Android M preview. But Wifi and bluetooth not working is a big annoyance, since I can't use Internet on the phone, even by bluetooth tethering.

Btw, I tried to install .APK files and the "App permission" feature doesn't seem to work. It installed the apps with all permissions, and never asked to approve any permission on app use.

Are you sure this is Android M? Only thing which tells this is Android M is the About screen and the Android M logo.
 

WeShallFall

Member
Dec 14, 2014
45
6
Hi first I was glad to install this Android M preview. But Wifi and bluetooth not working is a big annoyance, since I can't use Internet on the phone, even by bluetooth tethering.

Btw, I tried to install .APK files and the "App permission" feature doesn't seem to work. It installed the apps with all permissions, and never asked to approve any permission on app use.

Are you sure this is Android M? Only thing which tells this is Android M is the About screen and the Android M logo.

Did you watch Google I/O? This preview has multi-windows support.
Also, the settings reference Android M.
And last, if Bluetooth and WiFi not working is and issue, then I must assume you are using this as the main ROM, not Dual/Multi booted, completely ignoring the broken features list: we know it isn't working, and saying it isn't doesn't help development.
Apk permissions might not work as this has to be AOSP due to liscencing issues, and I'm sure that relies on Google Play Services (correct me otherwise).
Just a heads-up to any future posters: Don't install this of you are going yo use it add your Internal ROM - bugs are present and features are missing.
 

WeShallFall

Member
Dec 14, 2014
45
6
Can anyone who flashed this ROM kindly upload the SystemUi.apk file from system/priv-app? Thanks a lot, I need some files from it :)

Inviato dal mio XT1032 utilizzando Tapatalk
What exactly do you need it for? Aside, can't you grab it from the official developer previews? I'm just curious, that's all, as I don't see why you don't just extract it from the actual ROM? I'd post it, but I'm not in office right now.
 

Bert98

Senior Member
Jul 24, 2012
1,093
394
24
Padova
Moto G
Redmi K20 / Xiaomi Mi 9T
What exactly do you need it for? Aside, can't you grab it from the official developer previews? I'm just curious, that's all, as I don't see why you don't just extract it from the actual ROM? I'd post it, but I'm not in office right now.

I need some pngs for another project, and I'd extract it myself but in Lollipop, ROMs have that stupid system.new.whatever it is so I can't take a file from the ROM file, I'd have to flash it, extract the file I need and then delete it, so it's kind of a waste of time.
EDIT: I just saw that the system is a tar.gz so I managed to extract what I needed from the ROM zip, ignore my previous request :)
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 22
    Yes, I know this is in the wrong section - I didn't have 10 posts when I created this thread. Please move this to the developer section if possible.

    This is a port of the Android M developer preview from the emulator SDK image to the Nexus 7 (2012).

    This ROM is pretty useless. Wi-Fi doesn't work, it's insecure, and there's no point in running it unless you really want to play with some of the new features of Android M. You have been warned.

    Currently, this is only tested with the Nexus 7 Wi-Fi (grouper) as a secondary ROM in MultiROM with the main partition formatted as ext4: other configurations probably won't work.

    Since this is based on the emulator image from the SDK, no Gapps are included.

    What doesn't work:

    Wi-Fi - Unfortunately, the SDK image did not include wpa_supplicant, which is required for Wi-Fi. I tried copying it from 5.1.1, but the 5.1.1 version is compiled against OpenSSL, while Android M uses BoringSSL instead. If anyone has a solution for this, I'll really appreciate it!

    Bluetooth

    NFC

    GPS (again, /system/bin/glgps uses OpenSSL, not BoringSSL)

    Screenshot function over adb

    SELinux - this port runs in permissive mode; it will not run in enforcing mode as I have not adjusted the SELinux policies

    Security - this is a port from an emulator image, which is signed with test-keys; thus, a malicious application can impersonate system apps. In addition, the image is rooted, but does not have a superuser management app - all superuser requests are allowed. Please don't use this ROM if you're going to store important data on it.

    adb on Ubuntu - if you're getting a "Permission denied" error while trying to use ADB with this ROM on Ubuntu, make sure to tap "USB for charging" in the notification tray and select "Transfer files". ADB will start working.

    (Probably more.)

    Kernel

    The bundled kernel is "Kernel w/ kexec-hardboot patch (Stock 5.1 and 5.1.1)" from MultiROM, which can be found at http://forum.xda-developers.com/showthread.php?t=2011403

    Installation

    The recommended way to install this ROM is through the MultiROM custom recovery.

    First, install MultiROM from http://forum.xda-developers.com/showthread.php?t=2011403

    Then, boot into recovery, and select Advanced -> MultiROM -> Add ROM

    Choose the ROM, and then swipe to install.

    Download

    Google Drive: https://drive.google.com/file/d/0B9YZBHL7jnUDXzNVMjAxNF9fb28/view?usp=sharing

    Source

    I'll be uploading the files and tools used to build this ROM to https://github.com/zhuowei/unnamedL

    Credits

    Thanks to everyone who contributed to the unnamedL ROM last year: http://forum.xda-developers.com/showthread.php?t=2799011

    Screenshots

    3GOfX7q.png

    3zTEhaQ.png

    f6cUpBz.png

    bB3YJw9.png


    Changelog

    v1: initial release (05/29/2015)
    8
    I have good news and bad news (mostly good):

    1. The kernel needs updated -
    The supported sepolicy in the stock kernel is too low, so we need to update that or finish bringing up Linux 3.4 so we chan cherry-pick from the other Nexus devices. To get around this, I used the ramdisk from Lollipop with some tweaks.​

    2. Surfaceflinger is being super dumb -
    Normally, it checks 4 different places for graphics libraries, but currently it's stopping at the rootfs (don't ask me why). I managed to bypass this with some good old fashined hacking, but it's not a release worthy method.​

    3. Zygote is caught in a loop -
    After forcing EGL to load, I noticed that zygote is caught in a loop. When this happens, the device hangs on the boot animation indefinitely.​

    That being said:


    We are almost there :D
    5
    seeing as the official 6.0 code is making its way to AOSP, anyone feel like playing around with it some more? i would but i have no experience doing anything other than bug-finding.

    Already in the process of syncing :D
    4
    I have good news and bad news (mostly good):

    I've had MM booting up on a different Tegra3 tablet for a few days (screenshot). Here's a couple of suggestions to get you going:

    3. Zygote is caught in a loop -
    After forcing EGL to load, I noticed that zygote is caught in a loop. When this happens, the device hangs on the boot animation indefinitely.​

    Does your 'init.grouper.rc' still contain an entry for "service sdcard"? If so, delete it - it's no longer used and terminates immediately, causing init to keep restarting it. Also, comment out "service gps-daemon" - it can't be loaded due to a missing symbol, so it too goes into a crash/restart loop. Fixing these got me booting to the home screen

    1. The kernel needs updated -
    The supported sepolicy in the stock kernel is too low, so we need to update that or finish bringing up Linux 3.4 so we chan cherry-pick from the other Nexus devices. To get around this, I used the ramdisk from Lollipop with some tweaks.​

    Using a Lollipop boot.img - tweaked or not - could be causing other problems. In any case, the sepolicy issue is easy to work around.

    The MM policydb version is set to 30 while the 3.1 kernel only supports up to v26. The only newer feature that MM uses is the ability to allow/disallow specific ioctls (BFD). Remove those rules and you can roll the policydb version back to 26. Here's how:

    * open 'external/sepolicy/Android.mk' - at the top of the file, change "POLICYVERS ?= 30" to "POLICYVERS ?= 26"

    * edit 'external/sepolicy/ioctl_macros' - comment-out all the lines within the macro (i.e. between the braces), then insert a line in the macro with the word "ioctl" - this will allow all ioctls, the same as in Lollipop

    Before you rebuild, you may want to delete 'out/[whatever]/[whatever]/grouper/obj/etc/sepolicy-intermediates' to ensure that 'sepolicy' gets recreated.
    4
    A really clean vanilla AOSP 6.0 for the good old Nexus 7 2012 would be really fine! :good::good::good: