Looking for some BUILDERS to teach / guide me

antec@antec-p6-2038fr:~$ locale
LANG=fr_FR.UTF-8
LANGUAGE=
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=

[100% 49266/49266] build bacon
Package Complete: out/target/product/gts4lv/e-1.15-r-20230912-UNOFFICIAL-gts4lv.zip

#### build completed successfully (02:24:52 (hh:mm:ss)) ####
1 Like

preparing my next first build for an /e/ dropped samsung device (see my first post),

i have some questions :

how to exclude microG from a build ?
how to set “minimal apps”

… lets roll … with serranoltexx !

starting from scratch deleted all sources that was previously under ~/android/e/gts4lv/ it was confusing, now under ~/android/e/R/ more clear…
.
created ~/android/e/R/.repo/local_manifests/serranoltexx.xml
.
repo init
.
fisrt, i forgot to copy the unofficial sources (as recommanded by ronnz98 in his guide), BUT because i had prepared a local_manifest (as advised by my neighbor smu44), they should have been auto-populated during repo sync and during breakfast (if i well understood the output)

then, some devices covered by the device codename still have 17.1 LOS branch, so i deleted them from the local_manifests and redo repo sync
.
nmon : network Peak->Recv : 115102.5 KB/s

second `repo sync` output conclusion

