[SOLVED] Docker build problems - can anyone help?

I’m trying to get my local machine setup to build. I want to use Docker. I know the e docker image isn’t currently working so for now I am using the ‘Lineage OS for Microg’ docker image from https://github.com/lineageos4microg/docker-lineage-cicd

I have a local manifest with the following content

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
  <project name="The-Muppets/proprietary_vendor_sony" path="vendor/sony" remote="github"  revision="lineage-17.1">
</manifest>

which should pickup the manifests from https://github.com/TheMuppets/manifests/tree/lineage-17.1

When I try to build I get the following error during the ‘repo sync’ stage
fatal: could not read Username for 'https://github.com': No such device or address

Any clues what the problem could be? (I have used DuckDuckGo but not had found anything useful and I’m at a bit of a dead end)

it seems that Github is nowhere a remote defined.

I tried putting a git fetch line in the manifest, but it gave an error saying something like ‘a git remote with that name is already defined’

normally it’s defined in .repo/manifests/default.xml

it’s OK I understood the German :slight_smile:
That file has

<remote  name="github"
           fetch="ssh://git@github.com" />
           remote="github"`

I wonder if I need to generate some keys on my machine and add them to my github account. Not sure why I need to do that as I’m not trying to push anything - I just need to clone the repo

better change to
fetch="https://github.com

No,that wasn’t it. What it actually says is

<remote  name="github"
           fetch=".."
           review="review.lineageos.org" />

which looks correct

Your problem reminds me of some building sessions where GitHub was asking me for a user/pass (never searched why).
So your “No such device or address” may be related to the lack of terminal pseudo-device in Docker instance.

Try to add a “-i” to the options ?
Reference : https://docs.docker.com/engine/reference/commandline/run/

Thanks. I tried that but it made no difference :frowning:
However, I cleaned up the .repo/local_manifests directory, deleted my manifest which specified the ‘Muppets’ the and set "INCLUDE_PROPRIETARY=true", and the sync has got past the point where it was previously falling over.
Moral: always tidy up your mess before you start again!
I’ll go to sleep now and check in the morning when the repo sync finishes :slight_smile:

Solved: The answer is that you get this error message when there are typos / stupid mistakes in your manifest.
The corrected line is
<project name="TheMuppets/proprietary_vendor_sony" path="vendor/sony" remote="github" revision="lineage-17.1">
removing the - character in The-Muppets

Moral #2: If something isn’t working and you’re tired and/or annoyed because you can’t see why, go do something else (run, sleep, golf), and come back to it with fresh eyes later :slight_smile:

Thanks again for your help

4 Likes

:+1: :rofl: :+1:
good advice

1 Like

Ooooooooch! The build was running fine but slowly. After 17.5 hours it reached 97%, then died because out of disk space :frowning:

I think this machine (MacBook Pro (13-inch, Early 2011), Intel Core i5 2.3 GHz, 16GB memory) isn’t up to building Android ROMs. Back to cloud computing for me!

I reached 99% of an Android 10 build (due to the lack of RAM) on a at least 10 years old laptop with only 6 Go of RAM (and 6 Go of swap), a poorer CPU and less than 250 Go of storage.
It should be achievable with yours.

It was already failing 2 times out of 3 while building for Pie, looks like Android 10 needs too much resources for my laptop.

So it’s not disk space: I freed up some space and re-ran the build: it got to the same point and failed again. The interesting bits of the log:

[ 97% 111042/113405] //frameworks/base:test-api-stubs-docs Metalava [common]
FAILED: out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/test-api-stubs-docs-stubs.srcjar out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/test-api-stubs-docs_api.txt out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/test-api-stubs-docs_removed.txt out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/test-api-stubs-docs_annotations.zip out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/api-versions.xml
rm -rf "out/soong/.intermediates/frameworks/base/test-api-stubs-docs/android_common/out" 
...
<snip> a long list of filenames being removed
...
Killed
[ 97% 111043/113405] //frameworks/base:hiddenapi-lists-docs Metalava [common]
[ 97% 111044/113405] //frameworks/base:api-stubs-docs Metalava [common]
[ 97% 111045/113405] //frameworks/base:system-api-stubs-docs Metalava [common]
ninja: build stopped: subcommand failed.
19:58:41 ninja failed with: exit status 1

#### failed to build some targets (04:47:19 (hh:mm:ss)) ####

Full error details at https://pastebin.com/8cQb7qWb

So I’ll leave this build for now, and tomorrow I’ll have a try at building a Q /e/ ROM without Docker