This is a wiki page that everybody can edit. Check the history for the last authorized version. If you are a Fellow of the FSFE you can login right now with your usual Fellowship username and password; non-fellows can create a guest account.

Free Your Android!

Android is an operating system mainly developed by Google. This page collects information related to FSFE's Free Your Android Campaign. Please start there to get an overview.

While the Android Open Source Project (AOSP) is Free Software, mostly under the Apache 2.0 license, it is mostly incomplete and cannot provide a decent user experience on devices without the addition of proprietary libraries (without them you will be unable to use your phone as a phone, the GUI will be slow, GPS and camera won't work, and so on). Android is nearly never shipped as-is on devices.

Vendors usually use non-free libraries together with their modified version of Android, for which they usually don't release the source code because they are not required to do so under the terms of the Apache 2.0 license, nor are the sources provided for non-free applications such as those found in the Android market. Consequently, the only source code they are required to release is that of the Linux kernel they are using, and sometimes the device is even "tivoized". As a result, most devices sold are running non-free software and must be liberated to give the user the freedom he/she requires.

Besides all this, due to the hardware architecture of some devices using Qualcomm system-on-a-chip technology, the liberation of a device may have a very limited effect since the hardware can still spy on you: the modem (a device which communicates with the GSM infrastructure) always runs non-free software and may exert another level of control and/or surveillance over the phone.

More information is available in an article written by Richard Stallman.

The Operating Systems

Replicant with the Nexus S

If you have a Nexus S the more efficient way to free your device is to install Replicant on it. Replicant takes CyanogenMod and replaces or removes the non-free libraries, shipping an Android Market alternative (named FDroid) that permits the installation of applications that are known to be Free Software.

The Nexus S is currently the Android phone that respects your freedom the most if used with Replicant. There are other phones that respect or promote the principles of freedom more (such as the OpenMoko FreeRunner) but they are not principally designed purely to run Android.

The Good

The Bad

Replicant with the HTC Dream or the Nexus One

If you have a Qualcomm device you should consider buying a Nexus S, but if you can't you should install Replicant on it. The non-free libraries present on these phones may perform a form of surveillance or spying. Installing Replicant which replaces or removes these libraries ensures that the undesirable activities of such libraries is no longer a threat. However, the modem runs non-free software and controls your "sound card" (think about the implications of non-free software controlling your microphone), your GPS, and can read/write from/to the main CPU memory. That's why it's a second-choice solution.

Note that the Nexus One requires firmwares for making phone calls while the HTC Dream doesn't.

The Nexus One is compatible with Replicant 2.2 and 2.3 while the HTC Dream is compatible only with Replicant 2.2 and below.


If you cannot buy a Nexus S and your phone is not supported by Replicant but is supported by CyanogenMod you should consider installing CyanogenMod, but without installing the Google applications, installing FDroid instead. This will ensure that only Free Software applications will run on top of CyanogenMod which is partially free (it ships non-free libraries).

Note that here is a DRM provider app that you can remove.

Non-Free Parts

CyanogenMod includes non-free firmware which is required for most of the hardware to work. For each device these non-free files are known. We need to help CyanogenMod so they don't need relying to rely on non-free drivers. In the meantime, we need to ensure that at least the rest of CyanogenMod stays free. So if you know about non-free software (except drivers and firmware) added to CyanogenMod, please let us know about it!

Currently we suspect that the ClockworkMod App that ships with CyanogenMod is not free. Also there seems to be a non-free flash-plugin shipped with the default browser.

Ideally, we get CyanogenMod to remove those non-free parts. If we don't manage, we should write some script or app that removes all those parts easily for the user.

Freeing yout Android

High-level overview

On most phones Android operating system is spread over several partitions, most important ones being:

/boot - The main system boot loader

/system - Partition where Android operating system is installed

/data - Partition holding all installed applications and all application data (including system data - SMSes, contacts, etc.)

/recovery - Partition holding an alternate bootable system meant for recovering broken Android installation and Android upgrades

The goal of liberation is to replace the proprietary device manufacturer recovery program (which accepts only manufacturer-signed OS packages) with a custom one, which will allow installation of other operating systems (in our case CyanogenMod) to the "/system" partition.

The steps required for most devices are as follows:

  1. Backup user data (SMS, Contacts, etc.)
  2. Gain root access on the device
  3. Use root access to unlock bootloader to allow changes to "/system" and "/recovery" partitions (not all devices need that)
  4. Use root access to replace manufacturer recovery with an open one (e.g. ClockworkMod, Amon_Ra, etc.)

  5. Reboot phone into Clockwork / Amon_Ra recovery and use it to flash CyanogenMod zip file

  6. From within Clockwork/Amon_RA wipe "/data" and "/cache" partitions to prevent boot-loops and OS crashes because of application version differences

The Apps


FDroid is easy to install and provides free applications. Note that it doesn't require root permissions and is very easy to install, even without the command line.

Apps That Still Need To Be Liberated

Please add apps here that have no free counterpart, but are important to have on a free system. People can contact the authors of those apps and ask them why they are not Free Software.

Responses to Objections We've Heard from App Developers

We already collected objections and responses on FSFE's Free Your Android Campaign. If you know more, please add them here.

Portions of this page are modifications based on work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License. Android is a trademark of Google Inc.