CyanogenMod is history, LineageOS is the new kid in town. So far, however, I’ve shied away from upgrading my Samsung S5, and to tell the truth, I didn’t even upgrade Android 5 to 6 while CyanogenMod still existed. To high the pain for too little gain. But now Android 7 is the mainstream and the platform gets hit regularly by security issues that need to be patched to stay on the save side. No excuses anymore. So one day I decided to bite the bullet and to update by starting from scratch and do a few things differently this time. Little pain would have been involved if I had done the straight forward thing. However, since I installed from scratch I wanted to get a more secure and private setup. That proved to be much more difficult than I thought and I’m afraid I did not quite succeed with everything.
The straight forward things at the beginning are to install a LineageOS recommended recovery image and from there the current LineageOS Build for the Samsung S5 which is AOSP Android 7.1. In addition I installed a small set of Android apps to have a calendar and a few other things on board and a ZIP that patches LineageOS to open up root access. Being root on a device is an absolute requirement as I don’t own a device if I’m not root on it…
After the installation it took a few minutes for the initial boot sequence to finish. After that everything was ready to go and looked fine so I went to the next step and included my 32 GB SD flash card as system partition so Android can use it for applications and application data in addition to the internal 16 GB flash memory of my S5. I used the device like this for a couple of days but I noticed that many applications reacted sluggishly especially Firefox. That never happened on Android 5!? I tried alternative browsers but the result was the same, scrolling was sluggish and every now and then the browser would freeze for a few seconds before continuing. I tried a lot of things including the change of the battery saving options to no avail. Finally, I wondered if the problem could be related to using the external SD card as system partition. As the situation was unbearable I decided to bite the (first) bullet and to reformat the SD card as external partition, loosing all installed apps as a consequence which required to reinstall them on the internal partition. But this helped, the sluggishness was instantly gone and didn’t come back since. O.k., so either my SD card or the S5’s external flash interface is not performing very well.
Another thing I wanted to do is to encrypt the phone. So I went into the settings and started the process. I was warned that it could take some time. So I waited and waited…. and waited. After 6 hours I finally gave up and re-installed LineageOS by purging the encrypted partitions. It took me quite a while to do this because the recovery image would not delete the encryption layer. I finally figured out that I can get rid of the encryption by NOT typing-in the encryption password when the recovery boot loader starts and instead hitting cancel. After that the partitions can be deleted including the encryption wrapper. Bullet number 2 bitten.
O.k. so using the external sd-card as system partition doesn’t work, encryption doesn’t work but at least I didn’t want to use a Google account on the device for privacy reasons this time. Most applications I need are available in the F-Droid store. However there are some I can only get via Google’s Play store. The original plan was to use Racoon to download the apps I needed to the PC and from there to the S5. Then I saw that there is an even easier way: The Android Yalp app available on Github and the F-Droid store with which apps from the Android Play store can be installed directly with the App on the device. Works perfectly, the only thing it can’t do are to install my paid apps because it doesn’t use my personal account. I only have few Play store paid apps anyway (as I prefer Open Source apps and pay the developer outside the store). So for my paid apps in the Play store I can perhaps make use of Racoon on the PC. I haven’t tried yet.
As I said above, I don’t own a device if I’m not root on it. On Android I use it to put my own anti-spy and anti-add hosts lists in ‘/etc’ for which root is required (details on Github here). Still works like a charm on Android 7.1.
So what are the benefits for me of Android 7.1 compared to Android 5 apart from finally being able to follow Google’s security fixes? I’m afraid not too many. Yes, the notifications are a bit slicker, the calendar has a few new features that I like (e.g., it remembers the last calendar used) but that completes the list. If it weren’t for the security fixes it would have been a massive waste of time to upgrade. Don’t get me wrong, I very much appreciate the work done by the LineageOS maintainers of the ‘klte’ code and are eternally grateful to them for separating me from Google as much as possible. For my usage scenario, though, not enough has changed in Android 7 compared to 5 to be excited about the whole affair I’m afraid.