yashsingh1/xdaforums huggingface dataset:
[Moto G 2015 Android Development] MSe1969:
Just to be sure:

You are looking for a solution to sync contacts w/o having Gapps installed and w/o using Google account, correct?

I use DAVdroid app (free at FDroid) in conjunction with a mail provider supporting this (e.g. posteo.de or mailbox.org)
[Moto G 2015 Android Development] melp57:
My contacts seldom change, so I used my backup program to backup contacts and then restore when flashing this rom, or other.
[Moto G 2015 Android Development] MSe1969:
Hi all,

I've posted a poll - what do you think of including the F-Droid store and its extension (so apps can be installed w/o having to enable "unknown sources") into the ROM?

Regards, M.
[Moto G 2015 Android Development] Hunimix:
I have a question, what will happen with the purchases bought in the play store?
[Moto G 2015 Android Development] shadowbone:
You can sign in to your google account in yalp store or If that doesn't work, you might have to use play store after signing in to your account through microg setup, since yalp store does not seem to support run time license verification AFAIK.
[Moto G 2015 Android Development] MSe1969:
If you use the 'official' Gapps (e.g., you come from stock ROM, flash this one and Gapps), nothing will change.

If you would like to get away from Google by using alternatives, the story looks different:

I see four scenario's:

You can use the real play store apk on top of microG (backup /system/priv-app/phonesky.apk from an existing Gapps setup, install microG w/o fakestore and restore Play store to the same place) - I've tested this setup successfully a couple of months ago. There is however no guarantee it'll work forever (it may stop working at any time) - this scenario is better than the original Google spy services, but I resist to really recommend it: Play store also phones home and updates itself without notice.

You can use your existing credentials with Yalp. You can't purchase new stuff, but it should be possible to receive updates for your existing purchases. I haven't tested this scenario, so maybe others to comment/step in

Use an old device with Gapps, but no further personal data, which you have most time disabled in your drawer for app updates to grab the apk files and move them to your real device

Accept the fact it's gone as part of your decision to move away from Google
[Moto G 2015 Android Development] shadowbone:
[MENTION=7929484]MSe1969[/MENTION],

Alberto released an unofficial build 2 days back, in his thread for Los14.1 osprey - https://xdaforums.com/2015-moto-g/orig-development/rom-unofficial-cyanogenmod-14-t3466246/page543 .

If it could be of any help idk. :)
[Moto G 2015 Android Development] MSe1969:
New version with November patches

Hi all,

a new version is ready to download here:

https://www.androidfilehost.com/?fid=817906626617948918

It has got the following features:

Sec. string 2017-11-01

AOSP tag 6.0.1_r81

Kernel forked from "Squid Kernel f. Osprey" and merged version 3.10.108 changes from kernel.org

Patched for microG

Regards, M.
[Moto G 2015 Android Development] Erick_Summer:
Hello friend, I have a question, if I install another kernel there will be problems, since I come from stock with the kernel UltraDevs_Kernel_osprey_v7.0 and has support for MM and NN and in stock I am doing great, I would like to know if there will be a problem when installing another kernel or could also try this kernel to know if it has the same autonomy as the Squid Kernel, thanks.
[Moto G 2015 Android Development] MSe1969:
To be honest - I don't know!

However, some thoughts from my side:

Motorola G3 (osprey) Stock seems to be close to AOSP, different from many other manufacturers, so I think it is worth a try. But the only way to really find out is trying it...
[Moto G 2015 Android Development] shadowbone:
Will test that tonight, thank you.

Can I perform a dirty flash ?

Edit : so far so good. Performed dirty flash and seems to be working fine.
[Moto G 2015 Android Development] MSe1969:
Yes, when you dirty flash over any previous version of THIS ROM (cm-13.0 LineageOS)
[Moto G 2015 Android Development] shadowbone:
Of course. :laugh: sorry I didn't specify.
[Moto G 2015 Android Development] Erick_Summer:
Hello, in the previous post I commented that I had problems with YouTube when playing a video etc, I will pass 2 logcat so you can see the problem, you pass 2 in case 1 do not come the error, thanks
[Moto G 2015 Android Development] Erick_Summer:
Hello, in the previous post I commented that I had problems with YouTube when playing a video etc, I will pass 2 logcat so you can see the problem, you pass 2 in case 1 do not come the error, thanks

