Related
I want to port some ROM from 32B to my 32A. I am new in this Android ROM Development section, but I have some knowledge. In WM I used to cook ROMs every day (Link), also I have managed to create Hero port for HTC Niki device (Link).
I have some procedure in mind:
1. Extract system.img from ROM which I want to port
2. Extract boot.img from ROM which I want to port (with AmonRA porting tools)
3. Replace boot.img-kernel with the one from my stock boot.img
4. Rebuild boot.img
5. Build update.zip, sign it and flash
- Now, before I create update.zip I have some questions:
* Do I need to replace wlan.ko with the one from my stock ROM?
* Do I need to replace build.prop?
* And what else?
AmonRA in his tutorial, has explained everything, but his porting is just for boot.img, and I am guessing that his nk02ion_r4 (system folder) is already prepared for 32A.
Thanks in advance?
You'll definitely need to replace wlan.ko, otherwise your wifi won't work. As for what other changes you may need to do - there's no universal way to do it, it varies from ROM to ROM (that is if you want to retain all or at least most of the functionality of the original ROM). In some ROMs, for example, I had to modify the ramdisk image slightly. In other, I had to replace a few of the system tools with my own compiled one to get the functionality I wanted back. Or remove a few files that work on 32B/G1 but create unnecessary problems on 32A (like HeroLED.apk). And then of course after such changes you may need to modify the update-script accordingly.
One thing that bothered me to the extent that I even started with compiling kernel and creating "porting packages" myself was that when porting, people often just replaced the kernel image itself (boot.img-kernel) and wlan.ko while other kernel modules were left unreplaced (because the person porting the ROM probably didn't even have them available), therefore many things from the original ROM were not available in the port. Case in point - compcache: whether we need it or not on 32A is another thing, but I believe that if it's supported in the original ROM, we should have the option to use it even on 32A should we want to try it.
I understand it's better to port this way rather than not to port at all (and I've done this myself, yes, guilty as charged), but it's still quite wrong to me to simply create "mashups" where ramdisk belongs to one ROM, kernel to another one and kernel modules to yet another one. It's easier, but it's not the right way to do it if you can prevent it.
Case_ said:
You'll definitely need to replace wlan.ko, otherwise your wifi won't work. As for what other changes you may need to do - there's no universal way to do it, it varies from ROM to ROM (that is if you want to retain all or at least most of the functionality of the original ROM). In some ROMs, for example, I had to modify the ramdisk image slightly. In other, I had to replace a few of the system tools with my own compiled one to get the functionality I wanted back. Or remove a few files that work on 32B/G1 but create unnecessary problems on 32A (like HeroLED.apk). And then of course after such changes you may need to modify the update-script accordingly.
One thing that bothered me to the extent that I even started with compiling kernel and creating "porting packages" myself was that when porting, people often just replaced the kernel image itself (boot.img-kernel) and wlan.ko while other kernel modules were left unreplaced (because the person porting the ROM probably didn't even have them available), therefore many things from the original ROM were not available in the port. Case in point - compcache: whether we need it or not on 32A is another thing, but I believe that if it's supported in the original ROM, we should have the option to use it even on 32A should we want to try it.
I understand it's better to port this way rather than not to port at all (and I've done this myself, yes, guilty as charged), but it's still quite wrong to me to simply create "mashups" where ramdisk belongs to one ROM, kernel to another one and kernel modules to yet another one. It's easier, but it's not the right way to do it if you can prevent it.
Click to expand...
Click to collapse
Thanks Case_. I am new to linux and I love Android, but this seems to be very hard to understand. Is there any way to set up kitchen (or something similar), or I need to compile from source (but I have no idea how to port ROM with this method)?
Hello.
I am wondering about the distinct difference between updating Android devices (I have a Samsung Captivate) vs how it is done in linux. It has been a couple of years since my lat linux box, but the process was distinctly different. Specifically, we could get the source to the kernels and all of the modules that we wanted and compile them for added capabilities. Moreover, the file system (data, apps, etc) were all separated from the /boot partition. If a kernel didn't work, it was no problem to boot into the older kernal and try and fix the new one. Never did we have to destroy all of our data to try new kernels, modules, etc.
Why is this so different for Android? Specifically, why do we have to reflash the whole ROM destroying everything else in the process? Is there another way to do this that I am missing or what is the difference that causes this to be necessary?
Thanks so much for the feedback...
would also like to know this one..
Ok, following up on the original inquiry...
Samsung has dropped the 2.2 source for the Galaxy S. Should this source be configurable for any of the Galaxies (i.e. Captivate?) or do we need to wait for specific Captivate source? Also, can the kernel be recompiled and replaced by itself or does the whole ROM need to be flashed? I'm still confised to why this process seems so much more limited than the typical linux cycle...
If i flash a Bad Kernel and my Phone dont boot. ( HTC Desire)
I can flash the old Kernel and it will boot again No need for ROM reflash....
As lately some people are asking me about ROM porting I decided to create this new thread where we can share knowledge about this hard task.
Please note this is a Dev talk thread, so DON'T ASK about fixing a particular ROM problem here. Also don't ask questions like "My phone is bricked! please help!". This IS NOT the appropriate place for it. There are plenty of other threads to help you out.
Also note that this is not a step by step guide (and not a guide at all), it's just a point where you can start from. Android is a very complex system and there are many things I don't know yet. So, research and hard work is what you need to learn it deeply. My first tip is Google really works. Don't be afraid to search
Ok, to the basics. Porting a ROM is no simple task. It requires advanced understanding of how android works and how it is organized. Previous Linux/Unix knowledge helps A LOT. As android is based on this O.S. there are many similarities between both. In fact many ppl consider android to be a kind of linux distro.
The very first task to port a ROM is finding a device which is compatible with your own. For example Defy/Milestone2. Then you are going to choose a ROM to port to your device.
As our devices (Milestone2) have a locked bootloader we now need to find a system image that have a compatible kernel with the ROM we are trying to port. This is mainly based on trial and test and takes a long time. You'll be ending flashing your phone several times with RSD Lite. You should learn how to use MotoAndroidDepacker and how to create a fixed SBF.
The basic procedure to try that:
1. Open original ROM update.zip and remove any files/commands that flashes boot/devtree/recovery/anything.
2. Install this new file on your phone via CW Recovery.
3. Boot into bootmenu and enable ADB so you can read logcat while phone boots.
4. Choose Boot/Normal. If your ROM uses 2nd-init you will need to place/edit/adapt bootscripts into bootmenu 2nd-init folder.
5. Check logcat for errors:
- If you're getting HAL errors you're going to need a new kernel;
- If you can start android without getting HAL errors but still getting errors and bootloop on android animation you should try to replace libs with appropriate original ones.
6. Once you are able to boot android you should test it's features to see what needs to be fixed.
This is what I have to say for now. The thread is now open for discussion.
At this week, motorola has just pushed the GB official update for Droid 2 and Droid 2 Global....
Can i try to port this new rom to milestone 2 and after a success boot, fix the radio..??
I was asking that, because some people has success on port CM7 to milestone 1, when it originally maked for droid 1...
tks a lot..!!
jorgebaruchi said:
At this week, motorola has just pushed the GB official update for Droid 2 and Droid 2 Global....
Can i try to port this new rom to milestone 2 and after a success boot, fix the radio..??
I was asking that, because some people has success on port CM7 to milestone 1, when it originally maked for droid 1...
tks a lot..!!
Click to expand...
Click to collapse
It may be possible, but you'll have a hard time fixing the baseband.
You may have to mod the init.rc scripts and find the right radio binaries (rild is one of them) and drivers.
Ask those ms1 people for help, if they are still with the same phone...
Sent from my Milestone 2 XDA App
I don't know if this will be relevant or not.
I wanted to know if to do any of this, having a Linux distro as OS a must or can I try my hands at it on a windows based machine. I mean I'm sure that a Linux distro will give certain advantages (as Android is based on UNIX/Linux) but can we get things to work a 100% on windows.
If yes, then will someone be kind enough to get give the list of all softwares etc. which will be required to do the job on Windows machine as well as a Linux machine.
I do know a few softwares but I'm not sure if I have an exhaustive list. I would like to learn and try and at least be able to modify in bits n pieces to begin with.
I apologize if this wasn't supposed to be asked in this thread.
The only thing i can get from SBF is a bunch of smg files.
But the only ones i can open are
preinstall.smg
CG39.smg
Is there a way to open/see the rest?
2)
Im trying to modify the CM7 rom, what boot does it use? 2nd-init or 2nd-boot?
i guess it is second-init. but not sure
thanks a lot for this !!!
WeeDv2 said:
The only thing i can get from SBF is a bunch of smg files.
But the only ones i can open are
preinstall.smg
CG39.smg
Is there a way to open/see the rest?
2)
Im trying to modify the CM7 rom, what boot does it use? 2nd-init or 2nd-boot?
Click to expand...
Click to collapse
SMG files are disk images of certain partitions of your flash memory.
You can only open CG39.smg and preinstall (CG66.smg) because they are the only images in ext3 format. The rest of images may be on ramdisk format or some proprietary format. For more details on partition codes take a look here:
http://and-developers.com/partitions:cdt
You may be able to open and see contents of other partitions but the only one that matters aside from system and preinstall is the boot partition (CG35.smg), which contains the init scripts we should mod in order to make they work with 2nd-init. Boot partition is in ramdrive format. More details here:
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
http://elinux.org/Android_on_OMAP
It is easier to unpack boot image using Dsixda's Kitchen here:
http://forum.xda-developers.com/showthread.php?t=633246
Edit: To see what boot your CM7 uses just go inside /system/bootmenu/config and look for a file called default_bootmode.conf. That should be the boot method used. It's normally 2nd-init.
sahilarora911 said:
I don't know if this will be relevant or not.
I wanted to know if to do any of this, having a Linux distro as OS a must or can I try my hands at it on a windows based machine. I mean I'm sure that a Linux distro will give certain advantages (as Android is based on UNIX/Linux) but can we get things to work a 100% on windows.
If yes, then will someone be kind enough to get give the list of all softwares etc. which will be required to do the job on Windows machine as well as a Linux machine.
I do know a few softwares but I'm not sure if I have an exhaustive list. I would like to learn and try and at least be able to modify in bits n pieces to begin with.
I apologize if this wasn't supposed to be asked in this thread.
Click to expand...
Click to collapse
Don't worry, this is the right place
As for your question: yes you can work in windows if you like, but using at least a Linux VM is more productive. I don't have a full list of applications to give you, as different mods may require different tools, but I advice you to have at least:
- Notepad++ (essential for editing text files and keeping linux end-line format);
- dsixda's Android Kitchen (http://forum.xda-developers.com/showthread.php?t=633246)
- 7zip (or some other compress tool you like)
- Moded putty for ADB as working with windows command prompt really suck (http://forum.xda-developers.com/showthread.php?t=803225)
- Oracle Virtual Box (if you are going to use linux VM).
r2beta0 said:
SMG files are disk images of certain partitions of your flash memory.
You can only open CG39.smg and preinstall (CG66.smg) because they are the only images in ext3 format. The rest of images may be on ramdisk format or some proprietary format. For more details on partition codes take a look here:
http://and-developers.com/partitions:cdt
You may be able to open and see contents of other partitions but the only one that matters aside from system and preinstall is the boot partition (CG35.smg), which contains the init scripts we should mod in order to make they work with 2nd-init. Boot partition is in ramdrive format. More details here:
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
http://elinux.org/Android_on_OMAP
It is easier to unpack boot image using Dsixda's Kitchen here:
http://forum.xda-developers.com/showthread.php?t=633246
Edit: To see what boot your CM7 uses just go inside /system/bootmenu/config and look for a file called default_bootmode.conf. That should be the boot method used. It's normally 2nd-init.
Click to expand...
Click to collapse
Thanks again r2beta
thanks r2beta0
- Notepad++ -- got it
- dsixda's Android Kitchen -- downloaded (need some link for a how-to on its usage)
- 7zip -- got it
- Moded putty for ADB -- got it
- Oracle Virtual Box -- can't install Linux on my system as this is a work machine
dunno if I can do without the last option.
sahilarora911 said:
thanks r2beta0
- Notepad++ -- got it
- dsixda's Android Kitchen -- downloaded (need some link for a how-to on its usage)
- 7zip -- got it
- Moded putty for ADB -- got it
- Oracle Virtual Box -- can't install Linux on my system as this is a work machine
dunno if I can do without the last option.
Click to expand...
Click to collapse
Oracle Virtual Box is an application that lets you run an operational system on a virtual machine, in other words, it doesn't install linux on your real computer. It's a very useful tool that I use everyday. Google for it and learn a bit, you won't be disappointed. About kitchen: the link I provided was download + guide. Read it again. If necessary read the full thread.
r2beta0 said:
Oracle Virtual Box is an application that lets you run an operational system on a virtual machine, in other words, it doesn't install linux on your real computer. It's a very useful tool that I use everyday. Google for it and learn a bit, you won't be disappointed. About kitchen: the link I provided was download + guide. Read it again. If necessary read the full thread.
Click to expand...
Click to collapse
I know a bit about virtual box but as I said I'm not allowed to have softwares not approved by the IT team to be present on the system. Though I can get away with small things like notepad++ and 7-zip, having virtual box on my system may raise some eye brows.
I'm trying to arrange an alternative system.
Me neither. I must do almost everything at home, and at this very moment I simply don't have any free time. I'm afraid you're not going to see me here very often anymore (maybe in a few months? a year? well, it might be a bit too late for milestone2...)
hi. Have a question, I want to remove baseband from a flashable zip (lets say, CM7 from Tezet) , is it posible? I dont know where to look for it (baseband). Thanks!!
Baseband is located in \system\etc\motorola\bp_nvm_default\
But don't remove it, just replace it with files from ROM, which have baseband you want.
---UFO--- said:
Baseband is located in \system\etc\motorola\bp_nvm_default\
But don't remove it, just replace it with files from ROM, which have baseband you want.
Click to expand...
Click to collapse
Ok thanks for the info.
Sent from my A953 using XDA
Hi All,
Just a quick question. I have ported Paranoid Android 2.10 to MS2 but the problem I am facing is that Reboot goes through Bootmenu and I have to choose reboot from Bootmenu again.
Any inputs?
Thanks in advance
Megalith27 said:
Hi All,
Just a quick question. I have ported Paranoid Android 2.10 to MS2 but the problem I am facing is that Reboot goes through Bootmenu and I have to choose reboot from Bootmenu again.
Any inputs?
Thanks in advance
Click to expand...
Click to collapse
I meant to get to it last night, but I was tired after work and fell asleep watch tv. Eventually, later tonight, I'll be uploading PA for MS2. Check my Defy PA thread in 12-14 hours cause I'm about to go to work and I'm not gonna feel like making a MS2 PA thread or updating my Bravo PA thread -- but the Defy Thread is always up to date when I put out new roms.
Also, I'm looking to get either a Defy or MS2 -- I've heard that there's 3G issues with AT&T users (which I am) with the MS2 -- Apparently the MS2 has different 3G frequencies than AT&T. Are there any AT&T MS2 users who are knowledgeable about that? While I can deal with no 3G, edge only, calls only -- I need to make sure I can at least do that before I commit to something.
I'd rather have the MS2 because I want a hw keyboard and I don't have the $300+ to try and get a Photon Q LTE from eBay (and I don't have to change up my repos if I get a MS2). If anyone here knows of a phone that's AT&T compatible, Defy code compatible, and has a keyboard, please let me know.
Thanks.
//Normally I'd post the latter half in the Q&A section, but ya'll don't have one so I'm just gonna piggyback
//My Bravo doesn't have a Q&A page either -- it needs one that's not my PM box...Don't PM me on how to root your phone and flash CM7 -- read one of the 5 guides on the first page of both General & Dev...:silly:
Ok devs need some help here.
I am trying to port a rom to our Milestone 2...but it bootloops on rom animation.
I tried to logcat it but I don't think it gets as far as adb server to detect the device.and just keeps saying "waiting for device"...so I end up with no logcat to diagnose the problem.
I can logcat my current working rom but only after the phone boots....am i missing something here? please, help
Any help is very much appretiated.
Thanks a lot in advance
Hello, I'm new to all this Android stuff (I don't even have a phone yet, but its on it way)
I have been reading up on custom ROM creation but there are some things I don't quite understand.
Let's say I have a phone in Android 2.3. I want to create an Android 4.0 ROM to put on the phone.
Now... to compile Android 4.0 I need the drivers for my phone (which I doubt I will ever have access too since its only a cheap Android with a MediaTek CPU)
So I have a 2.3 ROM that contains all the compiled drivers and the Android 4.0 source code.
Is it possible to compile 4.0 and replace the zImage (if I'm correct) with the 2.3 zImage. From what I have read, that's where all the drivers are stored.
I guess its not that simple since I also think the zImage contains the OS. If so, is it then possible to extract the zImage and replace the invalid driver files in 4.0 with the correct drivers from 2.3?
Also, I think my phone will arrive with an annoying UI, is it possible to just get any 2.3 ROM (that doesn't have an annoying UI and shares the same CPU as my phone) and replace the zImage in that with my phones 2.3 zImage?
Sorry, if my questions are stupid but this is all new to me. I've tryed to read up on this but nothing is straight to the point.
Thanks
Anyone there?
try out some roms first. see what you like and dont like. it'll probably give you a better idea for how you would make your own rom.
I don't think you could just port an entire zimage to ICs and say it will work (it might not even compile i think). It won't work. You could probably take some drivers' code (screen, speaker, etc), modify them a bit so it compiles, and test to so if it works. You more than likely have to modify the ICS code also so it works. And the zimage is just the kernel no? And the kernel really only has to do with low level system processes, drivers, etc. I think UI's and such are more fitted in frameworks and such.
Personally if it was so easy to port ICS by simply replacing the zimage or file with another, ICS would have been ported to many devices, fully working, by now.
Kailkti said:
I don't think you could just port an entire zimage to ICs and say it will work (it might not even compile i think). It won't work. You could probably take some drivers' code (screen, speaker, etc), modify them a bit so it compiles, and test to so if it works. You more than likely have to modify the ICS code also so it works. And the zimage is just the kernel no? And the kernel really only has to do with low level system processes, drivers, etc. I think UI's and such are more fitted in frameworks and such.
Personally if it was so easy to port ICS by simply replacing the zimage or file with another, ICS would have been ported to many devices, fully working, by now.
Click to expand...
Click to collapse
Yeh, but my problem is I don't have the drivers for the phone. I just have the stock ROM that come with it.
Is not that simple. I am 99% sure that you can't do that.
The phone I'm getting has a horrible theme on it. Its running Android 2.3
I have the ROM for a very similar phone (also using Android 2.3), uses the exact same CPU so it should be compiled using the correct platform.
Is it possible to use that phones ROM but replace it with my phones Kernel and .prop (so it has all my phones drivers and settings etc...)?
the hard work required in making a custom rom
I think you can take from the stock rom and compared with existing custom rom
but some sources are not shared freely as an example Tegra
CMIIW
I will mess about with the ROM when I get my phone. Hopefully I wont brick it...
I too am fairly new to android. I spent a couple weeks reading and watching TONS of youtube videos on how to ROOT and Unlock my bootloader. My best advice from one n00b to another would be to do the same. In particular...research how to do it on YOUR phone. Also, Roms are device specific. I recommend you finding the forum here on XDA for your phone and read up on whatever ROMS are available here. This might not be the ONLY place to find ROMS, but this place simply rocks! Once you get your device rooted and if necessary, your bootloader unlocked...you can easily try out any ROM without much fear. Just make a good backup...make sure you also have a factory recovery image too...just in case. For backups...if you install and use Clockwork Mod (CWM) you can use the nandroid backup it offers. I bought Titanium backup from the market and used it to do a full backup before I started...it backs up to dropbox even, which was a nice feature for me. Extra safety so incase I hosed my external SD card which had my backups...I could easily retrieve a backup ANY place that had internet access. Lastly...get ready to have some FUN! Flashing ROMs is VERY addictive!! :-D
Ok, Thanks. I will see what I can do then.
Hi folks.
I'm new here.
It's my first post so please forgive me if there's something wrong.
Basically I want to know is, what type of knowledge do i need (programming language and other things) to work on root of android like build.prop and making custom roms and working on the custom recovery etc.
What do I need to learn to understand those things and work on them.
Thanks.
Kaksrocks said:
Hi folks.
I'm new here.
It's my first post so please forgive me if there's something wrong.
Basically I want to know is, what type of knowledge do i need (programming language and other things) to work on root of android like build.prop and making custom roms and working on the custom recovery etc.
What do I need to learn to understand those things and work on them.
Thanks.
Click to expand...
Click to collapse
Your question is not specific and I not sure exactly what information you requesting. For instance,
1 "root of android" ? Are you trying to root you're phone?
2. "build.prop"? Adding or modifying that can be done with an android app provided your device is already rooted. Ising ADB and fastboot may also be a possible.
3. " making custom roms" ? Does that mean installing or actually building a custom rom? Actually building a custom rom that is best left for advanced level developers. If, you mean installing a custun rom then generally speaking that is usually done in custom recovery by flashing a .zip file. Its very specific for each phone and carrier.
4. "working on custom recovery"? Depends on which custom recovery you have installed and what options are available. A YouTube search can provide some general information.
I am assuming you are interested in rooting you phone and unfair with all is necessary in order to do so. I suggest, searching for your specific model and carrier hear on XDA. For instence, I have a note 4, I search, "XDA Sprint Note 4".
Mr. JAVI said:
Your question is not specific and I not sure exactly what information you requesting. For instance,
1 "root of android" ? Are you trying to root you're phone?
2. "build.prop"? Adding or modifying that can be done with an android app provided your device is already rooted. Ising ADB and fastboot may also be a possible.
3. " making custom roms" ? Does that mean installing or actually building a custom rom? Actually building a custom rom that is best left for advanced level developers. If, you mean installing a custun rom then generally speaking that is usually done in custom recovery by flashing a .zip file. Its very specific for each phone and carrier.
4. "working on custom recovery"? Depends on which custom recovery you have installed and what options are available. A YouTube search can provide some general information.
I am assuming you are interested in rooting you phone and unfair with all is necessary in order to do so. I suggest, searching for your specific model and carrier hear on XDA. For instence, I have a note 4, I search, "XDA Sprint Note 4".
Click to expand...
Click to collapse
Well. First of all thanks for the reply.
I do have the knowledge on how to root the device and i have my device rooted.
I know how can i modify the build.prop file.
But i want to know how the tweaks are actually made to put them in build.prop file to get it into work. How that tweak is made.
How to know what actually should i edit and etc.
And for custom roms. I do actually want to know about how to actually make a custom rom. Even though if its a high level thing. I still want to know. So that i can start learning and get in that field.
I want to know how custom recovery is made. For ex how twrp was made. And i want to learn its functionality.
Thanks again for the reply.
Kaksrocks said:
Well. First of all thanks for the reply.
I do have the knowledge on how to root the device and i have my device rooted.
I know how can i modify the build.prop file.
But i want to know how the tweaks are actually made to put them in build.prop file to get it into work. How that tweak is made.
How to know what actually should i edit and etc.
And for custom roms. I do actually want to know about how to actually make a custom rom. Even though if its a high level thing. I still want to know. So that i can start learning and get in that field.
I want to know how custom recovery is made. For ex how twrp was made. And i want to learn its functionality.
Thanks again for the reply.
Click to expand...
Click to collapse
I
You welcome and I also Thank you for responding.
In regards to modification of build.props, I advise beginning with custom recovery and making a full back- up (all partitions). I have soft bricked my phone more that once by modifying build.pros and simply did a full wipe and restored my backup and up and running. Kernel Aduitor is an app that provides a Build prop Editor but there are stand alone app that are also available.
If your custom recovery is TWRP then Tipatch is an app that is worth looking into. Its available here on XDA or can be downloaded via Google Play Store.
Odex Roms vs Deodex Roms and what that means. I suggest Deodex if your plan on modifying and/or porting.
Also good to know the differences between kerels permissive vs enforcing.
Apps= ApkTool X, Apk Editor v1.3,(this is a lower version that offers a rebuild function while the updated version available from Google Play dose not) Md5 , and ZArchiver.
As far as how to make custom roms? Thats above my skill level. However, If you download a custom rom make a copy and rename it, then use a root file manager to extract it or ZArciver app and look threw the files of the rom. May help prove helpful in learning basic structure.
Keep in mind I am not a developer. Modified, porting, flashing, treaking I do often. For instance, Im tunning and od Note 4 on marshmallow 6.0.1 and have official Google Play Dark Theme.
If you have any questions
https://forum.xda-developers.com/android/themes/official-google-play-store-dark-theme-t3977061
Mr. JAVI said:
I
You welcome and I also Thank you for responding.
In regards to modification of build.props, I advise beginning with custom recovery and making a full back- up (all partitions). I have soft bricked my phone more that once by modifying build.pros and simply did a full wipe and restored my backup and up and running. Kernel Aduitor is an app that provides a Build prop Editor but there are stand alone app that are also available.
If your custom recovery is TWRP then Tipatch is an app that is worth looking into. Its available here on XDA or can be downloaded via Google Play Store.
Odex Roms vs Deodex Roms and what that means. I suggest Deodex if your plan on modifying and/or porting.
Also good to know the differences between kerels permissive vs enforcing.
Apps= ApkTool X, Apk Editor v1.3,(this is a lower version that offers a rebuild function while the updated version available from Google Play dose not) Md5 , and ZArchiver.
As far as how to make custom roms? Thats above my skill level. However, If you download a custom rom make a copy and rename it, then use a root file manager to extract it or ZArciver app and look threw the files of the rom. May help prove helpful in learning basic structure.
Keep in mind I am not a developer. Modified, porting, flashing, treaking I do often. For instance, Im tunning and od Note 4 on marshmallow 6.0.1 and have official Google Play Dark Theme.
If you have any questions
Click to expand...
Click to collapse
Great. Thanks for the information you provided.
You were pretty helpful.
So again thanks.