Custom ROMs are no longer a niche only for those with the expertise to install them. Rooting your phone and equipping it with a custom ROM is getting easier and less risky. However, many newcomers still baulk at the jargon that developers use when explaining various processes. So we’ve put together a glossary of terms to help make those first tentative steps a little easier.
What is a custom ROM?
A custom ROM is basically a different operating system for your smartphone or tablet. It's like switching out the engine in a car; the outside stays the same, but the insides are different.
Unlike the pre-installed firmware that is provided by the manufacturer, such as Samsung's Touchwiz or HTC's Sense, custom ROMs generally provide an almost pure Android experience much like you’d find on Google’s Nexus devices.
Custom ROMS are also enriched with many useful extra features and customization options that affect the behavior of the system. Thus, the user gets more control over their device than would ever be possible with the standard software from the manufacturer.
In addition, custom ROMs are also a good way to install a more recent version of Android on your device, especially if it is an older model.
What is a nightly build?
Nightly builds are automatically created versions of a custom ROM, which add the most recent changes to the code base each and every day. These fixes, updates and new features can be accessed and flashed nightly by those who want to test them out.
However, since they are created automatically they are not checked for errors or bugs. As such, they are not recommended for daily use but more for error checking and debugging.
They are typically referred to as the "bleeding edge" because they are unstable and unreliable, but have the very latest features in them. For this reason, they are not recommended for beginners.
What is root?
The term “root” comes from the Linux world and describes the lowest level of the file system, or root access. When we talk about the root process, we mean that superuser privileges have been accessed, meaning you have access to the entire file system rather than just the surface layer.
Superuser permissions, or root access, allow you to change absolutely everything on the system. Having this type of access can be dangerous for a novice user because important system files that are required by the OS can be deleted just as easily as useless ones. This is one of the reasons that most smartphones are not rooted by default.
What are Gapps?
Gapps are basically all the Google Apps, including the Play Store and Gmail. For legal reasons, these apps are not a standard part of custom ROMS, but must be installed separately at the same time as flashing a ROM. Fortunately, there are plenty of simple Gapps installers that streamline the process.
What is recovery?
The recovery process can be started before the actual boot process of the Android operating system by pressing a certain key combination.
Recovery contains factory reset options for the smartphone and also the option to clear the cache, make or restore a backup, install zip files and a bunch of other useful features. With a custom recovery, as opposed to stock recovery, you can also create or install custom ROMs.
What is a bootloader?
A bootloader is a separate partition on the internal memory of the smartphone or tablet. The boot loader loads the actual Android operating system. You need to unlock the bootloader in order to flash a custom ROM. Some newer devices have a simple settings menu option for all OEM unlocking, which needs to be enabled before attempting to unlock the bootloader.
What is a cache/Dalvik cache?
The cache is a buffer memory where frequently used files are stored for faster retrieval. The Dalvik cache is a directory tree for all programs.
What is fastboot?
Fastboot is a special tool that is used for diagnostic and development purposes. An Android device in fastboot mode (that is connected to a computer) allows you to boot images and other files to your smartphone.
Other commands can also be sent to the device in fastboot mode, such as telling it to delete certain partitions or to reboot the bootloader.
What is a Nandroid backup?
A Nandroid backup is a complete image of your system. Should you do something silly, like delete a necessary system file and "soft brick" your device (soft brick means a fixable broken phone), you can return it to the previous state ("unbrick" it) by restoring a backup of your system using a Nandroid.
What is ADB?
ADB stands for Android Debug Bridge and is a software interface for the Android operating system. It's similar to fastboot (and how it interacts via the computer command line terminal with your smartphone or tablet) and requires you to be connected to a computer.
With ADB, you can download files to your computer from your smartphone and vice versa.
What is a kernel/custom kernel?
A kernel is the link between the hardware and software on your device. Whenever you interact with your Android smartphone, the kernel sends the requests made by the software to the hardware and makes the appropriate changes and vice versa.
For example, if your change the brightness with the slider on your device, the kernel registers the change and causes the brightness to actually change on the screen. This is a very simplistic explanation of what goes on behind the scenes, but gives a pretty clear idea of what a kernel does.
A custom kernel can expand the system to include additional functions, such as changing the CPU clock rates or adjusting the battery usage and idle times.
These were just a few of the most commonly used terms related to rooting and using a custom ROM. There is, of course, much more to discover and learn, but this article should serve as a nice introduction to what some of these terms actually mean.
Have you ever rooted an Android phone? Flashed a custom ROM? Tell us about your experiences in the comments.