Encountered 1 file that should have been a pointer, but wasn’t:
AdvancedPrivacy/Advanced_Privacy-1.15.0-e-release.apk
Mise à jour des fichiers: 100% (4867/4867), fait.
Mise à jour des fichiers: 100% (3210/3210), fait.
Checking out: 94% (821/871) LineageOS/android_prebuilts_gcc_linux-x86_x86_x86_64-linux-android-4.9Mise à jour des fichiers: 96% (42102/4Mise à jour des fichiers: 100% (43442/43442), fait.inux-x86Mise à jour des fichiers: 97% (42390/43442)
Mise à jour des fichiers: 100% (44081/44081), fait.on/linux-x86/2.7.5Mise à jour des fichiers: 0% (29/44081)
Checking out: 100% (871/871), done in 29m38.783s
repo sync has finished successfully.

repo forall -c 'git lfs pull' with the good '

first `breakfast serranoltexx` output

antec@antec-p6-2038fr:~/android/e/R$ breakfast serranoltexx
In file included from build/make/core/config.mk:291:
In file included from build/make/core/envsetup.mk:266:
device/samsung/msm8930-common/msm8930.mk:173: error: _nic.PRODUCTS.[[device/samsung/serranoltexx/lineage_serranoltexx.mk]]: “device/samsung/qcom-common/qcom-common.mk” does not exist.
04:13:55 dumpvars failed with: exit status 1
Device serranoltexx not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Found repository: android_device_samsung_serranoltexx
Default revision: lineage-18.1
Checking branch info
Checking if device/samsung/serranoltexx is fetched from android_device_samsung_serranoltexx
LineageOS/android_device_samsung_serranoltexx already fetched to device/samsung/serranoltexx
Syncing repository to retrieve project.
Fetching: 100% (1/1), done in 0.316s
warning: Partial syncs are not supported. For the best experience, sync the entire tree.
repo sync has finished successfully.
Repository synced!
Looking for dependencies in device/samsung/serranoltexx
Looking for dependencies in device/samsung/serrano-common
Adding dependencies to manifest
Checking if device/samsung/qcom-common is fetched from android_device_samsung_qcom-common
Adding dependency: LineageOS/android_device_samsung_qcom-common → device/samsung/qcom-common
Using default branch for android_device_samsung_qcom-common
Syncing dependencies
Fetching: 100% (2/2), done in 1.231s
warning: Partial syncs are not supported. For the best experience, sync the entire tree.
repo sync has finished successfully.
Looking for dependencies in device/samsung/qcom-common
Looking for dependencies in hardware/samsung
hardware/samsung has no additional dependencies.
Looking for dependencies in device/samsung/msm8930-common
device/samsung/msm8930-common has no additional dependencies.
Looking for dependencies in kernel/samsung/msm8930-common
kernel/samsung/msm8930-common has no additional dependencies.
Done

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=11
LINEAGE_VERSION=1.15""-r-20230913-UNOFFICIAL-serranoltexx
TARGET_PRODUCT=lineage_serranoltexx
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=generic
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.15.0-83-generic-x86_64-Ubuntu-20.04.6-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=RQ3A.211001.001
OUT_DIR=out
PRODUCT_SOONG_NAMESPACES=vendor/samsung/serrano-common device/samsung/serrano-common vendor/samsung/serranoltexx hardware/qcom-caf/msm8960 vendor/qcom/opensource/data-ipa-cfg-mgr vendor/qcom/opensource/dataservices packages/apps/Bluetooth

.

second `breakfast serrano` output

antec@antec-p6-2038fr:~/android/e/R$ breakfast serranoltexx
Looking for dependencies in device/samsung/serranoltexx
Looking for dependencies in device/samsung/serrano-common
Looking for dependencies in device/samsung/qcom-common
Looking for dependencies in hardware/samsung
hardware/samsung has no additional dependencies.
Looking for dependencies in device/samsung/msm8930-common
device/samsung/msm8930-common has no additional dependencies.
Looking for dependencies in kernel/samsung/msm8930-common
kernel/samsung/msm8930-common has no additional dependencies.

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=11
LINEAGE_VERSION=1.15""-r-20230913-UNOFFICIAL-serranoltexx
TARGET_PRODUCT=lineage_serranoltexx
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=generic
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.15.0-83-generic-x86_64-Ubuntu-20.04.6-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=RQ3A.211001.001
OUT_DIR=out
PRODUCT_SOONG_NAMESPACES=vendor/samsung/serrano-common device/samsung/serrano-common vendor/samsung/serranoltexx hardware/qcom-caf/msm8960 vendor/qcom/opensource/data-ipa-cfg-mgr vendor/qcom/opensource/dataservices packages/apps/Bluetooth

.

brunch serranoltexx … (out of system space is expected on this device 8Gb ROM)

`brunch serranoltexx` output

[ 98% 74607/75815] //packages/apps/PermissionController:PermissionController kotlinc [apex30]
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/data/BroadcastReceiverLiveData.kt:63:32: warning: unnecessary safe call on a non-null
receiver of type ResolveInfo!
resolveInfo?.activityInfo?.packageName
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/data/LightPermInfoLiveData.kt:50:34: warning: the corresponding parameter in the supe
rtype ‘PackageBroadcastListener’ is named ‘packageName’. This may cause problems when calling this function with named arguments.
override fun onPackageUpdate(ignored: String) {
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/data/ServiceLiveData.kt:63:32: warning: unnecessary safe call on a non-null receiver
of type ResolveInfo!
resolveInfo?.serviceInfo?.packageName
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/service/AutoRevokePermissions.kt:202:13: warning: variable ‘firstBootTime’ is never u
sed
val firstBootTime = context.firstBootTime
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/service/AutoRevokePermissions.kt:348:27: warning: there is more than one label with s
uch a name in this scope
return@forEachInParallel
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/service/AutoRevokePermissions.kt:354:34: warning: there is more than one label with s
uch a name in this scope
?: return@forEachInParallel
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/service/AutoRevokePermissions.kt:369:31: warning: there is more than one label with s
uch a name in this scope
return@forEachInParallel
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/service/RuntimePermissionsUpgradeController.kt:73:34: warning: unnecessary non-null a
ssertion (!!) on a non-null receiver of type PermissionManager
permissionManager!!.runtimePermissionsVersion = LATEST_VERSION
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/handheld/AutoRevokeFragment.kt:121:15: warning: unnecessary non-null assertion (!!
) on a non-null receiver of type ActionBar
ab!!.setElevation(ELEVATION_HIGH)
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/model/AppPermissionGroupsViewModel.kt:186:88: warning: unnecessary safe call on a
non-null receiver of type LightPackageInfo
val uid = LightPackageInfoLiveData[packageName, user].getInitializedValue()?.uid
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/model/AppPermissionGroupsViewModel.kt:188:17: warning: condition ‘uid != null’ is
always ‘true’
if (uid != null) {
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/model/AppPermissionViewModel.kt:302:25: warning: name shadowed: detailId
val detailId = getDetailResIdForFixedByPolicyPermissionGroup(group,
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/model/AppPermissionViewModel.kt:732:9: warning: ‘when’ expression on enum is recom
mended to be exhaustive, add ‘NONE’ branch or ‘else’ branch instead
when (type) {
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/model/AutoRevokeViewModel.kt:152:21: warning: variable ‘canOpen’ is never used
val canOpen = Utils.getUserContext(app, user).packageManager
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/ui/model/AutoRevokeViewModel.kt:181:45: warning: ‘ACTION_UNINSTALL_PACKAGE: String’ i
s deprecated. Deprecated in Java
val uninstallIntent = Intent(Intent.ACTION_UNINSTALL_PACKAGE, packageUri)
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/utils/AndroidUtils.kt:69:33: warning: name shadowed: mask
val value = flags.fold(0, { mask, (flag, flagValue) → if (flagValue) mask or flag else mask })
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/utils/KotlinUtils.kt:282:5: warning: ‘@JvmOverloads’ annotation has no effect for met
hods without default arguments
@JvmOverloads
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/utils/KotlinUtils.kt:850:13: warning: condition ‘resolveInfos == null’ is always ‘fal
se’
if (resolveInfos == null || resolveInfos.size <= 0) {
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/utils/KotlinUtils.kt:857:16: warning: condition ‘resolveInfos != null’ is always ‘tru
e’
return resolveInfos != null && resolveInfos.size > 0
^
packages/apps/PermissionController/src/com/android/permissioncontroller/permission/utils/KotlinUtils.kt:869:15: warning: unchecked cast: T? to T
value as T
^
[ 98% 74629/75815] //packages/services/Telephony:TeleService r8
Warning: Library class com.android.internal.telephony.euicc.EuiccConnector extends program class com.android.internal.telephony.StateMachine
[ 98% 74833/75815] //frameworks/base/packages/SystemUI:SystemUI r8
Invalid descriptor (deserialized from Kotlin @Metadata): (LLandroid/animation/Animator;;)L;
Invalid descriptor (deserialized from Kotlin @Metadata): (LLandroid/animation/Animator;;)L;
[ 98% 74879/75815] Target Java: out/target/common/obj/APPS/Dialer_intermediates/classes-full-debug.jar
Note: Generating a Provider for com.android.dialer.glidephotomanager.impl.GlidePhotoManagerImpl. Prefer to run the dagger processor over that class instead.
Note: [1] Wrote GeneratedAppGlideModule with: []
[ 98% 74896/75815] //packages/apps/Seedvault:Seedvault kotlinc
warning: some JAR files in the classpath have the Kotlin Runtime library bundled into them. This may cause difficult to debug problems if there’s a different version of
the Kotlin Runtime library in the classpath. Consider removing these libraries from the classpath
out/soong/.intermediates/frameworks/base/packages/SettingsLib/SettingsLib/android_common/turbine-combined/SettingsLib.jar: warning: library has Kotlin runtime bundled i
nto it
[ 98% 74915/75815] //packages/apps/Settings:Settings-core javac
warning: Supported source version ‘RELEASE_8’ from annotation processor ‘com.android.settingslib.search.IndexableProcessor’ less than -source ‘9’
1 warning
[ 99% 75334/75815] //art/build/apex:art-check-release-apex-gen generate art-check-release-apex-gen.dummy
–bitness=auto, trying to autodetect. This may be incorrect!
Detected 32-only
[ 99% 75340/75815] //packages/apps/Seedvault:Seedvault d8
Stripped invalid locals information from 1 method.
In out/soong/.intermediates/packages/apps/Seedvault/Seedvault/android_common/combined/Seedvault.jar:kotlinx/coroutines/scheduling/WorkQueue.class:
Methods with invalid locals information:
void kotlinx.coroutines.scheduling.WorkQueue.offloadAllWork$kotlinx_coroutines_core(kotlinx.coroutines.scheduling.GlobalQueue)
Type information in locals-table is inconsistent. Cannot constrain type: BOTTOM (empty) for value: v15 by constraint INT.
Some warnings are typically a sign of using an outdated Java toolchain. To fix, recompile the source with an updated toolchain.
[ 99% 75813/75815] Package target files: out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec.zip
FAILED: out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec.zip
/bin/bash -c “(rm -rf out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec.zip out/target/product/serran
oltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec.zip.list out/target/product/serranoltexx/obj/PACKAGING/target_files_intermed
iates/lineage_serranoltexx-target_files-eng.antec ) && (mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/ out/target/product/serranolte
xx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec ) && (mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_interm
ediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY ) && (if [ -d "out/target/product/serranoltexx/recovery/root" -a "$(ls -A out/target/product/serranolt
exx/recovery/root)" ]; then mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/RAMD
ISK && prebuilts/build-tools/linux-x86/bin/acp -rd out/target/product/serranoltexx/recovery/root/* out/target/product/serranoltexx/obj/PACKAGING/target_files_intermedia
tes/lineage_serranoltexx-target_files-eng.antec/RECOVERY/RAMDISK; fi ) && (if [ -d "out/target/product/serranoltexx/install" -a "$(ls -A out/target/product/serrano
ltexx/install)" ]; then mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/INSTALL && prebui
lts/build-tools/linux-x86/bin/acp -rd out/target/product/serranoltexx/install/* out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serrano
ltexx-target_files-eng.antec/INSTALL; fi ) && (cp out/target/product/serranoltexx/kernel out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineag
e_serranoltexx-target_files-eng.antec/RECOVERY/kernel ) && (echo "androidboot.hardware=qcom user_debug=22 msm_rtb.filter=0x3F ehci-hcd.park=3 androidboot.bootdevice=ms
m_sdcc.1 buildvariant=userdebug" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/cmdlin
e ) && (echo "0x80200000" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/base ) && (e
cho "2048" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/pagesize ) && (mkdir -p out
/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT ) && (mkdir -p out/target/product/serranoltexx/ob
j/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/ROOT ) && (if [ -d "out/target/product/serranoltexx/root" -a "$(ls -A out/target
/product/serranoltexx/root)" ]; then mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/ROOT
&& prebuilts/build-tools/linux-x86/bin/acp -rd out/target/product/serranoltexx/root/* out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_
serranoltexx-target_files-eng.antec/ROOT; fi ) && (if [ -d "out/target/product/serranoltexx/ramdisk" -a "$(ls -A out/target/product/serranoltexx/ramdisk)" ]; then
mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT/RAMDISK && prebuilts/build-tools/lin
ux-x86/bin/acp -rd out/target/product/serranoltexx/ramdisk/* out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-
eng.antec/BOOT/RAMDISK; fi ) && (cp out/target/product/serranoltexx/kernel out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx
-target_files-eng.antec/BOOT/kernel ) && (echo "androidboot.hardware=qcom user_debug=22 msm_rtb.filter=0x3F ehci-hcd.park=3 androidboot.bootdevice=msm_sdcc.1 buildvari
ant=userdebug" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT/cmdline ) && (echo "0x80200
000" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT/base ) && (echo "2048" > out/target/
product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT/pagesize ) && (if [ -d "out/target/product/serranoltexx/
system" -a "$(ls -A out/target/product/serranoltexx/system)" ]; then mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serr
anoltexx-target_files-eng.antec/SYSTEM && prebuilts/build-tools/linux-x86/bin/acp -rd out/target/product/serranoltexx/system/* out/target/product/serranoltexx/obj/PACKA
GING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/SYSTEM; fi ) && (if [ -d "out/target/product/serranoltexx/data" -a "$(ls -A out/target/
product/serranoltexx/data)" ]; then mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/DATA
&& prebuilts/build-tools/linux-x86/bin/acp -rd out/target/product/serranoltexx/data/* out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_s
erranoltexx-target_files-eng.antec/DATA; fi ) && (mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-en
g.antec/OTA ) && (cp out/target/product/serranoltexx/android-info.txt out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-targ
et_files-eng.antec/OTA/ ) && (mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/OTA/bin ) &&
(cp out/target/product/serranoltexx/obj/EXECUTABLES/updater_intermediates/updater out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_ser
ranoltexx-target_files-eng.antec/OTA/bin/ ) && (mkdir -p out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.
antec/META ) && (cp out/target/product/serranoltexx/obj/PACKAGING/apkcerts_intermediates/lineage_serranoltexx-apkcerts-eng.antec.txt out/target/product/serranoltexx/obj
/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/apkcerts.txt ) && (cp out/soong/apexkeys.txt out/target/product/serranoltexx/obj/
PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/apexkeys.txt ) && (echo "" > out/target/product/serranoltexx/obj/PACKAGING/targe
t_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/otakeys.txt ) && (cp out/target/product/serranoltexx/obj/ETC/file_contexts.bin_intermediates/file
contexts.bin out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/file_contexts.bin ) && (cp out/t
arget/product/serranoltexx/misc_info.txt out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/misc

info.txt ) && (PATH=out/host/linux-x86/bin/:system/extras/ext4_utils/:$PATH MKBOOTIMG=out/host/linux-x86/bin/mkbootimg out/host/linux-x86/bin/make_recovery
_patch out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec out/target/product/serranoltexx/obj/PACKAGIN
G/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec ) && ((cd out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serr
anoltexx-target_files-eng.antec/SYSTEM; find . -type d | sed ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort | sed ‘s,^,system/,’ | out/host/linux-x86/bin/fs_config -
C -D out/target/product/serranoltexx/system -S out/target/product/serranoltexx/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin -R "system/" > out/target/pro
duct/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/filesystem_config.txt ) && ((cd out/target/product/serranolt
exx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/ROOT; find . -type d | sed ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort |
sed ‘s,^,’ | out/host/linux-x86/bin/fs_config -C -D out/target/product/serranoltexx/system -S out/target/product/serranoltexx/obj/ETC/file_contexts.bin_intermediates/f
ile_contexts.bin -R "" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/root_filesystem_con
fig.txt ) && ((cd out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT/RAMDISK; find . -type d | se
d ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort | sed ‘s,^,’ | out/host/linux-x86/bin/fs_config -C -D out/target/product/serranoltexx/system -S out/target/product/
serranoltexx/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin -R "" > out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serran
oltexx-target_files-eng.antec/META/boot_filesystem_config.txt ) && ((cd out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-ta
rget_files-eng.antec/RECOVERY/RAMDISK; find . -type d | sed ‘s,$,/,’; find . \! -type d) | cut -c 3- | sort | sed ‘s,^,’ | out/host/linux-x86/bin/fs_config -C -D out
/target/product/serranoltexx/system -S out/target/product/serranoltexx/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin -R "" > out/target/product/serranolte
xx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/recovery_filesystem_config.txt ) && (rm -rf out/target/product/serranoltexx
/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/dynamic_partitions_info.txt ) && (PATH=out/host/linux-x86/bin/:system/extras/
ext4_utils/:$PATH MKBOOTIMG=out/host/linux-x86/bin/mkbootimg out/host/linux-x86/bin/add_img_to_target_files -a -v -p out/host/linux-x86 out/target/product/serran
oltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec ) && (find out/target/product/serranoltexx/obj/PACKAGING/target_files_interm
ediates/lineage_serranoltexx-target_files-eng.antec/META | sort >out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_fi
les-eng.antec.zip.list ) && (find out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec -path out/target/
product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META -prune -o -print | sort >>out/target/product/serranoltexx
/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec.zip.list ) && (out/soong/host/linux-x86/bin/soong_zip -d -o out/target/product/ser
ranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec.zip -C out/target/product/serranoltexx/obj/PACKAGING/target_files_interme
diates/lineage_serranoltexx-target_files-eng.antec -l out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.ant
ec.zip.list )”
2023-09-13 09:29:14 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read VENDOR/etc/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read VENDOR/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read PRODUCT/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read SYSTEM_EXT/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read ODM/etc/build.prop
2023-09-13 09:29:14 - common.py - WARNING : Failed to read ODM/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read SYSTEM/etc/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read VENDOR/etc/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read VENDOR/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read PRODUCT/etc/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read PRODUCT/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read SYSTEM_EXT/etc/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read SYSTEM_EXT/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read ODM/etc/build.prop
2023-09-13 09:29:26 - common.py - WARNING : Failed to read ODM/build.prop
2023-09-13 09:29:26 - add_img_to_target_files.py - INFO :

++++ boot ++++

2023-09-13 09:29:26 - common.py - INFO : building image from target_files BOOT…
2023-09-13 09:29:26 - common.py - INFO : Running: “mkbootfs -f /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lin
eage_serranoltexx-target_files-eng.antec/META/boot_filesystem_config.txt /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediate
s/lineage_serranoltexx-target_files-eng.antec/BOOT/RAMDISK”
2023-09-13 09:29:26 - common.py - INFO : Running: “xz -f -c --check=crc32 --lzma2=dict=32MiB”
2023-09-13 09:29:27 - common.py - INFO : Running: “out/host/linux-x86/bin/mkbootimg --kernel /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/
target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/BOOT/kernel --cmdline androidboot.hardware=qcom user_debug=22 msm_rtb.filter=0x3F ehci-hcd.park=3
androidboot.bootdevice=msm_sdcc.1 buildvariant=userdebug --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x02000000 --os_version 11 --os_patch_level 2023-08-05 --ra
mdisk /home/antec/android/e/R/out/soong/.temp/tmpYDQG8I --output /home/antec/android/e/R/out/soong/.temp/tmpxlAJcx”
2023-09-13 09:29:27 - common.py - INFO :
2023-09-13 09:29:27 - add_img_to_target_files.py - INFO :

++++ recovery ++++

2023-09-13 09:29:27 - common.py - INFO : building image from target_files RECOVERY…
2023-09-13 09:29:27 - common.py - INFO : Running: “mkbootfs -f /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lin
eage_serranoltexx-target_files-eng.antec/META/recovery_filesystem_config.txt /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermed
iates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/RAMDISK”
2023-09-13 09:29:27 - common.py - INFO : Running: “xz -f -c --check=crc32 --lzma2=dict=32MiB”
2023-09-13 09:29:31 - common.py - INFO : Running: “out/host/linux-x86/bin/mkbootimg --kernel /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/
target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/kernel --cmdline androidboot.hardware=qcom user_debug=22 msm_rtb.filter=0x3F ehci-hcd.pa
rk=3 androidboot.bootdevice=msm_sdcc.1 buildvariant=userdebug --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x02000000 --os_version 11 --os_patch_level 2023-08-05
–ramdisk /home/antec/android/e/R/out/soong/.temp/tmp6WG4tB --output /home/antec/android/e/R/out/soong/.temp/tmpkLpfxp”
2023-09-13 09:29:32 - common.py - INFO :
2023-09-13 09:29:32 - add_img_to_target_files.py - INFO :

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

2023-09-13 09:29:32 - common.py - INFO : building image from target_files RECOVERY…
2023-09-13 09:29:32 - common.py - INFO : Running: “mkbootfs -f /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lin
eage_serranoltexx-target_files-eng.antec/META/recovery_filesystem_config.txt /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermed
iates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/RAMDISK”
2023-09-13 09:29:32 - common.py - INFO : Running: “xz -f -c --check=crc32 --lzma2=dict=32MiB”
2023-09-13 09:29:36 - common.py - INFO : Running: “out/host/linux-x86/bin/mkbootimg --kernel /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/
target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/RECOVERY/kernel --cmdline androidboot.hardware=qcom user_debug=22 msm_rtb.filter=0x3F ehci-hcd.pa
rk=3 androidboot.bootdevice=msm_sdcc.1 buildvariant=userdebug --base 0x80200000 --pagesize 2048 --ramdisk_offset 0x02000000 --os_version 11 --os_patch_level 2023-08-05
–ramdisk /home/antec/android/e/R/out/soong/.temp/tmpJtzNBW --output /home/antec/android/e/R/out/soong/.temp/tmp_o97CM”
2023-09-13 09:29:37 - common.py - INFO :
2023-09-13 09:29:37 - add_img_to_target_files.py - INFO :

++++ system ++++

2023-09-13 09:29:37 - add_img_to_target_files.py - INFO : creating system.img…
2023-09-13 09:29:40 - common.py - INFO : Running: “mkuserimg_mke2fs -s /home/antec/android/e/R/out/soong/.temp/tmpP4gD4X /home/antec/android/e/R/out/target/product
/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES/system.img ext4 / 1572864000 -j 0 -T 1230768000 -C /home/antec
/android/e/R/out/soong/.temp/merged_fs_configNnNYbD.txt -B /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serr
anoltexx-target_files-eng.antec/IMAGES/system.map -L / -M 0 -U f98f247a-68ab-598b-b912-cf46de2c8b1a -S 4957d7d8-76a4-5ddc-a1f9-8aa58c8cba9e --inode_size 256 /home/antec
/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/file_contexts.bin”
2023-09-13 09:29:48 - common.py - INFO : 09:29:44 mkuserimg_mke2fs.py INFO: Env: {‘E2FSPROGS_FAKE_TIME’: ‘1230768000’, ‘MKE2FS_CONFIG’: ‘/home/antec/android/e/R/out/
soong/.temp/tmpxNDJRb’}
09:29:44 mkuserimg_mke2fs.py INFO: Running: mke2fs -O ^has_journal -L / -I 256 -M / -m 0 -U f98f247a-68ab-598b-b912-cf46de2c8b1a -E android_sparse,hash_seed=4957d7d8-76
a4-5ddc-a1f9-8aa58c8cba9e -t ext4 -b 4096 /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_f
iles-eng.antec/IMAGES/system.img 384000
09:29:45 mkuserimg_mke2fs.py INFO: Env: {‘E2FSPROGS_FAKE_TIME’: ‘1230768000’}
09:29:45 mkuserimg_mke2fs.py INFO: Running: e2fsdroid -T 1230768000 -C /home/antec/android/e/R/out/soong/.temp/merged_fs_configNnNYbD.txt -B /home/antec/android/e/R/out
/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES/system.map -S /home/antec/android/e/R/out/targe
t/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/file_contexts.bin -f /home/antec/android/e/R/out/soong/
.temp/tmpP4gD4X -a / /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES
/system.img
09:29:48 mkuserimg_mke2fs.py ERROR: Failed to run e2fsdroid_cmd: __populate_fs: Could not allocate block in ext2 filesystem while writing file “TrichromeLibrary.apk”
e2fsdroid: Could not allocate block in ext2 filesystem while populating file system

mke2fs 1.45.4 (23-Sep-2019)
Creating filesystem with 384000 4k blocks and 96000 inodes
Filesystem UUID: f98f247a-68ab-598b-b912-cf46de2c8b1a
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912

Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done

_populate_fs: Could not allocate block in ext2 filesystem while writing file “TrichromeLibrary.apk”
e2fsdroid: Could not allocate block in ext2 filesystem while populating file system
2023-09-13 09:29:48 - add_img_to_target_files.py - ERROR :
ERROR:
Traceback (most recent call last):
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/add_img_to_target_files.py”, line 999, in
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/add_img_to_target_files.py”, line 993, in main
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/add_img_to_target_files.py”, line 849, in AddImagesToTargetFiles
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/add_img_to_target_files.py”, line 180, in AddSystem
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/add_img_to_target_files.py”, line 398, in CreateImage
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/build_image.py”, line 489, in BuildImage
mkfs_output = BuildImageMkfs(in_dir, prop_dict, out_file, target_out, fs_config)
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/build_image.py”, line 345, in BuildImageMkfs
mkfs_output = common.RunAndCheckOutput(build_command)
File “/home/antec/android/e/R/out/host/linux-x86/bin/add_img_to_target_files/common.py”, line 281, in RunAndCheckOutput
args, proc.returncode, output))
ExternalError: Failed to run command '[‘mkuserimg_mke2fs’, ‘-s’, ‘/home/antec/android/e/R/out/soong/.temp/tmpP4gD4X’, ‘/home/antec/android/e/R/out/target/product/serran
oltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES/system.img’, ‘ext4’, ‘/’, ‘1572864000’, ‘-j’, ‘0’, ‘-T’, ‘1230768000’
, ‘-C’, ‘/home/antec/android/e/R/out/soong/.temp/merged_fs_configNnNYbD.txt’, ‘-B’, '/home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files

intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES/system.map’, ‘-L’, ‘/’, ‘-M’, ‘0’, ‘-U’, ‘f98f247a-68ab-598b-b912-cf46de2c8b1a’, ‘-S’, ‘4957d7d8-76a4-5
ddc-a1f9-8aa58c8cba9e’, ‘–inode_size’, ‘256’, ‘/home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-ta
rget_files-eng.antec/META/file_contexts.bin’]’ (exit code 4):
09:29:44 mkuserimg_mke2fs.py INFO: Env: {‘E2FSPROGS_FAKE_TIME’: ‘1230768000’, ‘MKE2FS_CONFIG’: ‘/home/antec/android/e/R/out/soong/.temp/tmpxNDJRb’}
09:29:44 mkuserimg_mke2fs.py INFO: Running: mke2fs -O ^has_journal -L / -I 256 -M / -m 0 -U f98f247a-68ab-598b-b912-cf46de2c8b1a -E android_sparse,hash_seed=4957d7d8-76
a4-5ddc-a1f9-8aa58c8cba9e -t ext4 -b 4096 /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_f
iles-eng.antec/IMAGES/system.img 384000
09:29:45 mkuserimg_mke2fs.py INFO: Env: {‘E2FSPROGS_FAKE_TIME’: ‘1230768000’}
09:29:45 mkuserimg_mke2fs.py INFO: Running: e2fsdroid -T 1230768000 -C /home/antec/android/e/R/out/soong/.temp/merged_fs_configNnNYbD.txt -B /home/antec/android/e/R/out
/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES/system.map -S /home/antec/android/e/R/out/targe
t/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/META/file_contexts.bin -f /home/antec/android/e/R/out/soong/
.temp/tmpP4gD4X -a / /home/antec/android/e/R/out/target/product/serranoltexx/obj/PACKAGING/target_files_intermediates/lineage_serranoltexx-target_files-eng.antec/IMAGES
/system.img
09:29:48 mkuserimg_mke2fs.py ERROR: Failed to run e2fsdroid_cmd: __populate_fs: Could not allocate block in ext2 filesystem while writing file “TrichromeLibrary.apk”
e2fsdroid: Could not allocate block in ext2 filesystem while populating file system

mke2fs 1.45.4 (23-Sep-2019)
Creating filesystem with 384000 4k blocks and 96000 inodes
Filesystem UUID: f98f247a-68ab-598b-b912-cf46de2c8b1a
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912

Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done

__populate_fs: Could not allocate block in ext2 filesystem while writing file “TrichromeLibrary.apk”
e2fsdroid: Could not allocate block in ext2 filesystem while populating file system

Out of space? Out of inodes? The tree size of /home/antec/android/e/R/out/soong/.temp/tmpP4gD4X is 1909393408 bytes (1820 MB), with reserved space of 0 bytes (0 MB).
The max image size for filesystem files is 1572864000 bytes (1500 MB), out of a total partition size of 1572864000 bytes (1500 MB).
09:29:51 ninja failed with: exit status 1

failed to build some targets (04:56:21 (hh:mm:ss))

.
error.log

i see that in SteadfasterFX read me file :

vendorsetup.sh (your device tree)

if it does not exists (might be the case on newer tree’s where the lunch combo’s have been moved already) just create it.

you need at least to set 1 variable here:

  • export EOS_DEVICE=<codename>: your device’s codename. that means set it identical to what you have defined for “PRODUCT_DEVICE”.

there are more variables you can set here (optional), some maybe interesting examples are:

  • export EOS_USE_CCACHE=true|false
  • export EOS_CCACHE_DIR=<directory>
  • export EOS_CCACHE_SIZE=<size>G
    not microG, or add it restricted (see topic “Signature spoofing”)
  • export EOS_BRANCH_NAME=v1-pie the release branch you want to build on, e.g. “v1-pie”
  • export EOS_RELEASE_TYPE=UNOFFICIAL: the type of your release, e.g. “UNOFFICIAL”
  • export EOS_CUSTOM_PACKAGES=".....": override the list of /e/ apps to be included

for a complete list and their default setting look in vendor/e/vendorsetup.sh.

note: do not change variables there! just find out what the proper variable name is and set in your device/<vendor>/<codename>/vendorsetup.sh!

.

i submit :

export EOS_MINI_APPS=true

Quite a bit of that is recorded here [CUSTOM BUILD] Oneplus One - bacon Android 11 v1.13-r CUSTOM_SLIM with No Advanced Privacy - #13 by aibd. found or created in (equivalent of)
/device/oneplus/bacon/vendorsetup.sh

Be sure to save your corrected local_manifest !

You error.log shows a slightly smaller space diff than bacon (check Space and size in my bacon posts). If you have the device running you can do an adb shell df -h / Please look up the correct use of adb shell I might include some typo !

1 Like
antec@antec-p6-2038fr:~/android/e/R$ adb shell df -h /
Filesystem            Size  Used Avail Use% Mounted on
/dev/block/mmcblk0p21 1.4G  1.3G  107M  93% /system/product/overlay/NavigationBarModeGesturalWideBack/NavigationBarModeGesturalOverlayWideBack.apk

  1. why EOS_ANDROID_JACK_VM_ARGS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx9G" ? When default is 8G
  2. can i set 15G because i have 16Gb of RAM installed / 32Gb swap ?
    Don’t have SSD yet, SATA 3 I think, not sure but my motherboard should offer only SATA 2
  3. what are Talkback VOSK DemoApp app ?
vendorsetup.sh
#!/bin/bash
#######################################################################################
export EOS_CCACHE_DIR=/home/antec/android/e/ccache/eos
export EOS_USE_CCACHE=true
export EOS_CCACHE_SIZE=100G
export EOS_DEVICE=serranoltexx
export EOS_SIGNATURE_SPOOFING=restricted
export EOS_BRANCH_NAME="v1-r"
export EOS_MINI_APPS=true
export EOS_RELEASE_TYPE="CUSTOM_SLIM"
########### extendrom section ###########
$PWD/vendor/extendrom/get_prebuilts.sh
export ENABLE_EXTENDROM=true
export EXTENDROM_PACKAGES="noApps noGmsCore noFakeStore noMozillaNlpBackend noNominatimNlpBackend noGsfProxy noPicoTTS noeSpeakTTS noMagicEarth noPdfViewer noOpenWeatherMapWeatherProvider"

.

i have to go ! come back around 19h00 (UTC)

i love you @aibd

It is a balance, I see it as a set aside, so if I set 15 G /16G I might force more use of SWAP, you can adjust swappiness, but it probably also depends on whether you have ccache on SSD and other things. So my setting is 9G / 32G RAM plus > 32 G Swap both on Solid State – I tried different numbers, then never changed it when I had no errors. It is about a fix for “Java heap space” errors, if you see them.

VOSK is to do with voice recognition https://github.com/alphacep/vosk-android-demo/blob/master/app/src/main/java/org/vosk/demo/VoskActivity.java is all I know !

@aibd & @piero have you ever used zRam on your sytem?
It would be a nice A-B test, maybe more helping on piero’s system with it’s RAM limits

  1. as to JACK_VM_ARGS: JACK got deprecated long before Android 10 - you can check if it is running in the process list during build still. It used to accelerate java compilation. Assigning half your system memory to JACK if you build an Android release that uses it (until Oreo).
  2. as said - assign 50% to max 75% of system memory to the java build stage, rest for system filecache
  3. Talkback is an accessibility help for blind users, VOSK is a on-device speech-to-text engine (actually works pretty well)

avoid swapping, it’s just there to keep processes from crashing and allow for low memory builds. In doubt reduce nproc / parallel cores used → builds can end up finishing earlier than using more cores that need to swap often.

@make-nz I never experimented with zRam, my small amount of experience is with a very low spec (6G then 8G RAM) laptop and then much more recently a recycled relic i7 32G powered workstation.

I had totally forgotten till mentioned by @tcecyk that my use of EOS_ANDROID_JACK_VM_ARGS had been something of an experiment.

It will be interesting to discuss! I never did get used to JACK especially when I read it was deprecated in Android 10. I had got used to:

In ~/.bashrc type

export _JAVA_OPTIONS=-Xmx5g

I see that being picked up, and if watching your monitor can see when it is needed. (My estimate 5 -7 G for starters with 16 G RAM – if you start low, you will see the error and do your own logic.)

What I do not know is how docker manages to use JACK !

Seeing other docker builders including it I had hashed out my ~/.bashrc entry.

JACK features in Dockerfile and build-community.sh and we are now in a vendor_e environment.

Incidentally, another guide recently updated https://gist.github.com/masemoel/53febfa10d26a7da10ee7123ee93131a.

I hope @piero you are OK with learning by my mistakes.

Edit, I have said before, I find a decent monitor essential, I have this, kudos and thanks to Brenden Matthews, conky

hi, i start a radical_slim_custom_build :

vendorsetup.sh

#!/bin/bash
#######################################################################################
export EOS_CCACHE_DIR=/home/antec/android/e/ccache/eos
export EOS_USE_CCACHE=true
export EOS_CCACHE_SIZE=100G
export EOS_DEVICE=serranoltexx
export EOS_SIGNATURE_SPOOFING=restricted
export EOS_BRANCH_NAME=“v1-r”
export EOS_MINI_APPS=true
export EOS_RELEASE_TYPE=“CUSTOM_SLIM”
########### extendrom section ###########
$PWD/vendor/extendrom/get_prebuilts.sh
export ENABLE_EXTENDROM=true
export EXTENDROM_PACKAGES=“noApps noGmsCore noFakeStore noMozillaNlpBackend noNominatimNlpBackend noGsfProxy noPicoTTS noeSpeakTTS noMagicEarth noPdfViewer noOpenWeatherMapWeatherProvider”

@aibd, do i need to add vendor/e/ from steadfasterFX in the local manifest because this error ?

antec@antec-p6-2038fr:~/android/e/R$ source build/envsetup.sh > envsetup_01.txt
bash: /home/antec/android/e/R/vendor/extendrom/get_prebuilts.sh: Aucun fichier ou dossier de ce type

or simply and fastidiously create a vendor/extendrom/get_prebuilts.sh ?
envsetup_01.txt say : including device/samsung/serranoltexx/vendorsetup.sh

.

awaiting some inputs on this subject, i tried a “classic” MINIMAL_APPS build, but with the same result as for the precedent “normal” FULL_APPS build :

Out of space? Out of inodes? The tree size of /home/antec/android/e/R/out/soong/.temp/tmp9wfvCO is 1909398528 bytes (1820 MB), with reserved space of 0 bytes (0 MB).
The max image size for filesystem files is 1572864000 bytes (1500 MB), out of a total partition size of 1572864000 bytes (1500 MB).

Sorry to miss the live event ! As output size is unchanged I have to think that MINIMAL_APPS was not applied ?

Yes you do, otherwise nothing with a EOS_ can happen.

Did your /e/ build rewrite your device.xml with a roomservice.xml, if yes we can say that is a good manifest – then two more projects in your proposed build:

<!-- vendor extendrom
    ##################################################### -->
  <remote name="sfX" fetch="https://github.com/sfX-Android/" />
  <project path="vendor/extendrom" name="android_vendor_extendrom" remote="sfX" revision="main" />
<!-- /e/ vendor repo
    ##################################################### -->
  <project path="vendor/e" name="steadfasterX/android_vendor_e" remote="e" revision="v1-r" />

It was as I was learning to set up vendor_e properly that I depended on envsetup.txt and breakfast output to see that my environment was correct. My last envset.txt https://paste.tchncs.de/upload/falcon-crow-eagle

(Unexplained, but I found that you should get the environment right before you call envset.txt)

I find you have to be fussy with consistent use of “quote marks” for variables.

Interesting footnote envsetup.txt confirms the use of

ANDROID_JACK_VM_ARGS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx9G"

On your machine I would start at 5G (the default in your OS may be 2G insufficient)

I never edited that, the readme at that location explains better than me !

Did not get the workstation with 32gb yet, so I may go with 8gb and older i7 for now too…

Found this on github, also recommendations for zram there

Workarounds for building Q on 8GB RAM environment:

  1. At the start of the build:
    [ 99% 138/139] /mnt/ssd/aosip/out/soong/.bootstrap/bin/soong_build /mnt/ssd/aosip/out/soong/build.ninja
    This used to take around 30mins, after enabling zram now it takes around 30secs (thanks to @kdrag0n for the zram idea) which is on par with what happens in 16GB RAM building environments

sudo apt install zram-config for installing zram-config package
sudo nano /etc/fstab and add a # in front of the swap disk if you have one and then reboot
After booting cat /proc/swaps to check if zram is enabled or not

  1. To avoid huge metalava compilation times, compile the api-stubs-docs and other packages manually first then continue with mka bacon etc

For example this is what I’m using now in aosip:
. build/envsetup.sh && lunch aosip_wayne-userdebug && mka api-stubs-docs && mka hiddenapi-lists-docs && mka system-api-stubs-docs && mka test-api-stubs-docs && mka kronic

Each of those api-stubs-docs, hiddenapi-lists-docs etc took around 4-7 mins
Increasing of heap from soong directory or other env exports are not required

Total combined build time in my system (Ryzen 1600 with a 8gb ddr4 stick) is around 2hrs now compared to 5hrs previously

For errors while building metalava check #metalava

Workarounds for building R on 8GB RAM environment:

  1. At the start of the build:
    [ 99% 138/139] /mnt/ssd/lineage/out/soong/.bootstrap/bin/soong_build /mnt/ssd/lineage/out/soong/build.ninja
    This used to take around 30mins, after enabling zram now it takes around 30secs (thanks to @kdrag0n for the zram idea) which is on par with what happens in 16GB RAM building environments

sudo apt install zram-config for installing zram-config package
sudo nano /etc/fstab and add a # in front of the swap disk if you have one and then reboot
After booting cat /proc/swaps to check if zram is enabled or not

  1. To avoid issues while building metalava (outOfMemoryException: java heap space)
    Pick this commit → https://github.com/verNANDo57/android_build_soong/commit/5743f1ba9d95ff9c1f418066dcfdde9197c53a5a

  2. To avoid huge metalava compilation times, compile the api-stubs-docs and other packages manually first then continue with mka bacon etc

For example this is what I’m using now in LineageOS:
. build/envsetup.sh && lunch lineage_joyeuse-userdebug & mka api-stubs-docs & mka module-lib-api-stubs-docs & mka system-api-stubs-docs & mka test-api-stubs-docs & mka bacon

Each of those api-stubs-docs, module-lib-api-stubs-docs etc took around 4-7 mins
Increasing of heap from soong directory or other env exports are not required

sorry guys, i feel that my eyes are too tired…
interested by zRAM, lost in steadfasterFX documentation and no more understanding forein language (english nor linux)
i will stop for now with building and PC
and probably come back sunday evening
even following the forum from far on my s4mini during the childs’s week-end.

In CUSTOM_SLIM-bacon Post #1 you will see I did extra minimal apps a different way by editing /vendor/lineage/config/common.mk – If you experiment with this method you would not need to call or setup extendrom.

that’s a neat workaround, just compiling those repos first. But if it catches on you’ll juggle more and more of them. I did pickup on hardcoded metalava heap sizes before for low mem builders - and how to set your own - [UNOFFICIAL BUILD] Samsung Galaxy S6 (zerofltexx) - #59 by tcecyk

I also see secondhand 16GB DDR3 DIMM go for < 20€, making zram or soong edits moot

1 Like

The i7 / 8gb are the limit, as it’s a maxed out notebook… good enough for daily stuff and to SSH into this workstation, which I will run headless.

Also nice to read, how higher Android versions work on low CPU systems, due to some tweaking
Thanks for linking