[LG Spirit ROMs, Kernels, Recoveries, & Other Devel] AgussVicious:
Android experience relies heavily on Google's Play Services. The microG project creates an alternative to installing Gapps, which install and execute closed-source blobs on our phones. MicroG however requires a patch called "signature spoofing", which allows microG's apps to spoof themselves as Google Apps. LineageOS currently does not include the patch due to different opinions among the developers.

This makes microG installation difficult on LineageOS and other ROMs. Our ROM is a fork of LineageOS with just the necessary changes to have microG built-in. We ship weekly builds for all the LineageOS supported devices..

FAQ

Why all of this? Isn't OpenGApps free software?

Yes and no, the name "OpenGApps" is misleading. While OpenGApps uses free software to retrieve and bundle the GApps, the apps themselves are not free software, they are in fact the same Google Apps you find on a new phone.

Why should I use microG instead of the standard Google Play Services?

First of all, freedom. I can't explain here why free software is so important (this is a FAQ, not a 200 pages manual), but if you're interested you can start by reading this.

Second, the Play Services are very expensive in terms of resources, they drain lots of battery and they use lots of space, while microG requires much less resources. To give you an idea, the smallest possible package of OpenGApps ("Pico Package") on ARM 7.1 is ~125 MB, while the full microG suite (GmsCore, GsfProxy, FakeStore, MozillaNlpBackend and NominatimNlpBackend) is ~4 MB.

Isn't Android free software? Can't I just install LineageOS without both GApps and microG?

Android is based on the AOSP project, which is free software. However many common features are handled by the proprietary GApps, generally by the Google Play Services. You can use LineageOS without GApps/microG, but you will probably miss something. In particular, you won't have the:

network localization services, which means that you can only use the GPS for the positioning

Google Cloud Messaging, so you won't receive any push notification for any app that relies on it

the Maps API, which means that any app that uses Google Maps through the Maps API will probably crash

With microG these services (and many others) are reimplemented.

Is LineageOS for microG completely free software?

Unfortunately no, like LineageOS it still has some non-free components. See the Replicant project for more informations.

Which is the current status of microG? Which APIs are already implemented?

See here.

Why do we need a custom build of LineageOS to have microG? Can't I install microG on the official LineageOS?

MicroG requires a patch called "signature spoofing", which allows the microG's apps to spoof themselves as Google Apps. LineageOS' developers refused (multiple times) to include the patch, forcing us to fork their project.

Wait, on their FAQ page I see that they don't want to include the patch for security reasons. Is this ROM unsafe?

No. LineageOS' developers decided not to include this patch for various reasons.

The signature spoofing could be an unsafe feature only if the user blindly gives any permission to any app, as this permission can't be obtained automatically by the apps.

Moreover, to further strengthen the security of our ROM, we modified the signature spoofing permission so that only system privileged apps can obtain it, and no security threat is posed to our users.

Do you use test keys?

Heck, no! We sign all our builds with our own private keys.

Do you offer OTA updates?

Yes, once a week.

Do you offer delta updates?

Not currently, but it can be done if there's real demand.

Can I install apps from the Play Store on this ROM?

F-Droid is included in our ROM, so you can freely download all the FOSS apps on their repositories.

However, if you need apps which are available only on the Play Store, you're free to host your personal instance of PlayMaker (see this demo) or GPlayWeb and connect it to your F-Droid client, Playmaker will let you download apps from the Play Store and install them via F-Droid. Another solution is to use a local app, like Yalp Store.

Do I have to enable "Unknown sources" to install apps in F-Droid?

Our ROM includes "F-Droid Privileged Extension", which allows F-Droid to install and update apps without the need of user interaction or the unsafe "Unknown sources" option.

Can you add support for my device? It is officially supported by LineageOS

We already build LineageOS for microG for every device supported by LineageOS. Find your device in our Downloads page!

Can you add support for my device? It is not supported by LineageOS though...

No, I'm sorry.

I don't trust your build, I want to build it myself!

No problem! Our builds are done with this Docker image, feel free to build it yourself.

I am running a custom build of LineageOS, but yours is way cooler! How can I migrate to it without losing my data?

Replace the LineageOS official keys in our migration ZIP with your keys (or follow the suggestions in the LineageOS migration guide).

Post-install

First, open the "microG Settings" app and check if everything is OK in the "Self-Check" section; you will probably have to give microG some permissions, like location and file access. The UnifiedNlp section will have some issues: that's normal, we haven't configured it yet.

UnifiedNlp

UnifiedNlp is the microG Network Location Provider, which provides the current location of the device without the use of the GPS. While Google's NLP can only use Google's servers for positioning, UnifiedNlp obtains the geolocation through different plugins, which interface to different services.

By default there are two plugins installed:

MozillaNlpBackend, which uses the Mozilla Location Service (online)

NominatimNlpBackend, which uses MapQuest's Nominatim service (based on OpenStreetMap) for geocoding (online)

If you want to use these plugins, go to microG Settings -> UnifiedNlp Settings, configure and enable both.

If you instead want different plugins (like the LocalGsmNlpBackend, which uses a local offline database of the GSM towers to obtain the location) you can download them in F-Droid and enable them in the same way.

Reboot and check whether UnifiedNlp is correctly set up in the "Self-Check" section of the "microG Settings" app.

F-Droid

You should add microG's repository to F-Droid, so that you can easily update microG's packages. On your device, follow this link and open microG's F-Droid link in F-Droid (or scan the QR code) to add the repository.

Moreover, you have the F-Droid Privileged Extension installed by default, why not use it? To make a good use of it go to the F-Droid Settings and enable auto updates.

Google Cloud Messaging

Many apps rely on the Google Cloud Messaging, a Google proprietary system to push notifications to your device. This feature is implemented in microG but, as not every user requires it, is disabled by default. If you need it, enable the "Google Device registration" and the "Google Cloud Messaging" features in the "microG Settings" app.

Weather service

If you want the weather features of LineageOS (like in the lock screen or in the cLock widget) you have to download a weather provider from here. Choose your favorite one, install it and configure it in cLock (or in Settings → Apps → Gear icon → Weather).

If you don't want to enable "Unknown sources" you can also import the PlayMaker demo repository in F-Droid (by adding this URL to F-Droid) and download it from there.

SU (root)

Our ROM doesn't include root by default for security reasons, but you can easily install it: go here, download the appropriate ZIP and install it from the recovery.

Contributors

pcfighter

LG K10 team

Source code

https://github.com/pcfighter

Downloads

Rom

Magisk