From 57d9815a4882677ebdffec0d3d568e00addc34a8 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Sat, 11 Jan 2020 13:49:16 -0500 Subject: [PATCH] Drop copying qemu binaries and ensure qemu-user is configured on host Since Mageia 6, it has not been necessary to copy the qemu binaries and the binfmt files into the chroot to run ARM binaries inside a chroot. This change finally stops doing that. In order to make sure this works properly, we ensure that systemd-binfmt is restarted to apply binfmt changes on the system. This ensures that the host qemu-user-static is configured to execute binaries, even in chroots. --- create_arm_image.sh | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/create_arm_image.sh b/create_arm_image.sh index 34549a1..b1d6324 100755 --- a/create_arm_image.sh +++ b/create_arm_image.sh @@ -111,6 +111,13 @@ function createchroot() error "line ${LINENO} can't start qemu-user-static : exiting" exit ${ERR_1} fi + else + title "Restarting systemd-binfmt.service" + /bin/systemctl restart systemd-binfmt.service + if [ ${?} -ne 0 ]; then + error "line ${LINENO} can't start qemu-user-static : exiting" + exit ${ERR_1} + fi fi return 0 } @@ -263,20 +270,6 @@ function preparechroot() { title "Preparing chrooting in ${BUILD_PATH}" - #Copying qemu - - /bin/cp /bin/qemu-arm-static "${BUILD_PATH}/usr/bin/" - if [ ${?} -ne 0 ]; then - error "line ${LINENO} can't copy /bin/qemu-user-static to ${BUILD_PATH}/usr/bin/ : exiting" - exit ${ERR_1} - fi - /bin/cp /usr/lib/binfmt.d/qemu-arm-static.conf "${BUILD_PATH}/usr/lib/binfmt.d" - if [ ${?} -ne 0 ]; then - error "line ${LINENO} can't copy /usr/lib/binfmt.d/qemu-arm-static.conf to ${BUILD_PATH}/usr/lib/binfmt.d : exiting" - exit ${ERR_1} - fi - - info "making /etc/hostname" echo "${HOSTNAME}" > "${BUILD_PATH}/etc/hostname"