Replicant (operating system)
Replicant is a free operating system (OS) based on the Android mobile platform that aims to replace all proprietary Android components with free-software (“libre” software) counterparts. It is available for several smartphones and tablet computers. It is written in the same programming languages as Android (as it is forked from it, though indirectly), while the modifications are mostly in the C language, as the changes are mostly to the lower-level parts of the OS, such as the Linux kernel and drivers that use it.
|Source model||Open source|
|Latest release||6.0 0003 (December 10, 2017 ) [±]|
|Kernel type||Monolithic (Linux)|
|Userland||Bionic C library, mksh shell, native core utilities with a few from NetBSD|
|License||Apache License 2.0, GNU GPLv2, and various other licenses|
The Replicant project started in mid-2010 with an effort to consolidate various initiatives attempting to produce a fully free-as-in-freedom Android derivative for the HTC Dream device. The original team consisted of Bradley M. Kuhn, Aaron Williamson, Graziano Sorbaioli and Denis ‘GNUtoo’ Carikli. 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.[self-published source][self-published source]
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 and permitted HTC Dream to have GPS working with Replicant.[self-published source]
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. 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.
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.
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."  When the smartphone operating systems efforts of others, like Mozilla, failed to gain traction, Replicant continued.
The following table lists the major releases of Replicant:
|Version||Release date||Based on||Notes|
|Old version, no longer supported: 2.2||26 April 2011||Android 2.2 "Froyo"||N/A|
|Old version, no longer supported: 4.0||15 November 2012||Android 4.0 "Ice Cream Sandwich"||Five updates have been released; the last one, 0005, was released on September 29, 2013.|
|Older version, yet still supported: 4.2||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.|
|Current stable version: 6.0||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.|
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, 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, 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". 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." The founder of Ubuntu previously expressed similar concerns.
On January 3, 2013, the project released Replicant 4.0 SDK as a fully libre replacement to Android SDK. The Replicant SDK was released in response to Google updating the license for add-ons and binaries under a proprietary agreement. Replicant's SDK was discontinued on April 28, 2017 in favour of the free SDK packaged by Debian.
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. As of January 2014, the following devices are supported, with Wi-Fi and Bluetooth requiring proprietary firmware in order to work:
|Device||Device Class||Codename||Replicant version||2D graphics||3D graphics||Sound||Telephony||Mobile Data||NFC||GPS||Sensors||Camera||Wi-Fi||Bluetooth|
|Samsung Galaxy S||Smartphone||galaxysmtd||4.2||Yes||No||Yes||Yes||Yes||N/A||No||Yes||Yes||Proprietary||Proprietary|
|Samsung Galaxy S2||Smartphone||galaxys2||6.0||Yes (fast)||No||Yes||Yes||Yes||No||No||Yes||Yes||Proprietary||Proprietary|
|Samsung Galaxy Note (original)||Smartphone||n7000||4.2||Yes (slow)||No||Yes||Yes||Yes||No||No||Yes||No||Proprietary||Proprietary|
|Samsung Galaxy Tab 2 (7.0)||Tablet||p3100||4.2||Yes (fast)||No||Yes||Yes||Yes||N/A||No||Yes||No||Proprietary||Proprietary|
|Samsung Galaxy Tab 2 (10.1)||Tablet||p5100||4.2||Yes (slow)||No||Yes||Yes||Yes||N/A||No||Yes||No||Proprietary||Proprietary|
|Samsung Galaxy S3||Smartphone||i9300||6.0||Yes||No||Yes||Yes||Yes||Yes||No||Yes||Yes (back) / proprietary (front)||Proprietary||Proprietary|
|Samsung Galaxy Note 2||Smartphone||n7100||6.0||Yes||No||Yes||Yes||Yes||Yes||No||Yes||Yes (back) / proprietary (front)||Proprietary||Proprietary|
|Goldelico OpenPhoenux GTA04||Smartphone||gta04||4.2||Yes||No||Yes||Work in progress||Work in progress||N/A||Yes||Work in progress||Work in progress||Proprietary||Proprietary|
Additional target devices are evaluated, based on the suitability of their hardware platforms and required device drivers; as of January 2014, devices listed below are not yet supported, and porting Replicant to them is only in consideration.
In November 2013, it was announced that Replicant could work on a Fairphone device and that the bootloaders may even be free software. The Fairphone team seemed "definitely interested" in helping to get Replicant ported to the device. In December 2014, Fairphone admitted that it had failed to convince chipset vendor MediaTek to open up the source code for first-generation Fairphones.
Based on either the unsuitability of their hardware platforms or the lack of available free software drivers, porting Replicant to the devices listed below has been considered and rejected.
|Galaxy Tab 8.9||Unlikely||Tegra slowness|
|Nexus 7 (all versions)||Possible but unlikely||Too many proprietary drivers|
|Nexus 4||Very unlikely||Too many proprietary drivers|
|Motorola Defy||Impossible||Kernel is signed|
Replicant lists their minimal requirements as:
- The device must be supported by LineageOS/CyanogenMod officially (better) or via 3rd party repos
- There must be a way to flash images (via bootloader or recovery) using a free program
- The kernel must not be signed: the bootloader must not check the kernel signature
- The kernel sources must have been released
- The network type must be GSM, no CDMA phone can be supported for now
In November 2013, one of the developers of Replicant wrote a blog post in which they said that Replicant could work on the Fairphone and the bootloaders (that are not part of the operating system) may even be free software. The Fairphone team seemed "definitely interested" in helping get Replicant running on the device.
- "People - Replicant". Redmine.replicant.us. Retrieved September 30, 2013.
- Carikli, Denis (December 30, 2017). "Third Replicant 6.0 release". Replicant. Retrieved January 7, 2018.
- "Replicant". replicant.us.
- McAllister, Neil (July 26, 2013). "FSF passes collection plate for free Android clone Replicant". The Register. Retrieved January 23, 2014.
- "Replicant Status". redmine.replicant.us. Retrieved March 28, 2015.
- "Replicant Developer's Guide". Replicant Wiki. Retrieved January 18, 2016.
- Sharwood, Simon (January 23, 2017). "Stallman's Free Software Foundation says we need a free phone OS". The Register. Retrieved February 12, 2018.
- "Replicant: distribution Android 100% libre". LinuxFr.org. September 20, 2010. Retrieved September 30, 2013.
- Puttergill, Rowan (October 3, 2011). "Replicant: Making Android truly free". Memeburn. Burn Media.
- Currie, Andrew (August 24, 2011). "F-Droid, the Android app store for freedom beards". Open attitude. (Blog). Retrieved September 30, 2013.
- Par aKa (October 10, 2011). "Le projet Replicant ou Android totalement libre présenté par PaulK". Framablog. Retrieved September 30, 2013.
- Manuel Jose (July 2013). "A Fully Free Android based Mobile OS? FSF is Aiming for the Skies with Replicant Project". techdrivein.com. Retrieved January 2, 2014.
- Rohan Pearce (March 10, 2012). "Replicant developer interview - Building a truly free Android". techworld.com. Retrieved January 2, 2014.
- Daniel Fuller (August 10, 2016). "Replicant FOSS Android Project Hits Marshmallow". androidheadlines.com. Retrieved February 12, 2018.
- "Replicant 6.0 development updates". Replicant blog (blog). Retrieved February 20, 2017.
- "Replicant developer interview - Building a truly free Android - Interview - Techworld.com". Features.techworld.com. Retrieved September 30, 2013.
- Klint Finley (October 30, 2013). "The Quest to Build a Truly Free Version of Android". wired.com. Retrieved February 12, 2018.
- Ron Amadeo (July 29, 2014). "The great Ars experiment—free and open source software on a smartphone?!". arstechnica.com. Retrieved February 12, 2018.
- Klint Finley (December 9, 2015). "Mozilla Is Giving Up on Its OS for Smartphones". wired.com. Retrieved February 12, 2018.
- Kocialkowski, Paul (July 1, 2015). "Replicant source code hosting and RMLL 2015". Replicant blog. Replicant.
- John Gold (January 17, 2017). "Free Software Foundation shakes up its list of priority projects". networkworld.com. Retrieved February 12, 2018.
- "Replicant 2.2 SDK Available". Replicant. April 26, 2011. Retrieved November 20, 2017.
- Kocialkowski, Paul (November 16, 2012). "Replicant 4.0 0001 images release". Replicant. Retrieved November 20, 2017.
- Kocialkowski, Paul (October 1, 2013). "Replicant 4.0 0005 images release". Replicant. Retrieved November 20, 2017.
- Kocialkowski, Paul (January 22, 2014). "Replicant 4.2 kicks out!". Replicant. Retrieved November 20, 2017.
- Kocialkowski, Paul (September 2, 2015). "Replicant 4.2 0004 images release". Replicant. Retrieved November 20, 2017.
- Wiedmeyer, Wolfgang (May 13, 2017). "Replicant 6.0 released". Replicant. Retrieved November 20, 2017.
- Kocialkowski, Paul (March 12, 2014). "Replicant developers find and close Samsung Galaxy backdoor". FSF's blog. Free Software Foundation. Retrieved September 19, 2014.
- Paul Kocialkowski. "Samsung Galaxy Back-door". Replicant Wiki. Retrieved July 5, 2014.
- Goodin, Dan (March 14, 2016). ""Virtually no evidence" for claim of remote backdoor in Samsung phones". Ars Technica. Condé Nast. Retrieved September 4, 2016.
- Jack Crosbie (March 23, 2017). "Wikileaks: The CIA Has Been Spying on Apple Users for Years". inverse.com. Retrieved February 12, 2018.
- Lucian Constantin (March 18, 2014). "Proprietary firmware poses a security threat, Ubuntu founder says". pcworld.com. Retrieved February 12, 2018.
- "Replicant 4.0 SDK release | Replicant project". Replicant.us. January 3, 2013. Archived from the original on September 8, 2013. Retrieved September 30, 2013.
- "What's up with the Android SDK? - Paul Kocialkowski's coding blog". Code.paulk.fr. January 5, 2013. Retrieved September 30, 2013.
- "There won't be a Replicant 6.0 SDK because there is already something better". Replicant.us. April 28, 2017. Retrieved May 6, 2017.
- "Nexus S (I902x)".
free userspace, proprietary loaded firmware
- "Targets Evaluation". Replicant. Retrieved January 2, 2014.
- About the Fairphone, in the official Replicant blog.
- Our approach to software and ongoing support for the first Fairphones, in the official Fairphone blog.
- "Nexus 7 2013? - Replicant". replicant.us.
- About the Fairphone, in the official Replicant blog.