[Xperia Z Android Development] fareeed:
First things first, the ROM is NOT booting

This is a very early build of MIUI for the Xperia Z. It is based off the latest Cyanogenmod 10.1 RC5 release and the latest MIUI release for the Nexus 4.

All credits go to the FreeXperia team as well as the Cyanogenmod Team, whom without these forums would be very empty. Also credits to the MIUI team on this wonderful ROM

As mentioned, the ROM is not yet booting but hopefully together we can get it to work.

Progress:

I've currently managed to get it booting up to the boot animation but it freezes from there :(

Download - Here is my current progress so far if anyone wants to build upon it.

Download - DevHost mirror

Issues :

I need to add the lines

service shelld /system/xbin/shelld
class main

to init.rc within the ramdisk. However, the recompiled boot.img with the applied changes does not boot.

If anyone can apply these changes and get the kernel to boot it would be greatly appreciated! :D

Resolved, thanks to DooMLoRD

Logcat doesn't seem to work

Other issues are unknown at this moment in time.

To Do List:

[*]Compile a kernel with the ramdisk changes that actually boots :p

Fixed by DooMLoRD :)

Fix logcat on boot

Get ROM to actually boot!

Installation Instructions:

NOTE: ROM will not boot, these instructions are just for users who want to help out or debug. Thank you :)

Place ROM on SD card

Boot into recovery

Flash zip

Wipe data / factory reset

Reboot

Porting Steps:

These steps have mainly been taken from this thread, with the necessary changes needed.

Full credits go to the OP as well as many thanks to those who posted helpful suggestions and hints.

Step 1. Choose which ROM to use as base. I've decided to go with Cyanogenmod. I'm using the latest RC5 release, which I believe to be very

stable. However, you're welcome to use any other ROM as base but I'm unsure as to what the results may be.

Step 2. Choose ROM to port from. I originally used the MIUI ROM for the Nexus 4 but in future other devices, i.e. the Oppo Find 5, may prove to be a more viable option.

Step 3. Extract the contents of your base ROM to a folder. For example, C:\MIUI\CyanogenmodBASE\

You will have the following folders:

system

META-INF

You will also have the file boot.img

Open the folder named system. Now you will see the following folders:

addon.d

app

bin

etc

extras

fonts

framework

lib

media

semc

tts

usr

vendor

xbin

You will also have the file build.prop

Delete the following folders:

app

framework

media

fonts

Step 4.

Extract the contents of the ROM you're porting from to a folder. i.e. C:\MIUI\PortROM\

Copy the folders that you deleted from the previous step to the CyanogenmodBASE folder

Navigate to the lib folder, (located within the system folder of PortROM)

C:\MIUI\PortROM\system\lib

Copy the following files to the lib folder found in the system folder of CyanogenmodBASE

content-type.properties (used for themes)

liblbesec.so (Used for LBA guard, MIUI equivalent of SuperUser)

liblocSDK_2_5OEM.so (Used in location access)

libjni_resource_drm.so (Used for themes and DRM)

libshell.so (Shell service)

libshell_jni.so

libshellservice.so

Now, from the etc folder, (located within system folder)

Copy the file named telocation.idf , to the etc folder inside system in the CyanogenmodBASE folder.

Then, within the etc folder, navigate to the folder named permissions. Copy the following permission over to the etc folder inside the CyanogenmodBASE folder.

com.google.android.media.effects.xml

com.google.widevine.software.drm.xml

com.google.android.maps.xml

In the system folder of PortROM, navigate to xbin and copy and paste the following files to the xbin folder in CyanogenmodBASE.

su

shelld

That's all the folders and files that need to be copied over. You also need to unpack the kernel and apply the ramdisk changes that DoomLoRD did. Then you need to repack the kernel.

Finally add the system and META-INF folders as well as the repacked kernel to a zip file and you have your flashable ROM :good:

This guide is very messy and is quite rushed. I'll clean it up when I get time but I do apologise in advance. If there's anything you're unsure of about these steps just post a reply and I'll try to help out as soon as I can :)