Basic Qs about Custom Kernels and ROMS - OnePlus 5 Questions & Answers

I've been mucking around with Android for a while but basically stay with a ROM and what it comes packaged (or recommended) with.
Recently I've been looking around at Custom Kernels and I see they offer different options and functionality, but I lack some basic information:
I am guessing that the Kernel and ROM have to be compatible?
Is, for example a Kernel like Blu Spark or Lighting (all for OP5 and Nougat) compatible with all OP5 Nougat ROMs or is it ROM by ROM?
I looked over the pages for both Kernels and also for xXx Freedom OS and didn't see any information concerning compatible ROMs or compatible Kernels, is there any place/list that shows the compatibility of ROMs and Kernels?
Any information, or guidance to where I can find it would be appreciated.

Very simple.
There are 2 types of kernels. One which only works on an OOS based (custom) Rom, and one which will only work on a LOS or AOSP based Rom. Most custom kernels will work on every LOS or AOSP based ROM. But... There's one negative thing about flashing custom or OOS based Kernels. You will never know how the Kernel and/or ROM will behave. There's no 100 percent guarantee if a custom Kernel or ROM are made for each other. Even if a Kernel which comes with the ROM is no guarantee for working properly. There's no such thing as "Stable" even with ROMs. Because stable doesn't exist in a Dev World. It will always be a never ending story.
Long story short, search for yourself an satisfying combination. If you found one combination you like, stick with it and motivate the Custom ROM Developer and or Kernel Developer.
Edit: as you can read i cannot give a proper answer to your questions. The reason why a Custom ROM Dev doesn't show a list in their OP for working Custom Kernels, is mainly based on the fact that they don't like if a user flash another Kernel that didn't came with their ROM. Mostly to avoid non related ROM issues. Besides that, if you made a decision to flash a Different kernel, along with their ROM, you're on your own.
Sorry for being off-topic.

Each kernel needs to be build for each rom. Well not each rom. Each rom based on the top three. OOS, AOSP, and LOS. As each has their own kernel.
If you use LOS 14.1 or RR, then youll need a los kernel. If you run stock OOS. Freedom or xXx, youll need an oos based kernel
Not all devs build their kernels for los or aosp. Me as an example. I only have mine built for OOS and It wont work on los or aosp (well it may but you are 99.999% likely to run into a lot of problems)
I hope that clears it up a tad bit

lekiaM said:
Very simple.
There are 2 types of kernels. One which only works on an OOS based (custom) Rom, and one which will only work on a LOS or AOSP based Rom. Most custom kernels will work on every LOS or AOSP based ROM. But... There's one negative thing about flashing custom or OOS based Kernels. You will never know how the Kernel and/or ROM will behave. There's no 100 percent guarantee if a custom Kernel or ROM are made for each other. Even if a Kernel which comes with the ROM is no guarantee for working properly. There's no such thing as "Stable" even with ROMs. Because stable doesn't exist in a Dev World. It will always be a never ending story.
Long story short, search for yourself an satisfying combination. If you found one combination you like, stick with it and motivate the Custom ROM Developer and or Kernel Developer.
Edit: as you can read i cannot give a proper answer to your questions. The reason why a Custom ROM Dev doesn't show a list in their OP for working Custom Kernels, is mainly based on the fact that they don't like if a user flash another Kernel that didn't came with their ROM. Mostly to avoid non related ROM issues.
Click to expand...
Click to collapse
@lekiaM You provided a great answer and thank you. I did notice that some developers (xXx NoLimits) provide the option to select various Kernel during the install. I pretty much expected that matching a Rom to Kernel was a crap shoot to certain degree. I am going to try a few out and see how it goes.
One final question, if a Kernel offers functionality that is not offered in the original Kernel, how do you go about taking advantage of the added functionality?
Will the Kernel add those selection to the settings or will I need a different app to access them? I was thinking in particular of the don't wake on plug/unplug. I utilized some ROMs (CM) that had this feature in the setting, I use Freedom OS now and don't see that in the setting, but I see that the Blu Spark Kernel offers access to that function.

Zombie said:
Each kernel needs to be build for each rom. Well not each rom. Each rom based on the top three. OOS, AOSP, and LOS. As each has their own kernel.
If you use LOS 14.1 or RR, then youll need a los kernel. If you run stock OOS. Freedom or xXx, youll need an oos based kernel
Not all devs build their kernels for los or aosp. Me as an example. I only have mine built for OOS and It wont work on los or aosp (well it may but you are 99.999% likely to run into a lot of problems)
I hope that clears it up a tad bit
Click to expand...
Click to collapse
It does thanks. Prior to selecting some ROMs to try, I read that AOSP required a specific ROM so I steered away from it, for now. Until I am able to become a little more familiar with the entire subject.

noncomjd said:
It does thanks. Prior to selecting some ROMs to try, I read that AOSP required a specific ROM so I steered away from it, for now. Until I am able to become a little more familiar with the entire subject.
Click to expand...
Click to collapse
An aosp based rom will install and run like any other rom you decide to flash. It comes with the stock kernel built in
Each rom has their advantages and disadvantages. Currently Im running xXx 4.0 which is OOS based with extra features and then of course my own kernel for better performance and battery

