[HOWTO] Build /e/

howto

#22

@rhunault Please update the initial post. The Gitlab buildguide no longer contains YahooWeatherProvider.


#23

Actually this page and the information on it will be a bit confusing as we make minor edits to the build settings on wiki . The advice for users would be to refer https://gitlab.e.foundation/e/wiki/en/wikis/build only for build settings as the wiki page will be the one getting updated.
Right @rhunault


#24

I agree. I think that maintain 2 places for the same documentation is not useful and confusing. Maybe I can replace the documentation in initial post by a link to the documentation?


#25

I have also edited my earlier posts on this page. The last thing we want is to confuse users by giving out wrong instructions.


#26

Sounds like a good idea.


#27

I’ve followed the build guide from scratch, including fresh install of docker. When I run the build command (sudo docker run…) I get the just the following three lines:

Set cache size limit to 50.0 GB
/root/build.sh: line 41: DEVICE_LIST_EELO-0.1: bad substitution
/root/build.sh: line 76: DEVICE_LIST_EELO-0.1: bad substitution

I’d appreciate any guidance to get around this, please.


#28

I am not sure, but this might be related to the renaming of the branches, that happened recently, for the upcoming V1 release.
@rhunault can you please update the build instructions with the new branch names?


#29

@Cymrodor As you may be aware we are going to release version 1 of /e/ in February. This required a change in the folder structure of the code base. @rhunault who is our tech lead is super busy with the work related to the structure changes at the moment. The wiki updates will be made once we have all the components in place. For now you can refer the details given below:

The new branch names are as under

  • v1-nougat instead of eelo-0.1
  • v1-oreo instead of eelo-0.2

#30

Sure, done now. Also, please run docker pull registry.gitlab.e.foundation:5000/e/os/docker-lineage-cicd:latest to be able to build /e/ with new branch name. :slightly_smiling_face:


#31

Please keep me informed if something goes wrong.


#32

The new branch names worked. Many thanks for updating them.

However, something is preventing a successful build for i9300 (Samsung S3):
(Probably not an issue, but notice the unusual double space in the first line.)

