Third Replicant 6.0 release

A new version (0003) of Replicant 6.0 has been released a few weeks ago.

It fixes an important issue that makes devices end up in a boot loop (the devices were crashing during boot, endlessly) when installing certain applications.

It also fixes a security issue that enables attackers to decrypt and/or modify WiFi traffic.
This can be problematic if your security is relying on the WiFi encryption. This can be the case if you are using WiFi to connect to your device to use applications like Remote Keyboard over telnet. This can also be problematic if you share your Internet connection through WiFi and some services of the phone operator you use are available without authentication.

Because of the above, updating to this new version is strongly recommended.
See the update instructions on the wiki for that.

If your device is affected by the boot loop issue mentioned above, the update instructions won’t work, as they expect you to be able to easily reboot to recovery.
In that case, to reboot to the recovery you have to first boot in safe mode, and then to follow the update instructions to reboot to recovery.

A new Replicant 6.0 release

A few months have passed since the initial Replicant 6.0 release and it’s time for another one. This release more than doubles the number of supported devices and contains a few important fixes and improvements. The latest changes from LineageOS 13.0 are included. They are mostly security fixes, so updating is recommended!

Up to 12 devices now supported by Replicant 6.0

This release makes Replicant 6.0 available to a lot more devices that were already supported by Replicant 4.2. These include the Galaxy Note, Galaxy Nexus, the Galaxy Tab 2 7.0 and Galaxy Tab 2 10.1 models.

There are also two new tablet models that weren’t  yet supported by Replicant: the GSM and Wi-Fi-only version of the Galaxy Note 8.0.  The hardware is very similar to the Galaxy Note 2 and thus it was quite straightforward to add them as new devices. Furthermore, the tablets are not known to have bad modem isolation, as the other supported devices. And the working front and back camera makes them the currently best supported tablets.

Support for the GTA04 was a goal for this release as well. Some work has been done to achieve this goal, but it’s unfortunately not yet ready. It will hopefully be ready when the next release comes around.

Improvements and fixes

USSD

You can now use USSD messages with Replicant (again). USSD messages are the codes you enter to check your available balance, to refill it or to select a certain data plan. Depending on your provider, there may be more codes for other functionality available. Before Paul’s rewrite of Samsung-RIL in 2014, this type of messages could be used, but support for them wasn’t added again after the rewrite, until now. The new implementation features improved decoding, most notably for special characters.

USB Wi-Fi adapters

The initial Replicant 6.0 release already included the RepWifi app that provides a nice interface to use USB Wi-Fi adapters with libre firmware. The app is developed by Fil Bergamo and he added quite a few new features and a graphical restyling for the next version that is shipped with this release. It is now possible to connect to hidden networks, to manually set DNS servers and to auto-connect to a Wi-Fi network, once the adapter is plugged in.

Fil also submitted a patch that provides a fix for a very annoying issue with the Wi-Fi adapters or with reverse tethering. So far, network connections, that were established using a Wi-Fi adapter or reverse tethering, weren’t properly reported to apps. For example, F-Droid wasn’t usable because of this. Thanks to Fil’s patch, this issue is now fixed.

It was possible to make all devices that are supported by Replicant 6.0, including the newly added ones, usable with certain Wi-Fi adapters. Despite the improvements that were made with this release, be advised that connection issues or other instabilities are still possible. Their severity mostly depends on the device you use and the level of battery charge (see the wiki for more details).

Recovery

Another goal for this release was to make the usage of the recovery less error-prone and more intuitive. Devices with touch keys (like the Galaxy S 2 and Galaxy S 3) now have the key backlight enabled at all times which makes it easier to identify the back key. And the buttons are generally bigger to allow better navigation via the touchscreen. Some previously failing installations from internal or external storage (e.g. due to the file system used on the SD card) should now work.

A new Setup Wizard based on the Setup Wizard from LineageOS was added, too. When the device is started for the first time, the Setup Wizard helps with the configuration.

See the changelog for a complete list of all the notable changes and detailed support status of newly added devices.

Replicant 6.0 released

Over the last one and a half years, a lot of work has been done to move Replicant to a new version and to add new features. Everything started with a (now archived) forum post in January 2016 that documented the initial efforts to get Replicant 6.0 somehow working on a Galaxy S3. Development continued through the first half of 2016, however by far most of the work was done from September 2016 onwards.

Replicant 4.2, the last release, was based on CyanogenMod 10.1 and Android 4.2 respectively. Replicant 6.0 is based on LineageOS 13.0 which is based on Android 6.0. Replicant 6.0 includes all the improvements that were made since CyanogenMod 10.1. Have a look at the changelog for an overview of the new features and changes that were additionally made on our side.

This initial release supports the Galaxy S2, Galaxy S3 and Galaxy Note 2. The Galaxy S3 4G was added as an incomplete device for now as support for telephony and mobile data is missing. The status page shows which functionalities are supported on the individual devices. The previous blog post details the reasons why no SDK is provided as part of the release.