[/ATTACH]
[Moto G 2015 Android Development] MSe1969:
The log shows, that you use a modded YouTube app (one of the various OGYT or iYTBP forks) on top of one of the specialized modded microG apps, which is supposed to support the respective YT mod. It looks like the communication between your YT-mod and the microG-mod has issues. I have no clue about this whole area, all I could find out while quickly scanning through the search results is that the modified microG must fit to the modified YT app. I don't know how I can really help here and whether this is even an issue with this ROM, or - what I believe - simply an issue with those apps.

I use NewPipe as YT app, which runs fine and when you wrote in the previous thread two months ago, I even did a clean test with the official YT app. Other forum member told at that time in reply to your post that he uses iYTBP w/o any issues with this ROM. Sorry, but I can't help here...
[Moto G 2015 Android Development] Erick_Summer:
even in the normal application of YouTube it also happens, I do not know if it will be by microG that makes it conflict with goggle services.
[Moto G 2015 Android Development] hovnonium:
I quote you

"an apology for barely just answering, already solve the problem I had to search the internet and I had to activate an option in options developer and went the lag, is a bug of cm13 that I saw on the internet, thanks anyway. "
[Moto G 2015 Android Development] 14142000:
Can i dirty flash this or do I have to clean flash?
[Moto G 2015 Android Development] Erick_Summer:
I wrote that a long time ago and I thought that the problem had already occurred because I activated forza cpu but only that the problem did not happen very much but if it did not resolve that friend problem.

MSe1969 told me about the problem and told me that I did not know how to solve it since there was a conflict with microG and the application of youtube, but I have to tell you that it also happened in the normal youtube application.
[Moto G 2015 Android Development] MSe1969:
Please refer to the OP, where all is explained. In short: You have a different ROM or Stock = clean! You update an older version of this ROM = dirty possible.
[Moto G 2015 Android Development] MSe1969:
New version with December patches

Hi all,

different from the last times, I have published now a new version, before the ASB patches of the 'cm-13.0' branch have been merged: https://www.androidfilehost.com/?fid=745849072291695919

In case something will still change, before the topic is merged, I will push a new version.

For those building from source, you need to execute the following commands to get the December patches into your tree, because the code is not yet merged into the LineageOS github repo:

source build/envsetup.sh
repopick -t asb-2017.12

The new version's features include:

Security string 2017-12-01

AOSP tag 6.0.1_r81

Squid kernel r21 (still my own fork as outlined in OP, but r21 changes merged)

Recent build of LineageOS Jelly Browser

Android System Webview 64.0.3282.30

Patched for microG usage

Feedback welcome.
[Moto G 2015 Android Development] Abhishek17599:
Is there a possibility that you can bring this ROM to merlin??

Looks awesome
[Moto G 2015 Android Development] MSe1969:
It is for sure easy to simply add the device and vendor config for merlin to my tree and start a build (according to [MENTION=6485916]squid2[/MENTION], his kernel, which I use in my build, is supposed to work equally for merlin), but I am not able to test anything, because I do not have a merlin device!

Obviously, fixing any issue, which would be specific to merlin and would not occur on osprey is impossible for me. . .

Edit: If you want to take the risk, I can do a test build for you next week, but as said: I can't and I won't fix or analyze any issue related to that merlin test build.
[Moto G 2015 Android Development] MSe1969:
Btw, the December ASB (topic 'asb-2017.12') has been merged now for branch cm-13.0 in LineageOS. No changes to the base, which I used for my build. People building from source can now directly sync and do not need to repopick the topic.
[Moto G 2015 Android Development] MSe1969:
New version available with January patches / 2nd build variant

Hi all,

a new version of the build is available for download here:

https://www.androidfilehost.com/?fid=962157660013071695

Again - same as last time - the build is supplied before the January ASB have been officially merged into the official LineageOS 'cm-13.0' branch.

In case something will still change, before the topic is merged, I will push a new version. People building from source need to cherry-pick the changes with the command

source build/envsetup.sh
repopick -t asb-2018.01

Features:

Security string 2018-01-01

AOSP tag 6.0.1_r81

Squid kernel r22 (tracked again directly from squid2 repo, as the kernel receives now regular updates)