@noncomjd Good question. And honestly I've been wondering that too (most of the time) i could gave you a simple answer on that, but i wont.
A Kernel can interfere with the ROMs behavior (for example manipulate the vibration, sounds, led light strength, button behavior and so on.) But a Kernel has their limits too and also the Kernel Dev in question. Besides that , i did saw some very strange things a Kernel Dev can do to manipulate a ROMs behavior. But i wont go further in that.
Answer to your question:
Yes. A good kernel dev can overwrite or add some tweaks in the ROM itself (you won't see it while flashing, but believe me after that, some things in settings are missing or added in the build.prop) . But as i earlier said it has their limits. A good Kernel Dev is aware of their capabilities. And they mostly play save. If a kernel Dev mentioned or added a feature or something in their changelog, than the feature is there. But to enable or disable that feature, you mostly need an 3rd party app(like a Kernel Manager) to activate or deactivate their added feature.

You need a kernel tweaking app in order to change kernel settings.
You can change those settings even if you run the stock kernel, but it won't offer as much features.
There are many kernel tweaking apps available and some kernels even provide their own apps.

Thanks all for some great information. Have a good base to set out exploring a little more.

Related

[Q] Rooting, flashing custom rom but necessary to flash a kernel as well?

Hi,
Quick question I am still having trouble wrapping my head around the concept about kernels. I am planning to root my nexus 4 and flash a custom rom (purity rom) but am i required to also flash a custom kernel? Or am I suppose to leave the kernel as is?
Thanks!
Next123 said:
Hi,
Quick question I am still having trouble wrapping my head around the concept about kernels. I am planning to root my nexus 4 and flash a custom rom (purity rom) but am i required to also flash a custom kernel? Or am I suppose to leave the kernel as is?
Thanks!
Click to expand...
Click to collapse
Depends upon your requirement .
As an example i use Fast USB charge a lot and is not available in any custom rom .
I also use Headphone volume boost which is yet again a kernel level change.
I would suggest you to use a custom kernel since it also gives better battery than stock .
If you are happy without it then forget about kernels . And in case u plan on flashing one make a CWM backup just in case.,
You could if you want to since you're already flashing custom roms. However, most custom rom come with custom kernel, so when you flash a custom rom it will replace your kernel with it's own. You can manually flash back your stock kernel if you want, using fastboot, but there is a flashable package as well in the Dev section.
Just know that due to codes and drivers, different kernels work with different roms. If you flash a 4.3 kernel to a 4.4 rom, it might lack certain necessary driver, such as PRIMA, so your wifi will no longer work. (You can fix this by flashing dePRIMAtor). CyanogenMod use Code Aurora Forum drivers, so if you use a kernel that doesn't support CAF, the screen colors will be messed up (you can lash a colorfix package which replace it with the non-CAF liboverlay.so).
A lot of people get wrapped too far up into flashing kernel and thinking it determine everything (performance + battery life) in their phone. As much of a heavy flasher that I am, I am willing to bet that you generally get the best battery life and stability just running stock. I did my own trial for this, with stock rom and kernel, the phone staying cooler and screen on time was longer. This is just my personal experience, it varies for each person.
But I mainly use custom kernel for features. Such as kernels that incorporate Faux color and sound, this allows changing their settings for much a better screen color and making the speaker louder. I also use the sweep2wake/sleep feature to turn on and off the screen.
If you intend to use custom kernels, I recommend using TricksterMod, it's the best app for modifying kernel settings.
Also just to mention this ahead of time, it's against XDA rules to make threads about what is the best rom/kernels.

What rom, whether stock, custom and kernel do you use and why.

Not a slagging of match about which custom rom is best as devs spend hour's cooking and testing roms for us. Just want people to share what rom they're using and why. It might be useful if we mention the very things that attract us to the various roms. This will help new users to pin point a rom if they prefer the same things. For me what matters apart from anything else is a rom and kernel that is blazing fast and I don't care at all about the battbNot a slagging of match about which custom rom is best. Just want people to share what lollipop custom rom they're using and why. It might be useful if we mention the very things that attract us to the various lollipop roms, for instance am on cataclysmic due to the smart radio mostly which is the main reason am attracted to cataclysmic and code blue kernel, because this combination offers me the best performance. I have previously used franco kernel, but since it hasn't been updated for a while, code blue is the way for me battery. I am still new to s6 edge so cannot share much yet but once I have found a rom and kernel combination that gives me the power and fluidity I require will then share.
Im using the renegade rom because it has some features that my original G925P stock rom doesnt like smart manager. I cant use it on my phone without flashing a rom. And It has funny/cool on/off boot animations.
Sent from my SM-G925P using Tapatalk

easiest rom to go with that includes everything like modem and gapps and such.

What is the best rom to go with that has the modem and gapps included? also one with good tethering/hotspot so I dont gotta be subject to carrier extortion and rape... LOL.
I want something easy to flash and stuff since I am not the best with this sorta thing and money is tight. So can't afford to buy a new phone.
Stock based ROM.
Sent from my GT-I9500
Which stock based one?
RemixedCat said:
Which stock based one?
Click to expand...
Click to collapse
So many. Just let your brain choose.
Sent from my GT-I9500
I don't have a lot of time.. That's why I posted here.
Ordering phone on Monday and going on a trip wed.
Wanna have the ROM by then with the least amt. of issues with straight talk.
Stay with the stock rom then. Most custom roms don't have gapps included.
Also, most custom roms require you to have a custom recovery. This requires additional flashing and time.
well I know about that but just some roms don't have modems or other things and I don't wanna have to search manually for stuff that's why I asked here !!
They're recommending stock because of the amount of time you have available to you before your trip. If you seriously want to flash a custom ROM prior to your trip, then you want to flash a Cyanogenmod-based or AOSP ROM. The question is, which version of Android do you want?
If you want Android 5.11, install Optimized CM12.1 + GApps.
If you want Android 6.0, AOSP 6 + GApps. If you want the goodies normally found in a Cyanogenmod-based ROM, then you want Synergy or CrDroid + GApps.
All the ROMs recommended install quickly with TWRP as your recovery. Keep in mind however that every ROM, even stock ROMs, will have bugs. However the bugs in the aforementioned ROMs will not prevent you from using the device. The good news is that unless you use a CDMA device such as a Verizon or Sprint Galaxy S4, you should not have to worry about which modem you have. The same cannot always be said for the Touchwiz ROMs, but even then, unless you have a pre-Android 5 modem you should be OK.
For Touchwiz-based ROMs, look at the ones available from Albe95. Regardless of which one you install, keep in mind that the package is much larger than Cyanogenmod or AOSP, and thus will take longer to install. Albe95 generally recommends the latest modem for your device, so if that is a deal breaker, then go Cyanogenmod/AOSP.
I want 4.4.x or 5.o for some of the betas I'm testing.
Will the ones you recommended have the modem included. I'd hate to have to hunt n peck n trial n error with that.
Custom ROMs do not include modems, period. If a ROM recommends a modem, you'll have to get it from the appropriate thread. I can tell you that AOSP and Cyanogenmod do not require a specific modem. For example, I'm running AOSP 6 on Straight Talk as we speak. I never upgraded the modem from the Android 5.0.1 version I installed seven months prior.
so CM doesn't include it? that sucks. what one do you recommend? and how is that flashed?
As mentioned, no custom ROM includes the modem in its download, because unless the ROM specifies otherwise, you use the one already on the phone. So in the case of Cyanogenmod, there is nothing special to do. Simply install the recovery through Odin, boot into the recovery, and install the ROM.

Best custom rom + kernel currently?

Thinking about switching from cloudy 3.3 to a custom rom.
Is the cm13 the best now or is there something similar or better?
Also, what kernel should i be using if i decide to switch?
You can try CM13 based Roms as well.
I'm on MIUI8 Rom right now which looks really nice! And it has some useful tools you can only find on MIUI Roms. But...it has got a few bugs which developer is always trying to fix them but well...they might be annoying for some people!
You can also try some CM13 builds which are bug-free and smoother but...it's pure Android so no special tool. It's up to you
But I'm pretty sure that Lambda kernel is the best kernel to use on CM/AOSP based Roms. You may want to give it a try.

How do really stock rom differs from custom roms

If we want to run a rom he can't (directly) we have to wait untill someone made it specifically for us. Thats fine i got it very device have its own kernel and rom integration. But if a person is using the same exact tree as official one do then why it is difficult to run stock apps directly w/o proting them.
Is it because of some legacy or copyright problem. One can build a rom on its own w/o having a team(like los, rr, paranoid).
Why porting is necessary? I would like to know that too
Sent from my Moto G4 Plus using Tapatalk
Cause you dont have updates
I am not a code/programme guy,
But what i have learned is, these different ROMs (Stock, AOSP based, Lineage based) have 0 (zero) interchangeability to their stock apps (except common apps). These may be because they use different codes?
For example, lineageSU addon will work only on lineagebased ROMs. Moto apps will work only on stock.
This looks like this apps are coded in way that it run only for specific ROM/device,
If you want such apps you need to modify it..
About ROM,
There are 4 sources/trees, 1)vendor 2) device 3)ROM 4)kernel.
Vendor, kernel, device tree can be used same for any ROM,
but ROM source is different for each ROM, which defines what is base of that ROM. You cannot build stock based ROM, you can only debloat,deodex, and modify stock ROM...
So, on different ROM, you need to modify apps to run...
@DgnrtnX I recommend to read that article about blob's so you get a better understanding why there's so much effort needed to "port" apps for example: https://www.xda-developers.com/came...opers-make-hardware-work-without-source-code/

Categories

Resources