Unfortunately, this release only supports a subset of the devices that were previously supported by Replicant 4.2. So adding support for more devices has the highest priority for the next update. Thanks to device donations from the community, it will be possible to get Replicant 6.0 working on the GTA04, Galaxy Nexus, Galaxy Tab 2 7.0, Galaxy Tab 2 10.1 and Galaxy Note. Please consider donating to Replicant to help development.

As an additional release goal, a complete wiki overhaul was completed over the last two months. Besides updating outdated pages and a general cleanup, a lot of new documentation is now available for users and developers alike. We hope the new release will attract more developers, so that we can tackle some of the tasks we have been facing for a long time.

Replicant 4.2 0004 images release

Even though things are moving slowly at Replicant, we figured it was time to release another batch of Replicant 4.2 images. This release doesn’t add support for any new device, but has a focus on security instead, thanks to an active member of the community: Moritz (also known as My Self on the forums). For months, Moritz has been evaluating whether Replicant is affected by various vulnerabilities, retrofitting patches to close those vulnerabilities and submitting these for inclusion in Replicant. Thanks to his great work, this release includes fixes for security issues such as the Stagefright vulnerability or the Installer Hijacking vulnerability.

Since the previous release, all the Replicant-specific source code was moved over to git.replicant.us, that is gracefully hosted by the FSF. We are planning on moving all the Replicant source code over to that new server, so that we don’t have to rely on third parties such as CyanogenMod and AOSP to provide the full source code for Replicant. In the meantime, we have started tagging the commits used for each release and signing those tags with the Replicant release key, so that it’s possible to reliably retrieve the source code for a given Replicant release. Those tags are also combined in the release metadata’s git-tags.

For a complete list of changes, you can take a look at the changelog. Installation instructions are available for each device, as well as build guides.

You’re welcome to join-in and contribute code to Replicant! Resources to get started on development are available on the wiki, as well as a list of tasks to improve Replicant.

Replicant 4.2 0003 images release

It has been about 6 months since we last released a batch of images. A few things of interest were completed in the meantime, so we are rolling out new images today.

This release doesn’t bring support for any new device: instead, it mostly contains stability fixes for the devices we already support. The most considerable change in this release is the inclusion of the Samsung-RIL rewrite, that was developed this summer. Samsung-RIL is the component in charge of dealing with the modem, the hardware chip that communicates with the mobile telephony network. The code that was used since then didn’t have a good structure and didn’t meet the code quality standards required to call it stable or reliable. The rewrite should be more robust and fail-proof: it has been tested daily on a couple of devices for the past few months, with no major incident to report. The Samsung-RIL rewrite has about as many features supported as the previous version, with the exception of a few ones that were broken anyway (mainly, USSD and STK).
The new code establishes a sane basis for external contributions, so everyone is welcome to dig in and add support for what’s missing.

Another big achievement in that release is the inclusion of about a dozen security fixes, covering issues such as Shellshock, Master key, Fake ID and much more, thanks to reports by community members.

As usual, you can checkout the complete changelog, download the images from the ReplicantImages page and find installation instructions as well as build guides on the Replicant wiki.

Even though this release doesn’t introduce support for any new device, I have been at work regarding devices that make the best candidates for freedom and privacy/security. As mentioned in an earlier post, we are going to focus the development effort on a few devices that allow running free bootloaders and are either likely to have good modem isolation or don’t have a modem at all.

Recently, I have been working on adding Replicant support for Sunxi devices. There is a lot of work to do in that area and while nothing was released yet, it looks promising. I also spent a considerable amount of time working on the LG Optimus Black (P970)’s bootloader. I will be posting a series of articles about what an incredible journey it has been so far on my personal blog over the next few days. Eventually, the device will be properly documented in our wiki and as soon as U-Boot reaches feature completeness, it will be time to start porting Replicant to the device!

December 20th update: The full series of articles about freeing the LG Optimus Black (P970) is now available:

Replicant 4.2 0002 images release

As we announced a few weeks ago, we’ve been working hard on Goldelico GTA04 support over the past months, so we thought it was time to make a new batch of images. Moreover, the time couldn’t be better as we are presenting Replicant at the LSM/RMLL, another reason to have something new to show!

Aside from GTA04 support, serious issues have been fixed regarding the Galaxy Nexus (I9250), that prevented entering suspend and the Galaxy S (I9100), where the RIL (telephony) was not reliable. In addition, more or less important fixes have also been introduced for other devices. Some more new features have been added as well, as we reduced out dependency toward Google in the Browser and the home screen. The Replicant logo also got a new typeface, that is now used on the boot screens and our websites.

Note that the SSL certificate for the Replicant websites was updated a few day ago, correcting an error about alternative valid names and using a new private key, the previous one having been subject to the Heartbleed vulnerability.

As usual, you can checkout the complete changelog, download the images from the ReplicantImages page and find installation instructions as well as build guides on the Replicant wiki.

Replicant 4.2 kicks out!