Android System Webview 63.0.3239.111 (switched back to stable M63, LineageOS version from cm-14.1)

Patched for microG usage

I have now started to also provide a 2nd variant - an "unofficial microG build", which I am using for my own device. It basically does for the Osprey device on LineageOS 13, what The LineageOS for microG project does for LineageOS 14.1, plus some additional security hardening features outlined below and will also be listed in an additional reserved post at the beginning of this thread.

The specifics of this build, why one should (or should not) use it, how to migrate, all this is very well explained on the 'LineageOS for microG' project FAQ page (so I don't want to repeat that). The additional security hardening features (more to follow) are:

Not rooted by default, but you can either install Magisk or the LineageOS root package from here if needed

SQLite 'secure delete' feature enabled (default as of Oreo)

Stricter SELinux policy to prevent user apps from spying out your internet connections (see here for more information), therefore bundled 'Privacy Friendly Netmonitor' app with the ROM to give one tool, which still allows to monitor the network traffic if needed

Download URL of 'microG build': https://www.androidfilehost.com/?fid=889964283620778445

Regards, M.
[Moto G 2015 Android Development] ajaysingh23:
Hi,

Please correct me if I'm wrong. Now there are two builds, one is Lineage 13, and one is Lineage 13 + microg patch.

Thanks
[Moto G 2015 Android Development] MSe1969:
One build is LineageOS 13 as before, with the patch. The 2nd is a build which includes FDroid and the microG apps already pre-installed. (That one is not applicable for people using Gapps)
[Moto G 2015 Android Development] ajaysingh23:
Thanks understood :):fingers-crossed:
[Moto G 2015 Android Development] leandroprez26:
Hi.

Guys, I can pass Pico Gapps on this ROM, for Google Services?
[Moto G 2015 Android Development] AlexxRocha:
Ambient Display is not Working

Hello, I just tested the ROM, the performance is incredible, but AmbientDisplay is not working, I already activated it in the "SCREEN" and "Gestures" settings, but it still does not work, I did a clean installation with GApps Nano. Are there any settings that should be made? Or does it really not work?

Thank you very much for making ROM available. :)

---------- Post added at 02:08 PM ---------- Previous post was at 01:41 PM ----------

Sorry, I found the problem, the screen lock was like none. When activating the lock the Ambient Display is working perfectly.

Thank you. :D
[Moto G 2015 Android Development] MSe1969:
On the 1st (default) build, you can flash Gapps, if you like, see documentation in the OP. The 2nd "microG" build contains microG apps pre-installed, so not suitable to flash Gapps.
[Moto G 2015 Android Development] MSe1969:
The topic 'asb-2018.01' has been merged now into the cm-13.0 branch of LineageOS. People building from source can now sync w/o having to repopick the topic.
[Moto G 2015 Android Development] jemail:
Is there a discussion thread for lineageOS microg 14.1? I see downloads from the website given are at version 14.1. Is it possible possible to have substratum support for lineageOS microg 14.1? At the moment I can only run substratum in legacy mode and it causes bootloops.

Even without substratum support this is a very good ROM.
[Moto G 2015 Android Development] MSe1969:
New ROMs available for download

New ROMs our for download with February android security patches:

1. Standard Build:

https://www.androidfilehost.com/?fid=746010030569953235

2. microG-build:

https://www.androidfilehost.com/?fid=746010030569953236

Tomorrow, I'll update the OP and explain more about the builds etc.

Regards, M.
[Moto G 2015 Android Development] MSe1969:
Hi, thanks for the positive statement.

Let me try to answer your questions. I am not really familiar with substratum, but taking e.g. the thread here, it seems that a LineageOS build would require some patching to support substratum.

The "LineageOS for microG" project uses the original LineageOS sources to add the microG apps as prebuilt system apps and to apply the microG-patch, and then they create (and sign!) ROM images for the majority or even all supported LineageOS devices for download. This means, the official stuff from the website 'lineageos.microg.org' supports or does not support substratum exactly like the official LineageOS 14.1 builds (looking at your question and the referred thread, it means that they do not).

There are threads in XDA for microG, which also cover the "LineageOS for microG" website's content. Given the goal of this project to offer "original" LineageOS with microG-support, I seriously doubt that they would put additional patches into their build process (of course, I can't and I won't speak for them).