>> [Fri Jan 25 20:07:13 UTC 2019] Branch:  v1-oreo
>> [Fri Jan 25 20:07:13 UTC 2019] Devices: i9300,
>> [Fri Jan 25 20:07:13 UTC 2019] (Re)initializing branch repository
>> [Fri Jan 25 20:07:14 UTC 2019] Copying '/srv/local_manifests/*.xml' to '.repo/local_manifests/'
>> [Fri Jan 25 20:07:14 UTC 2019] Use branch lineage-15.1 on github.com/TheMuppets
>> [Fri Jan 25 20:07:15 UTC 2019] Syncing branch repository
>> [Sat Jan 26 01:38:23 UTC 2019] Applying the restricted signature spoofing patch (based on android_frameworks_base-O.patch) to frameworks/base
>> [Sat Jan 26 01:38:23 UTC 2019] Setting "UNOFFICIAL" as release type
>> [Sat Jan 26 01:38:23 UTC 2019] Adding OTA URL overlay (for custom URL https://ota.ecloud.global/api)
>> [Sat Jan 26 01:38:23 UTC 2019] Adding custom packages ('MuPDF Notes Tasks GmsCore GsfProxy FakeStore Telegram Signal AnySoftKeyboard Mail BlissLauncher BlissIconPack MozillaNlpBackend OpenWeatherMapWeatherProvider AccountManager MagicEarth OpenCamera eDrive Weather NominatimNlpBackend Light')
>> [Sat Jan 26 01:38:23 UTC 2019] Using OpenJDK 8
>> [Sat Jan 26 01:38:24 UTC 2019] Preparing build environment
>> [Sat Jan 26 01:38:25 UTC 2019] Syncing branch repository
>> [Sat Jan 26 01:40:56 UTC 2019] Starting build for i9300, v1-oreo branch
>> [Sat Jan 26 01:40:58 UTC 2019] Failed build for i9300
>> [Sat Jan 26 01:40:58 UTC 2019] Finishing build for i9300
>> [Sat Jan 26 01:40:58 UTC 2019] Cleaning source dir for device i9300

It seems device-specific as I’m also trying to build for mako (Nexus 4) and that reached

[Sat Jan 26 08:09:44 UTC 2019] Starting build for mako, v1-oreo branch

and appears to still be building over three hours later.


#33

My mako (Nexus 4) build was interrupted by a power loss the first time so I had to try the build again this afternoon, but it failed:

$ sudo docker run -v “/srv/e/src:/srv/src:delegated” -v “/srv/e/zips:/srv/zips:delegated” -v “/srv/e/logs:/srv/logs:delegated” -v “/srv/e/ccache:/srv/ccache:delegated” -e “BRANCH_NAME=v1-oreo” -e “DEVICE_LIST=mako” -e “CUSTOM_PACKAGES=‘MuPDF Notes Tasks GmsCore GsfProxy FakeStore Telegram Signal AnySoftKeyboard Mail BlissLauncher BlissIconPack MozillaNlpBackend OpenWeatherMapWeatherProvider AccountManager MagicEarth OpenCamera eDrive Weather NominatimNlpBackend Light’” -e “SIGNATURE_SPOOFING=restricted” -e “OTA_URL=https://ota.ecloud.global/api” -e “REPO=https://gitlab.e.foundation/e/os/android.git” registry.gitlab.e.foundation:5000/e/os/docker-lineage-cicd:latest
Set cache size limit to 50.0 GB
[Sat Jan 26 15:08:44 UTC 2019] Branch: v1-oreo
[Sat Jan 26 15:08:44 UTC 2019] Devices: mako,
[Sat Jan 26 15:08:46 UTC 2019] (Re)initializing branch repository
[Sat Jan 26 15:08:47 UTC 2019] Copying ‘/srv/local_manifests/*.xml’ to ‘.repo/local_manifests/’
[Sat Jan 26 15:08:47 UTC 2019] Use branch lineage-15.1 on github.com/TheMuppets
[Sat Jan 26 15:08:47 UTC 2019] Syncing branch repository
[Sat Jan 26 15:11:42 UTC 2019] Applying the restricted signature spoofing patch (based on android_frameworks_base-O.patch) to frameworks/base
[Sat Jan 26 15:11:42 UTC 2019] Setting “UNOFFICIAL” as release type
[Sat Jan 26 15:11:42 UTC 2019] Adding OTA URL overlay (for custom URL https://ota.ecloud.global/api)
[Sat Jan 26 15:11:42 UTC 2019] Adding custom packages (‘MuPDF Notes Tasks GmsCore GsfProxy FakeStore Telegram Signal AnySoftKeyboard Mail BlissLauncher BlissIconPack MozillaNlpBackend OpenWeatherMapWeatherProvider AccountManager MagicEarth OpenCamera eDrive Weather NominatimNlpBackend Light’)
[Sat Jan 26 15:11:42 UTC 2019] Using OpenJDK 8
[Sat Jan 26 15:11:43 UTC 2019] Preparing build environment
[Sat Jan 26 15:11:44 UTC 2019] Starting build for mako, v1-oreo branch
[Sat Jan 26 16:40:22 UTC 2019] Failed build for mako
[Sat Jan 26 16:40:22 UTC 2019] Finishing build for mako
[Sat Jan 26 16:40:22 UTC 2019] Cleaning source dir for device mako


#34

Please can you share both the log files from the build. There should be two in the log folder. One repo… and another inside the folder with the device name.


#35

The mako build log has over 200k lines, so I’ve just put the last few lines below. The repo log has over 20k lines. What would be the best way to share such log files?

The i9300 build only lasted a couple of seconds, so here’s the log for that:

[Sat Jan 26 01:40:56 UTC 2019] Starting build for i9300, v1-oreo branch
including vendor/lineage/vendorsetup.sh
build/core/product_config.mk:238: *** Can not locate config makefile for product “lineage_i9300”. Stop.
Device i9300 not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Found repository: android_device_samsung_i9300
Default revision: lineage-15.1
Checking branch info
Default revision lineage-15.1 not found in android_device_samsung_i9300. Bailing.
Branches found:
cm-10.1
cm-10.2
cm-11.0
cm-13.0
cm-14.0
cm-14.1
ics
jellybean-stable
jellybean
mr1-staging
stable/cm-11.0-XNG3C
stable/cm-11.0
stable/cm-13.0-ZNH5Y
cm-10.2.0
cm-10.2-M1
cm-10.1.3
cm-10.1.3-RC2
cm-10.1.3-RC1
Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.
build/core/product_config.mk:238: *** Can not locate config makefile for product “lineage_i9300”. Stop.
build/core/product_config.mk:238: *** Can not locate config makefile for product “lineage_i9300”. Stop.
** Don’t have a product spec for: ‘lineage_i9300’
** Do you have the right repo manifest?
No such item in brunch menu. Try ‘breakfast’

[Sat Jan 26 01:40:58 UTC 2019] Failed build for i9300
[Sat Jan 26 01:40:58 UTC 2019] Finishing build for i9300
[Sat Jan 26 01:40:58 UTC 2019] Cleaning source dir for device i9300
01:41:00 Entire build directory removed.

build completed successfully (2 seconds)

And here’s the end of the mako log file:

[ 99% 74386/74389] build /srv/src/OREO/out/target/product/mako/system/etc/NOTICE.html.gz
[ 99% 74387/74389] Package target files: /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip
FAILED: /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip
/bin/bash -c "(rm -rf /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip.list /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 ) && (mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/ /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 ) && (mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY ) && (if [ -d “/srv/src/OREO/out/target/product/mako/recovery/root” -a “$(ls -A /srv/src/OREO/out/target/product/mako/recovery/root)” ]; then mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/RAMDISK && prebuilts/build-tools/linux-x86/bin/acp -rd /srv/src/OREO/out/target/product/mako/recovery/root/* /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/RAMDISK; fi ) && (if [ -d “/srv/src/OREO/out/target/product/mako/install” -a “$(ls -A /srv/src/OREO/out/target/product/mako/install)” ]; then mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/INSTALL && prebuilts/build-tools/linux-x86/bin/acp -rd /srv/src/OREO/out/target/product/mako/install/* /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/INSTALL; fi ) && (cp /srv/src/OREO/out/target/product/mako/kernel /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/kernel ) && (echo “console=ttyHSL0,115200,n8 androidboot.hardware=mako lpj=67677 user_debug=31 vmalloc=340M buildvariant=userdebug” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/cmdline ) && (echo “0x80200000” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/base ) && (echo “2048” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/pagesize ) && (mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT ) && (if [ -d “/srv/src/OREO/out/target/product/mako/root” -a “$(ls -A /srv/src/OREO/out/target/product/mako/root)” ]; then mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/RAMDISK && prebuilts/build-tools/linux-x86/bin/acp -rd /srv/src/OREO/out/target/product/mako/root/* /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/RAMDISK; fi ) && (cp /srv/src/OREO/out/target/product/mako/kernel /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/kernel ) && (echo “console=ttyHSL0,115200,n8 androidboot.hardware=mako lpj=67677 user_debug=31 vmalloc=340M buildvariant=userdebug” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/cmdline ) && (echo “0x80200000” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/base ) && (echo “2048” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/pagesize ) && (if [ -d “/srv/src/OREO/out/target/product/mako/system” -a “$(ls -A /srv/src/OREO/out/target/product/mako/system)” ]; then mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/SYSTEM && prebuilts/build-tools/linux-x86/bin/acp -rd /srv/src/OREO/out/target/product/mako/system/* /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/SYSTEM; fi ) && (if [ -d “/srv/src/OREO/out/target/product/mako/data” -a “$(ls -A /srv/src/OREO/out/target/product/mako/data)” ]; then mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/DATA && prebuilts/build-tools/linux-x86/bin/acp -rd /srv/src/OREO/out/target/product/mako/data/* /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/DATA; fi ) && (mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/OTA ) && (cp /srv/src/OREO/out/target/product/mako/android-info.txt /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/OTA/ ) && (mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/OTA/bin ) && (cp /srv/src/OREO/out/target/product/mako/obj/EXECUTABLES/updater_intermediates/updater /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/OTA/bin/ ) && (mkdir -p /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META ) && (cp /srv/src/OREO/out/target/product/mako/obj/PACKAGING/apkcerts_intermediates/lineage_mako-apkcerts-a8e7570703.txt /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/apkcerts.txt ) && (echo “” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/otakeys.txt ) && (cp /srv/src/OREO/out/target/product/mako/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/file_contexts.bin ) && (echo “recovery_api_version=3” > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “fstab_version=2” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo "blocksize=131072 " >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo "boot_size=23068672 " >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “recovery_as_boot=” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo "recovery_size=23068672 " >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “recovery_mount_options=ext4=max_batch_time=0,commit=1,data=ordered,barrier=1,errors=panic,nodelalloc” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “tool_extensions=device/lge/mako/…/common” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “default_system_dev_certificate=build/target/product/security/testkey” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “extra_recovery_keys=vendor/lineage/build/target/product/security/lineage” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo ‘mkbootimg_args=–ramdisk_offset 0x01600000’ >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo ‘mkbootimg_version_args=–os_version 8.1.0 --os_patch_level 2019-01-05’ >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “use_set_metadata=1” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “multistage_support=1” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “blockimgdiff_versions=3,4” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “ext_mkuserimg=mkuserimg.sh” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “fs_type=ext4” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo "system_size=880803840 " >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “system_journal_size=0” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo "userdata_size=6189744128 " >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “cache_fs_type=ext4” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “cache_size=738197504 " >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “extfs_sparse_flag=-s” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “squashfs_sparse_flag=-s” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (echo “selinux_fc=/srv/src/OREO/out/target/product/mako/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (PATH=/srv/src/OREO/out/host/linux-x86/bin/:$PATH MKBOOTIMG=/srv/src/OREO/out/host/linux-x86/bin/mkbootimg ./build/tools/releasetools/make_recovery_patch /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 ) && (echo “ota_override_device=auto” >> /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/misc_info.txt ) && (vendor/lineage/build/tools/getb64key.py build/target/product/security/testkey.x509.pem > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/releasekey.txt ) && ((cd /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/SYSTEM; find . -type d | sed ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort | sed ‘s,^,system/,’ | /srv/src/OREO/out/host/linux-x86/bin/fs_config -C -D /srv/src/OREO/out/target/product/mako/system -S /srv/src/OREO/out/target/product/mako/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/filesystem_config.txt ) && ((cd /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/RAMDISK; find . -type d | sed ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort | sed ‘s,^,’ | /srv/src/OREO/out/host/linux-x86/bin/fs_config -C -D /srv/src/OREO/out/target/product/mako/system -S /srv/src/OREO/out/target/product/mako/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/boot_filesystem_config.txt ) && ((cd /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/RAMDISK; find . -type d | sed ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort | sed ‘s,^,’ | /srv/src/OREO/out/host/linux-x86/bin/fs_config -C -D /srv/src/OREO/out/target/product/mako/system -S /srv/src/OREO/out/target/product/mako/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin > /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/recovery_filesystem_config.txt ) && (PATH=/srv/src/OREO/out/host/linux-x86/bin/:$PATH MKBOOTIMG=/srv/src/OREO/out/host/linux-x86/bin/mkbootimg ./build/tools/releasetools/add_img_to_target_files -a -v -p /srv/src/OREO/out/host/linux-x86 /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 ) && (find /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META | sort >/srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip.list ) && (find /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 -path /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META -prune -o -print | sort >>/srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip.list ) && (/srv/src/OREO/out/soong/host/linux-x86/bin/soong_zip -d -o /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip -C /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703 -l /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703.zip.list )”
building image from target_files RECOVERY…
building image from target_files BOOT…
putting script in bin/install-recovery.sh

++++ boot ++++

building image from target_files BOOT…
running: mkbootfs -f /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/boot_filesystem_config.txt /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/RAMDISK
running: minigzip
running: /srv/src/OREO/out/host/linux-x86/bin/mkbootimg --kernel /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/BOOT/kernel --cmdline console=ttyHSL0,115200,n8 androidboot.hardware=mako lpj=67677 user_debug=31 vmalloc=340M buildvariant=userdebug --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x01600000 --os_version 8.1.0 --os_patch_level 2019-01-05 --ramdisk /tmp/tmpDii9EC --output /tmp/tmpnsNNcm

++++ recovery ++++

building image from target_files RECOVERY…
running: mkbootfs -f /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/recovery_filesystem_config.txt /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/RAMDISK
running: minigzip
running: /srv/src/OREO/out/host/linux-x86/bin/mkbootimg --kernel /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/kernel --cmdline console=ttyHSL0,115200,n8 androidboot.hardware=mako lpj=67677 user_debug=31 vmalloc=340M buildvariant=userdebug --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x01600000 --os_version 8.1.0 --os_patch_level 2019-01-05 --ramdisk /tmp/tmpEX9xHk --output /tmp/tmpIUf8QN

++++ recovery (two-step image) ++++

building image from target_files RECOVERY…
running: mkbootfs -f /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/recovery_filesystem_config.txt /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/RAMDISK
running: minigzip
running: /srv/src/OREO/out/host/linux-x86/bin/mkbootimg --kernel /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/RECOVERY/kernel --cmdline console=ttyHSL0,115200,n8 androidboot.hardware=mako lpj=67677 user_debug=31 vmalloc=340M buildvariant=userdebug --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x01600000 --os_version 8.1.0 --os_patch_level 2019-01-05 --ramdisk /tmp/tmpFixG8f --output /tmp/tmpaNLOqB

++++ system ++++

creating system.img…
Running: mkuserimg.sh -s /tmp/tmpGfP9EJ/system /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/IMAGES/system.img ext4 system 880803840 -j 0 -T 1230768000 -C /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/filesystem_config.txt -B /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/IMAGES/system.map -L system /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/file_contexts.bin
make_ext4fs -s -T 1230768000 -S /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/file_contexts.bin -C /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/META/filesystem_config.txt -B /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/IMAGES/system.map -L system -l 880803840 -J -a system /srv/src/OREO/out/target/product/mako/obj/PACKAGING/target_files_intermediates/lineage_mako-target_files-a8e7570703/IMAGES/system.img /tmp/tmpGfP9EJ/system
error: ext4_allocate_best_fit_partial: failed to allocate 3 blocks, out of space?
loaded 2575 fs_config entries
Creating filesystem with parameters:
Size: 880803840
Block size: 4096
Blocks per group: 32768
Inodes per group: 7680
Inode size: 256
Journal blocks: 0
Label: system
Blocks: 215040
Block groups: 7
Reserved block group size: 55
Traceback (most recent call last):
File “./build/tools/releasetools/add_img_to_target_files”, line 797, in
main(sys.argv[1:])
File “./build/tools/releasetools/add_img_to_target_files”, line 791, in main
AddImagesToTargetFiles(args[0])
File “./build/tools/releasetools/add_img_to_target_files”, line 631, in AddImagesToTargetFiles
output_zip, recovery_img=recovery_image, boot_img=boot_image)
File “./build/tools/releasetools/add_img_to_target_files”, line 145, in AddSystem
block_list=block_list)
File “./build/tools/releasetools/add_img_to_target_files”, line 277, in CreateImage
assert succ, "build " + what + “.img image failed”
AssertionError: build system.img image failed
ninja: build stopped: subcommand failed.
16:40:21 ninja failed with: exit status 1

failed to build some targets (01:28:25 (hh:mm:ss))

[Sat Jan 26 16:40:22 UTC 2019] Failed build for mako
[Sat Jan 26 16:40:22 UTC 2019] Finishing build for mako
[Sat Jan 26 16:40:22 UTC 2019] Cleaning source dir for device mako
16:40:34 Entire build directory removed.

build completed successfully (12 seconds)


#36

@Cymrodor I got a similar log error at the end of the build process. Around at 99% . Running the build again to be sure there was no issue at my end.
Looping @rhunault on the thread


#37

@Cymrodor have you tried building the ROM using the non docker method? Using
repo init -u https://gitlab.e.foundation/e/os/android.git -b v1-oreo
and then further commands as given here https://wiki.lineageos.org/devices/mako/build
I got the same error at 99% on docker running the standard build so out of curiosity trying to check if non docker build throws any errors at that point. Only issue is I do not have a mako device so the
./extract-files.sh
part would not work for me. Lets see
Any way will share the failed docker logs files from my build with @rhunault to check what the issue is.


#38

Hi @Cymrodor,

It seems you are trying to build i9300 for oreo, but this device is only available with nougat at the moment.
Could you please try again with v1-nougat branch?

Romain


#39

I tried the Lineageos wiki for leeco s2 but got some errors. Then i decided to type the commands in my repo Docker created. Then the build completed. This is what i typed:

(in /srv/e/OREO/src)
repo sync
source build/envsetup.sh
breakfast s2
ccache -M 50G
export USE_CCACHE=1
croot
brunch s2

The build completed and the ROM works fine. What would be the prefered way to build?


#40

@andrelam to be honest which ever way works for you is fine. Finally all that matter is the ROM and its components like microg and the various apps should work. From your comments I am assuming it is working fine.
Docker is recommended because it automates the whole process of inputting commands at various steps. With the updates happening to the source to prepare it for v1 the docker build seems to be running into issues. I got some errors today morning while running a build for tissot. Yesterday it worked perfectly!! Trying out the repo way of building now.


#41

Ok, i can’t build using docker at the moment, it fails at the end. The “Lineageos” method worked, but i messed the repo up (yesterday i did flash the ROM, and it worked perfect).