Geek 101: Demystifying Custom Android ROMs (Part I)

If you've sniffed around blogs or articles about mobile phones, you've probably seen mention of "custom ROMs" or "mods." What do they do for a phone? As with rooting, a ton of information is out there; it's far from cohesive, however, and it's spread out all over the Internet. But look no further: We'll walk you through everything you need to know about custom ROMs. Tomorrow, we'll run Part II, which covers kernals, choosing the right ROM, and custom themes.

What Is a Custom ROM/Mod?

Let's start with a quick definition: For the purposes of this article, "custom ROM" and "mod" are interchangeable. Both refer to an already-existing piece of software that a third party has customized, or modified. In this case, you could install a modified version of Android on your phone in place of the stock version of the mobile OS.

Rooting and Custom Recovery

ROM Manager has a simple main interface.To install and use custom ROMs, you must root your phone (the Android equivalent of iOS jailbreaking) and have Superuser installed on it. For more, see "Rooting Your Android Phone: FAQ," and look for how-tos on your specific model and its current software version, as rooting methods vary greatly from device to device.

You will also need a custom recovery installed and working. A custom recovery is like the launching pad for the phone's OS. It's also where you can make a full backup of the phone (similar to Time Machine in OSX). If something messes up and you can't even get the phone to boot, usually you can still get back to the custom recovery and revert to one of your backups (more on that later). You likely installed a custom recovery when you rooted your phone, especially if you followed a how-to on a site for custom ROMs (such as Cyanogen); make sure that you have one, though, because this is a step you cannot skip.

Your New Best Friend: ROM Manager

Although you can find several ways to install custom ROMs on a phone, ROM Manager is my method of choice. ROM Manager will install Clockwork Recovery (a custom recovery that works quite well). More than that, though, the app has an extremely intuitive interface for downloading and installing ROMs, creating backups or restoring from them, and even installing themes and alternate kernels. It's an easy way to try out a bunch of different mods to see which one works best for your phone.

ROM Manager is free in the Android Market, but the creators also offer a premium version that has more options and lets you download more ROMs (such as Cyanogen's experimental Nightlies, or Liquid ROMs). You can do everything over the air, which is much more convenient than the manual methods mentioned below. Before you install a mod with ROM Manager, it will ask if you want to use Clockwork to make a full backup. Do so. Each backup will be dated, so you can always go back to older backups if you want. You can--and should--delete older backups if you start running low on space on your SD Card.

Again, it's not entirely cut-and-dried from device to device. To use ROM Manager, folks with the Droid X, Droid 2, or Droid Pro must first use the bootstrap utility (made by the same genius that made ROM Manager). Samsung users must first flash a kernel that is compatible with Clockwork, and so on (a search on the XDA Developers forum will get you headed in the right direction). Since every device is different, do your research on the exact steps for your handset.

Fix Permissions

In my opinion, one of the most helpful tools out there is the Fix Permissions utility in ROM Manager. Whenever you install a new ROM or update, it's always a good idea to use Fix Permissions. Wait until your apps are all downloaded again (if you've performed a larger upgrade and have wiped) and you're done syncing; then open ROM Manager, scroll down to Utilities, and click Fix Permissions. This procedure can help iron out a lot of force-close issues. It will take around 5 minutes to run, and then it will ask you to reboot the phone, which virtually all custom ROMs allow you to do simply by long-pressing the power button and then selecting Reboot. (No more battery pulls!)

Other Install Methods

You can also download custom ROMs to your computer via the Web, and then use a USB cable to transfer them to the root directory of your phone's SD Card. Afterward, you can boot the phone into recovery--that is, whatever custom recovery you have installed, be it Clockwork, SPRecovery (which was likely installed on your phone when you rooted it), or any other custom recovery. From there you can make a Nandroid backup (a full system/data backup, explained below), and install whatever .zip file you would like (which is how ROMs are packaged).

Note that different recoveries function differently. For example, in SPRecovery the file you are flashing must be named update.zip, which can create some confusion if you want to flash multiple files, whereas Clockwork is a little more flexible. Different phones also boot into recovery differently. For instance, on the Motorola Droid you power on the handset while holding the "x" key. For other devices, you may need to hold the volume-up key. Search forums for your specific device to learn how to put it into recovery before you start installing anything else (try checking the CyanogenMod Wiki's brief partial list, but be sure to dig deeper). You can switch between different recoveries in ROM Manager (by choosing Flash Alternate Recovery), but note that any backups you made in Clockwork won't be compatible with SPRecovery, and vice versa; it's best to pick one and stick with it (and Clockwork works best with ROM Manager).

ROM Manager also has an option labeled Install ROM from SD Card. Using it is very simple: Click that option, and it will take you to the root directory of the SD Card, where you can choose the file to install. It will give you the chance to make a backup and wipe your data and cache, and then it will boot into recovery and install the ROM.