Regards, M.
[Moto G 2015 Android Development] MSe1969:
The OP has been updated and an own reserved post about the security hardening features has been created.

The topic 'asb-2018.02' has not yet been merged into the official 'cm-13.0' branch of LineageOS, people building from source need to 'repopick' the topic into their build tree (for instructions, please scroll up).
[Moto G 2015 Android Development] Apurba99:
For without MicroG version,can i flash Open Gapps?
[Moto G 2015 Android Development] MSe1969:
Yes, you can - see documentation in OP (arm, android 6 and flavor of your choice)
[Moto G 2015 Android Development] Apurba99:
Can you do something about the VOLTE support?
[Moto G 2015 Android Development] MSe1969:
Please scroll to page 2, first post. I have summarized there my (unsuccessful) attempts to get VoLTE running...
[Moto G 2015 Android Development] Apurba99:
If you can get the VOLTE support that will be a big thank you, because many Indians are on jio sim which uses VOLTE for calling.
[Moto G 2015 Android Development] MSe1969:
Updated builds

UPDATE:

February ASB has been merged in LineageOS 13.

A backport of skipped January patch CVE-2017-0846 has been implemented in addition.

Further, webview now on M64.

Default build

https://www.androidfilehost.com/?fid=746010030569955137

microG build

https://www.androidfilehost.com/?fid=890129502657584281
[Moto G 2015 Android Development] jemail:
I have clean installed this ROM and have noticed that on each reboot the time and date is set to 00:18 20th February 2018. It doesn't matter what time and date I subsequently set it will be changed to the above date on reboot.

Sorry, but I can't use this ROM as it messes with scheduled tasks when the time and date gets reset.
[Moto G 2015 Android Development] MSe1969:
Hi, thanks for bringing this up.

Yesterday, I have found the time to do a backup of my phone in TWRP, fully wipe it and play around with a clean-install.

I was eventually able to reproduce your issue, after switching off the default feature in the Settings to synchronize the time from the network carrier. The wrong system time, which is set after reboot, seems to be related to the build time stamp of the ROM, with an individual time zone offset (so "my" wrong date was Feb. 19th, which is the build date, and yours of Feb. 20 seems to simply have a time zone offset).

I assume the case has happened, when either there is no SIM inserted, the sync is switched off (my test condition) or the network carrier does not offer auto-time sync. That is also the reason, why this hasn't been noticed so far by anybody else: Carrier time-sync is on by default and most carriers support it. Nevertheless - The good news is, that I was able to fix this issue!

I will tonight upload new versions with the March ASB and a fix for this issue. Please note, that when flashing the fixed build under above mentioned conditions (only), the time will a very last time be screwed up on first boot (with the new build date), but after adjustment, it will properly work.

Regards, M.
[Moto G 2015 Android Development] MSe1969:
Updated builds

Hi,

new builds with March ASB incorporated are available:

March 2018 security string 2018-03-01; AOSP tag 6.0.1_r81

Renewed CA certificates from AOSP master branch (current certs were partly outdated)

Bugfix: Under certain (rare) conditions, date/time was reset after boot (see previous post)

Default build

https://www.androidfilehost.com/?fid=673956719939827734

microG build

https://androidfilehost.com/?fid=818070582850501143

Again, the March security fixed are not yet merged into the official LineageOS cm-13.0 branch.

In case things change, I will publish an update here - same as before.
[Moto G 2015 Android Development] MSe1969:
Question to the users of this ROM

Hi all,

my motivation to build this ROM - LineageOS 13.0 ("Marshmallow") for Osprey - was driven by the following factors:

1. Availability/Stability

When I started beginning of last year, LineageOS was being newly built and organized out of deprecated CyanogenMod. For several weeks in the beginning of 2017, there hadn't been any official builds ready to download and at the same time, the very first cm-14.1 builds weren't fully stable.

2. Use of 'Xprivacy'

Until Q4/2017, the Xposed framework was not available for Nougat. Even when it finally was available, the original Xprivacy did not run on it and its developer had announced he would not further develop it. Meanwhile however, a stable Xposed for Nougat is available and the developer of Xprivacy actively develops a successor app called 'Xprivacy LUA', which supports Android M and also N.

3. Support for microG

