Many users have had trouble porting Roms due to Google's new file System optimizations and Setup. Here I will show you how too, this guide works 9.5/10 times:highfive:
Your base Rom MUST Be Cyanogenmod, this guide is also known to work on AOSP Android 4.4, You can NOT Port different android versions!!! Also, Devices need to be the same resolution! Also You can NOT port CM Based roms with AOSP as a base! You can NOT port CM based roms with AOKP. Same goes for vice verse!
Also, YOU CANNOT USE STOCK AS A BASE OR PORT STOCK ROMS!
Q. What Is Base Rom?
A. The Rom which Is developed and working for YOUR Device.
Q. What is Port Rom?
A. The Rom that you want to port to your Device.
Q. What Roms Can I port?
A. Any Cyanogenmod Based Roms, and AOSP based You cannot port AOSP to CM Based roms with this guide. For AOSP you can only port AOSP based roms, same goes for AOKP.
Q. What about Hybrid Roms? Can I port those?
A.Yes and No. Before you port Hybrid Roms, read the threads carefully. Hybrid Roms are based on one Rom with "cherrypicks" of others. Find out what it is based on. If it is based on CM with cherrypick from aosp, slimrom,etc. than use CM as base rom If it is based on AOSP with cherrypicks of CM than use AOSP a base rom.
Your base Rom MUST Be Cyanogenmod, this guide is also known to work on AOSP Android 4.4, You can NOT Port different android versions!!! Also, Devices need to be the same resolution! Also You can NOT port CM Based roms with AOSP as a base! You can NOT port CM based roms with AOKP. Same goes for vice verse!
Also, YOU CANNOT USE STOCK AS A BASE OR PORT STOCK ROMS!
Before we get Started, you need:
- Winrar - For extracting and building zips
- Notepad ++ - For editing scripts
- Tiny bit of experience with the Android File System
- 20 minutes of your Life
- A Desktop (Windows/Linux/Mac - Works on all!)
- A Brain
Lets Clear Up Some Fog:
Q. What Is Base Rom?
A. The Rom which Is developed and working for YOUR Device.
Q. What is Port Rom?
A. The Rom that you want to port to your Device.
Q. What Roms Can I port?
A. Any Cyanogenmod Based Roms, and AOSP based You cannot port AOSP to CM Based roms with this guide. For AOSP you can only port AOSP based roms, same goes for AOKP.
Q. What about Hybrid Roms? Can I port those?
A.Yes and No. Before you port Hybrid Roms, read the threads carefully. Hybrid Roms are based on one Rom with "cherrypicks" of others. Find out what it is based on. If it is based on CM with cherrypick from aosp, slimrom,etc. than use CM as base rom If it is based on AOSP with cherrypicks of CM than use AOSP a base rom.
Instructions
STEP1:
Take any clean CM7, CM9, CM10, CM11, AOKP or AOSP Android 4.4 ROM which is running on your device as Base ROM.
STEP2:
Make a New Folder on your desktop, name it "Project - (Name of Your Device)". This is our Working Folder.![]()
SETP3:
Inside that folder, Create 2 more folders. One Named "BASE" and one Named "PORT"![]()
STEP6:
Delete addon.d, app, Framework, Fonts, Media and priv-app (if there is one) folder inside System Folder of Base ROM.![]()
STEP7:
Now copy the addon.d, app, Framework, Fonts, Media and priv-app (if there is one) folders inside System Folder of Port rom to the Base rom System folder.![]()
STEP8:
Now Go back to Base Rom folder. Navigate to etc folder (BASE/System/etc) and open init.d folder.![]()
STEP9:
Open init.d Folder (if there is one, if not skip to step 11) in Base ROM and Delete everything except 00banner.![]()
STEP10:
Navigate to init.d folder in Port Rom (PORT/System/etc/init.d). Copy all the files inside of init.d folder of Port Rom to Base Rom. Don't Copy the 00Banner!![]()
STEP11:
Open permissions folder of Base Rom (BASE/System/etc/permissions). Do the same in the Port Rom.![]()
STEP12:
Pay Close Attention!!! Open permissions folder of Port Rom (PORT/System/etc/permissions). Copy all the permission files to Base Rom's permission folder except for :handheld_core_hardware
org.cyanogenmod.hardware
platform![]()
STEP13:
Now open build.prop file using Notepad++ and make changes to these of Base Rom that you want.ro.build.id=
ro.build.display.id=
ro.build.date=
ro.build.date.utc=
ro.build.user=![]()
Change ro.product.locale.language and ro.product.locale.region if you need different language.
STEP14:
In build.prop file change these to same as Port Rom build.prop values:ro.config.ringtone=
ro.config.notification_sound=
ro.config.alarm_alert=![]()
STEP15:
You've done it! Now all we have to do is to make it into a flashable ZIP. Pay close Attention!
SELECT META-INF, system,file_contexts(if it is one) boot.img, data(if it is one).
Right Click and Select Add to Archive..
Select the Zip button.
Type the Name (Don't delete ".zip" at the end).
Click OK when ready..![]()
Last edited: