The Replicant project started in mid-2010 with an effort to consolidate various initiatives attempting to produce a fully free-as-in-freedomAndroid derivative for the HTC Dream device. The original team consisted of Bradley M. Kuhn, Aaron Williamson, Graziano Sorbaioli and Denis ‘GNUtoo’ Carikli.[13][14][15][16]
The project quickly led to the writing of replacement code for the non-free parts that were required to make HTC Dream functional. The first component to be replaced permitted audio to work without a proprietary library. Replicant originally provided its own FOSS application repository, which was later replaced by F-Droid.[17] In June 2022, Replicant announced they had removed F-Droid.[18]
The Radio Interface Layer software that handles communication with the modem was replaced by free code, thus making the telephony part usable. A library handling GPS was then adapted from free code that was originally written for another phone[19] and permitted HTC Dream to have GPS working with Replicant.[citation needed]
Early versions of Replicant were based on Android Open Source Project code, while versions 2.2 (April 2011) and later used CyanogenMod as their base in order to make supporting more devices easier.[20][21][22] In a blog post on February 1, 2017, the Replicant project said that the future versions of Replicant will be based on LineageOS, as the CyanogenMod project was discontinued.[23]
As development continued, many members of the original Replicant team retired from the project, making Denis "GNUtoo" Carikli the only remaining member from the original team still actively working on the project. In April 2011, Paul Kocialkowski decided to get involved with the project and gradually became the main Replicant developer, after successfully porting it to the Nexus S and Galaxy S devices.[1][24][25]
In 2014, however, Replicant was criticized for lagging behind. "While CyanogenMod is up to 4.4.4, Replicant is still stuck on Android 4.2. CM runs on just about everything, but Replicant is only supported by a handful of devices ranging from two to four years old. Plus, while Replicant aims to replace the proprietary drivers, it doesn't actually have a complete stack of drivers for any device."[26] When the smartphone operating systems efforts of others, like Mozilla, failed to gain traction, Replicant continued.[27]
Three updates have been released; the most recent one, 0003, was released on December 10, 2017. Two release candidates for 0004 have been released. RC2 was released on July 22, 2020.[2]
Replaced graphics driver for improved performance.
Legend:
Old version, not maintained
Old version, still maintained
Latest version
Latest preview version
Future release
Security
In March 2014, Replicant developers found and closed a vulnerability present in a wide range of Samsung Galaxy products that allowed the baseband processor to read and write the device's storage,[37] sometimes with normal user privileges and sometimes as the root user depending on device model. Replicant's lead developer Paul Kocialkowski claimed it was a backdoor,[37][38][39][40][19] but this was contested by Dan Rosenberg, a senior security researcher at Azimuth Security, who said there was "virtually no evidence for the ability to remotely execute this functionality".[41] There is some evidence of similar exploits of Apple hardware that did not involve operating system software, and the "methods detailed take direct advantage of Apple’s “firmware” or permanent software programmed onto the device, usually by the manufacturer."[42] The founder of Ubuntu previously expressed similar concerns.[43]
Development
On January 3, 2013, the project released Replicant 4.0 SDK as a fully libre replacement to Android SDK.[44] The Replicant SDK was released in response to Google updating the license for add-ons and binaries under a proprietary agreement.[45] Replicant's SDK was discontinued on April 28, 2017 in favour of the free SDK packaged by Debian.[46]
Hardware support
Supported devices
The scope of the Replicant project has been gradually expanded to include support for new devices, starting with the Nexus One, Nexus S and Galaxy S.
Some devices require proprietary firmware in order for Wi-Fi and Bluetooth functionality to work.[8]
The number of supported devices was doubled with version 6.0 in 2017.[47]