For a long time, the only way to use microG was either an Xposed module or to build a ROM with the patches incoprporated. Meanwhile, the microG project offers official" Lineage 14.1 downloads for every supported device with pre-installed microG.

4. Security hardening

Additional security features (see reserved post in OP).

Meanwhile, I use since about two weeks Lineage 14.1 on my device! I have brought my security enhanced microG build to LineageOS 14.1 and I use it with Xposed and Xprivacy LUA. I did not experience any issues and I use my device as daily driver. So, I personally do not really see a solid reason any longer to still stick to Marshmallow for the Osprey device.

My idea is to convert this thread to in future offer my hardened microG LineageOS 14.1 build here (ordinary 14.1 can be downloaded from lineageOS and "ordinary microG" build from the project page).

I would like to get your feedback on this idea and whether there are other strong reasons to still keep the LineageOS 13.0 build alive for the Osprey device. Appreciate any feedback.

Thanks & regards, M.
[Moto G 2015 Android Development] kurapika7:
You could include the HybridX kernel of the latest roms oreo, please.
[Moto G 2015 Android Development] jemail:
I would vote for Nougat version too as it runs smoothly on our Moto devices. I don't see much difference performance wise between Marshmallow and Nougat.

---------- Post added at 12:28 PM ---------- Previous post was at 11:43 AM ----------

Some more info regarding this situation. I had a problem with the first boot after a clean install. The setup process runs and forces the user to sign in via microg. There is no way to cancel this. The only option is to click back. This does not help in my situation and here's why. I use a password manager to create, manage and enter passwords. My Google account password is 30 random characters. There is no way I can remember this password without using the password manager.

So I cannot sign in using microg on first setup as I cannot start my password manager.

The solution is not to force the user to sign in using microg on first setup. Allow the phone to complete all other first setup tasks then allow the user to setup microg manually. At least provide a working skip option when the user is confronted with the microg sign in on first setup.

I think I had to use a magisk module that allows to skip the setup process so I could install my password manager and then sign in via microg.

I hope this makes sense.
[Moto G 2015 Android Development] MSe1969:
Thanks for your feedback [MENTION=4336485]rottenwheel[/MENTION]

I've uploaded my "cm-14.1 microG hardened" build to AFH, see here

Sec string 2018-03-05

AOSP Tag 7.1.2_r36

Squid kernel (oreo branch)

Security hardened as described in OP reserved post

With regards to your kernel questions:

Same as for 'cm-13.0', I am using the Squid kernel (Oreo branch) for my Nougat build, too. It simply works very good, is constantly maintained (as its developer now also is the official LineageOS device maintainer for the Osprey device) and I did not experience any issues. Please refer to the OP, where you find all source code links as well as link to my local manifest. My github repo cm13-microG also contains a 'cm-14.1-microG' branch.

I am not at all an expert in building kernels! Nevertheless, I can share the following information about this topic:

1. Linaro Cross-Compiler

To compile the squid kernel, you have to use the Linaro Cross compiler version 6.x. I have added a prebuilt to my repo and local_manifest. You need to specify the alternative tool chain for the build, see my build script

2. LineageOS GCC 4.9 toolchain issue

When I started building one year ago, I faced the issue that the LineageOS kernel simply did not boot! I overcame this by specifying the GCC 4.8 toolchain (instead of the default 4.9, which for sure wasn't ideal, but worked). I was at that time always using the LineageOS kernel from the cm-14.1 branch for my MM build. Haven't tested the default LineageOS GCC 4.9 since I switched to the squid kernel some months ago, so can't say whether this still is an issue or not. Nevertheless, if you would like to take the LineageOS moto msm8916 kernel, I recommend trying the Linaro GCC 5.x instead of the default tool chain.

3. Kernel modules

With ragards to WiFi - the msm8916 kernel needs the wifi module linked as external module (file name is 'wlan.ko')

The BoardConfigCommon.mk file in the LineageOS msm8916-common device tree contains the statement

WIFI_DRIVER_MODULE_PATH := "/system/lib/modules/wlan.ko"

I therefore assume the same for the other areas of concern mentioned by you. You need to ensure this being part of the kernel tree and build and as well included into your ROM. (As mentioned, I am not really the expert here, I am simply glad that it works for me, to be very honest)

Hope that helps.