the generated shellscript hasn’t aligning amount of parantheses “()” for its subshells or some quoting character error in between (that part gets lost when posting without backticks in the forum).
Try to run whatever is in that line separately by each logical AND (&&) to see where things start to break up
piero@HP-p6-2038fr:/media/piero/e/a15$ repo init -u https://gitlab.e.foundation/e/os/android.git -b a15 --git-lfs --no-clone-bundle
repo: reusing existing repo client checkout in /media/piero/e/a15
warning: Changing --git-lfs settings will only affect new project checkouts.
Existing projects will require manual updates.
repo has been initialized in /media/piero/e/a15
piero@HP-p6-2038fr:/media/piero/e/a15$ repo sync
The authenticity of host '[gitlab.e.foundation]:2222 ([2a01:4f9:3051:112c:d00b::3]:2222)' can't be established.
ED25519 key fingerprint is SHA256:FeE7g/AyYzmpwETHg8nx5bmDam9sKHXPCZIJDWvdw28.
This key is not known by any other names.
The authenticity of host '[gitlab.e.foundation]:2222 ([2a01:4f9:3051:112c:d00b::3]:2222)' can't be established.
ED25519 key fingerprint is SHA256:FeE7g/AyYzmpwETHg8nx5bmDam9sKHXPCZIJDWvdw28.
This key is not known by any other names.
Syncing: 38% (442/1157) 34:17 | 4 JOBS |
@piero ssh just complains it’s a new host key, that is its whole security model. There are workarounds to pre-load the host keys with ssh-keyscan or break ssh security model and use
-oStrictHostKeyChecking=no in ssh commandline options.
The imo better solution is to just edit any git:// or ssh:// remotes in the git config to https:// - look at the manifest xml head definitions of the remotes
e[0;31mbash stack trace (first occurence is likely where you should look at):e[0m
e[0;31mERROR: last command ended with status >1< at line >111<e[0m
including vendor/e/vendorsetup.sh
>> [mar. 09 déc. 2025 20:27:34 CET] Reset variables finished
including device/fairphone/FP5/vendorsetup.sh
so i looked into the /build/envsetup.sh file
lines 97-112 :
# Get the value of a build variable as an absolute path.
function _get_abs_build_var_cached()
{
if [ "$BUILD_VAR_CACHE_READY" = "true" ]
then
eval "echo \"\${abs_var_cache_$1}\""
return
fi
local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
fi
(\cd $T; build/soong/soong_ui.bash --dumpvar-mode --abs $1)
}
it is overwritten by the shorter /device/<vendor_name>/<device_name>/vendorsetup.sh
you mean add a line for version higher than v1-q ?
done :
set Java version
##################################
echo -e ‘\n!!!’
echo ‘******** /e/ - set JAVA ********’
echo -e ‘!!!\n’
echo “>> [$(date)] Determining correct OpenJDK version for $BRANCH_NAME”
case $BRANCH_NAME in -r|-s|*-t|*a14|*a15|*a16) JAVABASE=“$ANDROIDTOP/prebuilts/jdk/jdk11/linux-x86” ; NEEDEDJAVA=shipped ;; -pie|-q) JAVABASE=“$ANDROIDTOP/prebuilts/jdk/jdk9/linux-x86” ; NEEDEDJAVA=shipped ;;
*-oreo) NEEDEDJAVA=java-1.8.0-openjdk-amd64 ; JAVABASE=/usr/lib/jvm/$NEEDEDJAVA ;;
*-nougat) NEEDEDJAVA=java-7-oracle; JAVABASE=/usr/lib/jvm/$NEEDEDJAVA;;
*)
echo “WARNING: cannot determine best java version for $BRANCH_NAME!”
;;
esac
JAVACBIN=$JAVABASE/bin/javac
echo “… checking if we need to switch Java version”
if [ “$NEEDEDJAVA” == “shipped” ];then
echo “… skipping touching java as we use a shipped one ($JAVABASE)”
else
CURRENTJ=$(java -version 2>&1|grep version)
NEWJBIN=$($JAVABASE/bin/java -version 2>&1|grep version)
if [ “x$CURRENTJ” == “x$NEWJBIN” ];then
echo “… skipping java switch because we already have the wanted version ($CURRENTJ == $NEWJBIN)”
else
echo “($CURRENTJ vs. $NEWJBIN)”
echo “… switching to $NEEDEDJAVA…”
sudo update-java-alternatives -v -s $NEEDEDJAVA --jre-headless
echo -e “IF THE ABOVE FAILS, CHECK YOUR ‘PATH’ VARIABLE. PATH is currently set to:\n$PATH”
fi
CURRENTC=$(javac -version 2>&1)
NEWJCBIN=$($JAVACBIN -version 2>&1)
if [ "x$CURRENTC" == "x$NEWJCBIN" ];then
echo "... skipping javaC switch because we already have the wanted version ($CURRENTC == $NEWJCBIN)"
else
echo "($CURRENTC vs. $NEWJCBIN)"
echo "... switching to $JAVACBIN..."
sudo update-alternatives --set javac $JAVACBIN
fi
piero@HP-p6-2038fr:/media/piero/e/a15$ source build/envsetup.sh
including device/fairphone/FP5/vendorsetup.sh
************************************************** STARTING EXTENDROM **************************************************
extendrom version: HEAD a6dfd4f
ENABLE_EXTENDROM: true
EXTENDROM_PREROOT_BOOT: true
MAGISK_TARGET_ARCH:
ER_TARGET_ARCH:
EXTENDROM_PACKAGES: F-Droid AuroraStore Lawnchair-stable Magisk noEOSAppLounge noEOSGmsCore noEOSGsfProxy noEOSFakeStore noEOScom.google.android.maps.jar
EOS_EDITION:
EXTENDROM_SIGNING_PATCHES:
EXTENDROM_SIGNING_FORCE_PDIR:
EXTENDROM_ALLOW_ANY_CALL_RECORDING: true
EXTENDROM_SIGNATURE_SPOOFING:
EXTENDROM_SIGSPOOF_RESET:
EXTENDROM_SIGSPOOF_FORCE_PDIR:
EXTENDROM_INTERCEPT_INSTALLSRC:
EXTENDROM_TARGET_VERSION:
bash stack trace (first occurence is likely where you should look at):
ERROR: last command ended with status >1< at line >111<
including vendor/e/vendorsetup.sh
find: ‘/media/piero/e/a15/out/target/product’: Aucun fichier ou dossier de ce nom
find: ‘/media/piero/e/a15/out/target/product’: Aucun fichier ou dossier de ce nom
>> [mer. 10 déc. 2025 03:22:39 CET] Reset variables finished
including device/fairphone/FP5/vendorsetup.sh
************************************************** STARTING EXTENDROM **************************************************
extendrom version: HEAD a6dfd4f
ENABLE_EXTENDROM: true
EXTENDROM_PREROOT_BOOT: true
MAGISK_TARGET_ARCH:
ER_TARGET_ARCH:
EXTENDROM_PACKAGES: F-Droid AuroraStore Lawnchair-stable Magisk noEOSAppLounge noEOSGmsCore noEOSGsfProxy noEOSFakeStore noEOScom.google.android.maps.jar
EOS_EDITION:
EXTENDROM_SIGNING_PATCHES:
EXTENDROM_SIGNING_FORCE_PDIR:
EXTENDROM_ALLOW_ANY_CALL_RECORDING: true
EXTENDROM_SIGNATURE_SPOOFING:
EXTENDROM_SIGSPOOF_RESET:
EXTENDROM_SIGSPOOF_FORCE_PDIR:
EXTENDROM_INTERCEPT_INSTALLSRC:
EXTENDROM_TARGET_VERSION:
bash stack trace (first occurence is likely where you should look at):
ERROR: last command ended with status >1< at line >111<
including vendor/e/vendorsetup.sh
find: ‘/media/piero/e/a15/out/target/product’: Aucun fichier ou dossier de ce nom
emptied MIRROR ><
emptied OTA_URL ><
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
******** /e/ - set JAVA ********
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>> [mer. 10 déc. 2025 03:23:07 CET] Determining correct OpenJDK version for a15
... checking if we need to switch Java version
... skipping touching java as we use a shipped one (/media/piero/e/a15/prebuilts/jdk/jdk21/linux-x86)
>> [mer. 10 déc. 2025 03:23:07 CET] Using Java JDK /media/piero/e/a15/prebuilts/jdk/jdk21/linux-x86
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
******** /e/ - INIT ********
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>> [mer. 10 déc. 2025 03:23:07 CET] Preparing build environment
>> [mer. 10 déc. 2025 03:23:07 CET] DEBUG: ROOT_DIR is set to: >/media/piero/e/a15/.e/root<
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
******** /e/ - POSTSYNC ********
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>> [mer. 10 déc. 2025 03:23:07 CET] Setting "CUSTOM_without_microG" as release type
>> [mer. 10 déc. 2025 03:23:07 CET] Adding keys path (vendor/lineage-priv/keys)
Switch back to Python3
better now, the terminal survive to source build/envsetup.sh
despite still having the line 111 error :
EXTENDROM_TARGET_VERSION:
bash stack trace (first occurence is likely where you should look at):
ERROR: last command ended with status >1< at line >111<
# Get the value of a build variable as an absolute path.
function _get_abs_build_var_cached()
{
if [ "$BUILD_VAR_CACHE_READY" = "true" ]
then
eval "echo \"\${abs_var_cache_$1}\""
return
fi
local T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
fi
(\cd $T; build/soong/soong_ui.bash --dumpvar-mode --abs $1)
}
.
and then also fail with breakfast FP5
See Terminal Output
03:35:04 Build sandboxing disabled due to nsjail error.
Looking for dependencies in device/fairphone/FP5
Looking for dependencies in kernel/fairphone/qcm6490
kernel/fairphone/qcm6490 has no additional dependencies.
03:35:08 Build sandboxing disabled due to nsjail error.
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=15
LINEAGE_VERSION=3.3-a15-20251210-UNOFFICIAL-FP5
TARGET_PRODUCT=lineage_FP5
TARGET_BUILD_VARIANT=userdebug
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-2a-dotprod
TARGET_CPU_VARIANT=cortex-a76
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv8-a
TARGET_2ND_CPU_VARIANT=cortex-a76
HOST_OS=linux
HOST_OS_EXTRA=Linux-6.8.0-60-generic-x86_64-Ubuntu-24.04.3-LTS
HOST_CROSS_OS=windows
BUILD_ID=BP1A.250505.005
OUT_DIR=out
WITH_SU=true
PRODUCT_SOONG_NAMESPACES=device/fairphone/FP5 vendor/qcom/opensource/usb/etc vendor/fairphone/FP5 hardware/qcom-caf/sm8350 hardware/qcom-caf/bootctrl vendor/qcom/opensource/commonsys/display vendor/qcom/opensource/commonsys-intf/display vendor/qcom/opensource/display vendor/qcom/opensource/data-ipa-cfg-mgr-legacy-um vendor/qcom/opensource/dataservices hardware/qcom-caf/thermal-legacy-um hardware/qcom-caf/wlan
============================================
hmmm … when you search this there are multiple causes … which I saw and worked through … for me was loosely speaking root permissions to / for (that is dative) “renaming”.
piero@HP-p6-2038fr:/media/piero/e/a15$ repo sync
Syncing: 100% (1157/1157), done in 22m51.966s
Syncing: 100% (1157/1157) 22:51 | ..working..repo sync has finished successfully.
..working..repo sync has finished successfully.
.
source build/envsetup.sh
piero@HP-p6-2038fr:/media/piero/e/a15$ source build/envsetup.sh
including device/fairphone/FP5/vendorsetup.sh
************************************************** STARTING EXTENDROM **************************************************
extendrom version: HEAD a6dfd4f
ENABLE_EXTENDROM: true
EXTENDROM_PREROOT_BOOT: true
MAGISK_TARGET_ARCH:
ER_TARGET_ARCH:
EXTENDROM_PACKAGES: F-Droid AuroraStore Lawnchair-stable Magisk noEOSAppLounge noEOSGmsCore noEOSGsfProxy noEOSFakeStore noEOScom.google.android.maps.jar
EOS_EDITION:
EXTENDROM_SIGNING_PATCHES:
EXTENDROM_SIGNING_FORCE_PDIR:
EXTENDROM_ALLOW_ANY_CALL_RECORDING: true
EXTENDROM_SIGNATURE_SPOOFING:
EXTENDROM_SIGSPOOF_RESET:
EXTENDROM_SIGSPOOF_FORCE_PDIR:
EXTENDROM_INTERCEPT_INSTALLSRC:
EXTENDROM_TARGET_VERSION:
bash stack trace (first occurence is likely where you should look at):
ERROR: last command ended with status >1< at line >111<
including vendor/e/vendorsetup.sh
find: ‘/media/piero/e/a15/out/target/product’: Aucun fichier ou dossier de ce nom
find: ‘/media/piero/e/a15/out/target/product’: Aucun fichier ou dossier de ce nom
>> [mer. 10 déc. 2025 23:16:30 CET] Reset variables finished
including device/fairphone/FP5/vendorsetup.sh
************************************************** STARTING EXTENDROM **************************************************
extendrom version: HEAD a6dfd4f
ENABLE_EXTENDROM: true
EXTENDROM_PREROOT_BOOT: true
MAGISK_TARGET_ARCH:
ER_TARGET_ARCH:
EXTENDROM_PACKAGES: F-Droid AuroraStore Lawnchair-stable Magisk noEOSAppLounge noEOSGmsCore noEOSGsfProxy noEOSFakeStore noEOScom.google.android.maps.jar
EOS_EDITION:
EXTENDROM_SIGNING_PATCHES:
EXTENDROM_SIGNING_FORCE_PDIR:
EXTENDROM_ALLOW_ANY_CALL_RECORDING: true
EXTENDROM_SIGNATURE_SPOOFING:
EXTENDROM_SIGSPOOF_RESET:
EXTENDROM_SIGSPOOF_FORCE_PDIR:
EXTENDROM_INTERCEPT_INSTALLSRC:
EXTENDROM_TARGET_VERSION:
bash stack trace (first occurence is likely where you should look at):
ERROR: last command ended with status >1< at line >111<
including vendor/e/vendorsetup.sh
find: ‘/media/piero/e/a15/out/target/product’: Aucun fichier ou dossier de ce nom
emptied MIRROR ><
emptied OTA_URL ><
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
******** /e/ - set JAVA ********
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>> [mer. 10 déc. 2025 23:16:59 CET] Determining correct OpenJDK version for a15
... checking if we need to switch Java version
... skipping touching java as we use a shipped one (/media/piero/e/a15/prebuilts/jdk/jdk21/linux-x86)
>> [mer. 10 déc. 2025 23:16:59 CET] Using Java JDK /media/piero/e/a15/prebuilts/jdk/jdk21/linux-x86
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
******** /e/ - INIT ********
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>> [mer. 10 déc. 2025 23:16:59 CET] Preparing build environment
>> [mer. 10 déc. 2025 23:16:59 CET] DEBUG: ROOT_DIR is set to: >/media/piero/e/a15/.e/root<
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
******** /e/ - POSTSYNC ********
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>> [mer. 10 déc. 2025 23:16:59 CET] Setting "CUSTOM_without_microG" as release type
>> [mer. 10 déc. 2025 23:16:59 CET] Adding keys path (/media/piero/e/a15/keys)
Switch back to Python3
bash stack trace (first occurence is likely where you should look at):
ERROR: last command ended with status >1< at line >111<
.
breakfast FP5
piero@HP-p6-2038fr:/media/piero/e/a15$ breakfast FP5
23:24:27 Build sandboxing disabled due to nsjail error.
Looking for dependencies in device/fairphone/FP5
Looking for dependencies in kernel/fairphone/qcm6490
kernel/fairphone/qcm6490 has no additional dependencies.
23:24:31 Build sandboxing disabled due to nsjail error.
23:24:27 Build sandboxing disabled due to nsjail error.
.
Again the whole system became unresponsive,
even after closed the terminal, RAM is not available anymore, i have to reboot again and try a simplier build config to first test the build environement.