androidgitrepolineageos

Porting LineageOs device from Cm-14.1 to Lineage-16.0


I am trying to contribute to lineageos for Sumire device. I have already successfully build CM-14.1 and install it on my device.

Now I want to port it for lineage-16.0, the problem is the documentation I have found so far is very scarce.

This is what I know up until now:

In Lineage IRC someone told me:

  1. Fork the cm-14.1 branch to lineage-16.0, change the required config files, and build in a 16.0 build env.

So, I have forked the repo for my device. Now, I suppose I have to create a new branch from cm-14.1 and call it Lineage-16.0 and start building and beging fixing errors.

The problem is, How am I suppose to configure repo to pull https://github.com/elbaulp/android_device_sony_sumire instead of https://github.com/LineageOS/android_device_sony_sumire when building?

Am I supposed to change this line in the Manifest

lineage/mirror/default.xml:  <project name="LineageOS/android_device_sony_sumire" />

by

lineage/mirror/default.xml:  <project name="elbaulp/android_device_sony_sumire" />

Resources:

https://msystechnologies.com/porting-custom-rom-to-android-device/


Solution

  • After a few days of searching, I have found the way to continue.

    This guide its a backup of the old CyanogenMod documentation, it seems that Cyanogen was better documented than LineageOs:

    How To Port CyanogenMod/LineageOS Android To Your Own Device

    In order to tell repo it has to pull my github project instead of the official one, a new local_manifest has to be added to .repo/local_manifests/my_manifest.xml, in this case, I have call it sumire.xml, here are its contents:

    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
      <remove-project name="lineageos/device_sony_sumire" path="device/sony/sumire" remote="github" />
      <project name="elbaulp/device_sony_sumire" path="device/sony/sumire" remote="github"  />
    </manifest>
    

    After that, repo sync has to be executed.

    Hope it can help others.