We’ve been working very hard over the past few months to push Replicant to a newer Android version: the work started when CyanogenMod released version 10.1.3, based on the latest Android 4.2 code, back in September 2013. Bringing Replicant to a new Android version is a really big piece of work, especially given that the project only counts one active developer (however, we have hopes to see more people getting involved in the future)! The biggest motivation for the new version is to allow us to port Replicant to newer devices, that were not supported by Android 4.0, upon which Replicant 4.0 is based. Aside of that, Replicant 4.2 also brings the various improvements that come along with Android 4.2 and CyanogenMod 10.1.

All the devices that were supported by Replicant 4.0 were successfully ported to version 4.2, but some devices encounter serious slowness issues that are yet to be resolved. On the bright side of things, support for a new device was added, the Galaxy Note 2 N7100, which is mostly similar to the already supported Galaxy S 3. That was only made possible thanks to the generous donations that were made to the project, which enable us to buy devices for the current developer to work on. We are looking forward to adding support for even more devices in the future as well! Our wiki was updated to reflect the status of the supported devices as of the Replicant 4.2 release and features updated installation and usage guides. The Replicant SDK was also updated and is available for download.

The Replicant website and wiki were also cleaned up a bit during the preparation of this release. Our blog shall now only be used for posting updated on the project while our wiki holds the core informations about Replicant. As a reminder, please do not use the comment section of this blog to ask general-purpose questions, but use our forums or mailing-list instead!

This release also puts the emphasis on security: given the recent concerns that raised up concerning wide-scale surveillance from governments and certain companies, we though it would be good to make Replicant more bullet-proof. The Replicant 4.2 images for devices are now built in the userdebug fashion, which ensures a better level of security, the shipped system applications are signed with our own private keys, for which we provide the certificates and the releases are signed with our very own GPG release key. It is encouraged that you check the authenticity of the Replicant images or binaries before installing anything you downloaded!

As usual, you can checkout the complete changelog, download the images from the ReplicantImages page and find installation instructions as well as build guides on the Replicant wiki.

Replicant 4.0 0005 images release

Another couple of months passed by, bringing its share of improvements to Replicant 4.0, so we felt it was time to release a new batch of images. First thing’s first, let’s talk a bit about the fundraising program we launched thanks to the Free Software Foundation: it was a huge success! Over $20,000 were collected over the past two months, thanks to your help. We really didn’t expect that much money and it will greatly cover for our needs, which include buying new devices and covering for travel-related expenses, allowing us to attend events such as FOSDEM. On a sad note, we are more and more looking for new developers to get involved in the project: both GNUtoo and I are very busy and cannot contribute to the project as much as we’d like to, so things will keep moving a bit slowly, compared to what it used to be.

However, this new batch comes with a good share of improvements: the Galaxy Note (first generation, international GSM model) was added to the list of supported devices with this release (thanks to your financial support that enabled us to buy the device), which brings that list up to 10 devices. Camera support was added to the Galaxy S3 and other smaller improvements were made as well. As usual, you can checkout the complete changelog, download the images from the ReplicantImages page and find installation instructions as well as build guides on the Replicant wiki.

Since we received complaints about the Replicant installation process, all the guides were rewritten to be device-specific and include clear and step-by-step instructions, which should make it easier for everyone to install Replicant on their device. Moreover, the newly-launched forums and our mailing list make it possible to get help from our community, about the installation or anything else you want to talk about!

Replicant 4.0 0003 images release

It has been two months since the last images release and we decided that it was time to release another batch of images. These are still based on Android 4.0. First, it comes with support for the Galaxy Tab 2 10.1 & 7.0 tablets, both in GSM/3G versions: these tablets are pretty much phones with bigger screens. There is still room for improvement regarding these tablets in Replicant, but they have reached a state of usability, even though they are particularly slow in portrait mode.

Other minor fixes for other devices are included in this release, especially stability fixes regarding the Radio Interface Layer. The full changelog is available for more details.

We are now working to bring Replicant support to other devices such as the Goldelico GTA04.

You can download the images from the ReplicantImages page and find installation instructions as well as build guides on the Replicant wiki.

Replicant 4.0 0001 images release

After months of working hard to bring Replicant to the next upstream release, we are proud to announce the release of the Replicant 4.0 0001 images. This new release comes with support for both new devices, such as the Galaxy Nexus or the Galaxy S2 and devices that were already there in Replicant 2.3, like the Nexus S and the Galaxy S.

Aside from the new Ice Cream Sandwich user experience, that we tried to make as good as possible without any non-free blob, most devices have better hardware support than before, such as Galaxy S which now has working camera, or the global improvements that were made to make telephony more stable and reliable. Even though it’s not perfect yet, we are proud of the result, that many of us use daily. If you encounter a particular problem with our software, do not hesitate to report the issue via our tracker, or give feedback when a problem was resolved.

We are indeed writing hundreds of lines of code to have more hardware supported and with a better state, replacing non-free components, step by step. Keep in mind that Replicant has a very small core team, we’re just two people doing this on our free time: that means we can’t work on every side of the project at the same time and have to make choices. This is why we will always welcome serious new contributors who’d like to get involved in the project.

You can download the images from the ReplicantImages page and find installation instructions as well as build guides on the Replicant wiki.