You might have heard of LineageOS (formerly CyanogenMod), but did you know about microG? Read on!

The issue with Android and Google

As you probably know, getting an Android phone these days means getting a phone full of Google services, deeply integrated into the system. Not only are these services resource-hungry and can slow down your phone, but it is also problematic from a privacy standpoint.

While it is true that Android is a free and open source operating system, with each new Android version, Google seems to be more deeply integrated into it. While you can in theory just build and run the Android open-source project (aka AOSP), many app developers rely on Google services for their apps to work. The most important ones are probably Google cloud messaging (to get notifications in messaging apps) and Google locations services to use Wi-Fi instead of GPS for positioning, and the Google Maps API.

The problem with LineageOS

You might have heard of LineageOS: Think of it as AOSP with many enhancements on top. And maybe you even installed LineageOS on your phone. But this usually means one of two things: You either installed the Google Apps package to get full functionality, which basically gets you to square one, or you are running plain LineageOS without any Google Apps and services, which brings up the same issues as running plain AOSP: Important libraries and frameworks from Google are missing, which many apps rely on. But what if you can get the best of both worlds?

Introducing microG

microG is an open-source implementation of the Google services framework, libraries and APIs. It allows you to run apps that rely on Google, without using Google! And the best part is: It’s free, small, doesn’t need many resources and focuses on privacy! Think of it as a drop-in replacement for the Google services on your phone.

Example: Location (“A-GPS”) with microG

On a Google phone, A-GPS (assisted GPS) uses Wi-Fi access points around you to give you your location without using GPS satellites. The problem with this is that it submits all access points (and thus your location) to Google, which means they can track you. However, with microG, you keep the API that allows you to do this, without submitting anything to Google: To put it oversimplified, microG pretends to be Google and will accept requests on your phone, but will then process them with plugins of your choosing. This means you can use Mozilla or Apple for positioning, or even do advanced things like downloading all cell tower locations for your country to your phone, and have your phone locally calculate your position completely offline! If you’re wondering why not just use normal GPS stand-alone: It is slow and battery hungry, but it’s definitely an option.

Getting LinageOS with microG

The best part is, the microG project provides builds of LinageOS with microG and F-Droid pre-installed! It is basically a “ready to go” Android ROM, without Google. If you don’t know F-Droid, check my previous post here.

To download this magnificent ROM, visit their official website and simply click “Download”. You will then get a list of device “code names”, where you need to pick your device. The code names are the same as LinageOS uses.

How to find a device code name?

Check the official LineageOS wiki for the device list found here by simply searching for your device by the brand and model you know, and you will be able to find the device code name that way. For example, look up “OnePlus One” and you will find that its code name is “bacon”. You will then proceed to downloading the microG ROM for “bacon”.

How to install?

If you don’t know how to flash LineageOS with microG, it’s the same process as plain LineageOS. To learn more about how to flash (install) LineageOS, check the official wiki’s device page linked above. The only difference is that you will be flashing the microG ZIP and not the LineageOS ZIP.

That’s all there is to it! I hope I could point out a useful open-source project that will make your Google-Free phone a reality!