[Android General] AlaskaLinuxUser:
Absolutely. It's just a matter of figuring out what is different. Editing anything that prevents building or booting, etc.... However as you change one tree to make it work, it *should* end up looking just like the other tree.

In Ubuntu, an easy tool to see the differences is in the terminal type:

$ sudo apt-get install diffuse

After that is done, right click on the board config file and open it with diffuse. Now on the right pane will be the file you opened. In the empty left pane, hit open and open the other board config file. Notice the red highlights will show the differences! :good:

A good way to save space and internet bandwidth and time is to do this:

$ repo init --depth=1 -u git://github.com/LineageOS/android.git -b lineage-16.0

$ repo sync -c

So you only download the 16.0 stuff, nothing else. You can choose any branch you want and just download that source.

But if you already downloaded one branch without depth=1, you have everything, sort of, and if you run repo init a second time with a different branch, you can simply repo sync and it will not download the entire source code again. It may look like it does, because it will reload any changes, etc.

I do say sort of have everything, because you have all the branches for each repository listed in your manifest.XML file. So, if you synced nougat, and decide to resync pie, then it doesn't always work, because if pie has a new repository, that didn't exist in nougat, your XML will not list it, so you will not sync it. E.g, it can get messy. So I recommend using depth=1 and repo sync -c instead. :good:

So here is what we know: lineage builds and works.

Crdroid does not.

But are both using the same device tree? Might be with checking to make sure there isn't some tidbit your tree is supposed to provide to make that work, but it really looks like a source problem on crdroids end. One thing to keep in mind:

You said, they would probably not leave it broken, but consider this:

Look at the crdroid manifest XML file. Does the download provider package come from aosp, lineage, or crdroids repos?

Notice in the XML, that some repos come from aosp, some from lineage, some from crdroid itself. Now, if they stopped maintaining nougat, then aosp or lineage may have changed some other repo that now changes the way things interface or work. Typically, you get around this by specifying a tag, rather than branch to ensure that you always get the same info.

For instance, you cannot build omni lollipop anymore, because a few git repos had the 5.1 and older branch deleted, and repo sync will fail. Which means trying to build old versions of twrp using minitwrp manifests also fail. (I found a work around for this, but that is another story for another time).

So, a test of crdroid would be to build for a known device, like shamu. It doesn't matter that you don't have one, the build error you get is while building. If you build shamu, one of the things will happen:

1. It will also fail on this package and you will know the source is jacked up.

2. It will build properly, and you will know your device specific files cause the error.

3. It will fail for some other reason and the test will be inconclusive.

That's my recommendation. :good:

Thanks, I live about 20 miles from north pole, and have been to Santa clause's house.... (Google north pole Alaska) even the McDonald's there has a candy cane m, and the cop cars are green and red.

But yes, we celebrate Christmas here! God bless to all of you! Merry Christmas everyone! I will be taking a short break, but will be back for the new year. In the mean time, enjoy the videos and good luck compiling, I look forward to hearing your great successes and questions at the turn of the year! :highfive: :victory: