From b20e22d89484db3332c9ae7fbf40320544d235a2 Mon Sep 17 00:00:00 2001 From: "Jason D. McCormick" Date: Wed, 15 Oct 2025 19:01:21 -0400 Subject: [PATCH 1/2] fix logic so arm-on-arm doesn't need qemu static --- src/custompios | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/custompios b/src/custompios index a7b3ee28..7fe45d73 100755 --- a/src/custompios +++ b/src/custompios @@ -30,8 +30,7 @@ function execute_chroot_script() { fi #black magic of qemu-arm-static - # cp `which qemu-arm-static` usr/bin - if [ "$(uname -m)" != "armv7l" ] || [ "$(uname -m)" != "aarch64" ] ; then + if [ "$(uname -m)" != "armv7l" ] && [ "$(uname -m)" != "aarch64" ] ; then if [ "$BASE_ARCH" == "armv7l" ] || [ "$BASE_ARCH" == "armhf" ]; then if (grep -q gentoo /etc/os-release);then ROOT="`realpath .`" emerge --usepkgonly --oneshot --nodeps qemu @@ -45,6 +44,8 @@ function execute_chroot_script() { cp `which qemu-aarch64-static` usr/bin/qemu-aarch64-static fi fi + elif [[ ( "$BASE_ARCH" == "armv7l" || "$BASE_ARCH" == "armhf" ) && "$(uname -m)" != "armv7l" ]]; then + cp `which qemu-aarch64-static` usr/bin/qemu-aarch64-static fi cp $2 chroot_script From 47d113545e545325b3b566954f155a870def6590 Mon Sep 17 00:00:00 2001 From: "Jason D. McCormick" Date: Wed, 15 Oct 2025 19:20:41 -0400 Subject: [PATCH 2/2] add more escape hatches for qemu-*-static --- src/custompios | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/custompios b/src/custompios index 7fe45d73..16f1affd 100755 --- a/src/custompios +++ b/src/custompios @@ -35,13 +35,17 @@ function execute_chroot_script() { if (grep -q gentoo /etc/os-release);then ROOT="`realpath .`" emerge --usepkgonly --oneshot --nodeps qemu else - cp `which qemu-arm-static` usr/bin/qemu-arm-static + if [ "${BASE_ARCH}" != "$(uname -m)" ]; then + cp `which qemu-arm-static` usr/bin/qemu-arm-static + fi fi elif [ "$BASE_ARCH" == "aarch64" ] || [ "$BASE_ARCH" == "arm64" ]; then if (grep -q gentoo /etc/os-release);then ROOT="`realpath .`" emerge --usepkgonly --oneshot --nodeps qemu else - cp `which qemu-aarch64-static` usr/bin/qemu-aarch64-static + if [ "${BASE_ARCH}" != "$(uname -m)" ]; then + cp `which qemu-aarch64-static` usr/bin/qemu-aarch64-static + fi fi fi elif [[ ( "$BASE_ARCH" == "armv7l" || "$BASE_ARCH" == "armhf" ) && "$(uname -m)" != "armv7l" ]]; then