| Replicant | |
|---|---|
| Developer | Denis Carikli, Joonas Kylmälä, Fil Bergamo, Paul Kocialkowski[1] |
| OS family | Android (Linux) |
| Working state | Current |
| Source model | Open source |
| Initial release | Mid-2010; 15 years ago (2010) |
| Latest release | 6.0 0004[2] (June 3, 2022; 3 years ago (2022-06-03)) [±] |
| Repository | |
| Package manager | APK |
| Kernel type | Monolithic (Linux) |
| Userland | Bionic C library,[3][4]mksh shell,[5] native core utilities with a few fromNetBSD[6] |
| License | Apache License 2.0,GNU GPLv2, and various other licenses |
| Official website | www |
Replicant is afree and open-sourceAndroid-basedoperating system that intends to replace allproprietary Android components withfree-software counterparts.[7] It is available for severalsmartphones andtablets.[8] Replicant's modifications are mostly in theCprogramming language,[9] and its changes are mostly to the lower-level parts of the OS, such as theLinux kernel and drivers that use it.
The nameReplicant is drawn from the fictionalreplicantandroids in theBlade Runner movie.[7] Replicant is sponsored and supported by theFree Software Foundation[7][10] and partially byNLnet.[11][12]
The Replicant project started in mid-2010 with an effort to consolidate various initiatives attempting to produce a fullyfree-as-in-freedomAndroid derivative for theHTC Dream device. The original team consisted ofBradley 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 byF-Droid.[17] In June 2022, Replicant announced they had removed F-Droid.[18]
TheRadio 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 permittedHTC Dream to have GPS working with Replicant.[citation needed]
Early versions of Replicant were based onAndroid Open Source Project code, while versions 2.2 (April 2011) and later usedCyanogenMod 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 onLineageOS, as theCyanogenMod 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]
Replicant is sponsored and supported by theFree Software Foundation,[7] which also hosts Replicant's source code.[28][29]
The following table lists the major releases of Replicant:
| Version | Release date | Based on | Notes | ||
|---|---|---|---|---|---|
| Unsupported: 2.2[30] | 26 April 2011 | Android 2.2 "Froyo" | — | ||
| Unsupported: 4.0[31] | 15 November 2012 | Android 4.0 "Ice Cream Sandwich" | Five updates have been released; the last one, 0005, was released on September 29, 2013.[32] | ||
| Supported: 4.2[33] | 19 January 2014 | CyanogenMod 10.1/Android 4.2.2 "Jelly Bean" | Four updates have been released; the last one, 0004, was released on September 1, 2015.[34] | ||
| Latest version:6.0[35] | 7 May 2017 | LineageOS 13.0/Android 6.0.1 "Marshmallow" | 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] | ||
| Future version: 10[36] | N/A | LineageOS 17.1/Android 10 | Replaced graphics driver for improved performance. | ||
Legend: Unsupported Supported Latest version Preview version Future version | |||||
In March 2014, Replicant developers found and closed a vulnerability present in a wide range ofSamsung Galaxy products that allowed the baseband processor to read and write the device's storage,[37] sometimes with normal user privileges and sometimes as theroot user depending on device model. Replicant's lead developer Paul Kocialkowski claimed it was abackdoor,[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]

On January 3, 2013, the project released Replicant 4.0SDK as a fullylibre replacement toAndroid 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 byDebian.[46]

The scope of the Replicant project has been gradually expanded to include support for new devices, starting with theNexus One,Nexus S andGalaxy S.
Some devices require proprietaryfirmware in order forWi-Fi andBluetooth functionality to work.[8]
The number of supported devices was doubled with version 6.0 in 2017.[47]