diff --git a/meta/classes/wic-img.bbclass b/meta/classes/wic-img.bbclass
index 7537a27b613e..5623945378eb 100644
--- a/meta/classes/wic-img.bbclass
+++ b/meta/classes/wic-img.bbclass
@@ -192,11 +192,16 @@ generate_wic_image() {
           mkdir -p /usr/bin/python3-native/
           if [ $(head -1 $(which bmaptool) | grep python3) ];then
             ln -fs /usr/bin/python3 /usr/bin/python3-native/python3
+            # python 3.10 is too new for our bitbake version
+            if [ "$( readlink /usr/bin/python3 )" = "python3.10" ]; then
+              ln -fs /usr/bin/python3.9 /usr/bin/python3-native/python3
+            fi
           else
             ln -fs /usr/bin/python2 /usr/bin/python3-native/python3
           fi
           export PATH="$BITBAKEDIR/bin:$PATH"
-          "$SCRIPTSDIR"/wic create "$WKS_FULL_PATH" \
+          /usr/bin/python3-native/python3 \
+            "$SCRIPTSDIR"/wic create "$WKS_FULL_PATH" \
             --vars "$STAGING_DIR/$MACHINE/imgdata/" \
             -o "/$WICTMP/${IMAGE_FULLNAME}.wic/" \
             --bmap \
diff --git a/meta/conf/distro/debian-bookworm.conf b/meta/conf/distro/debian-bookworm.conf
index 7e614bf2b5c3..c5b08e6aaa35 100644
--- a/meta/conf/distro/debian-bookworm.conf
+++ b/meta/conf/distro/debian-bookworm.conf
@@ -6,6 +6,8 @@ BASE_DISTRO_CODENAME = "bookworm"
 
 HOST_DISTRO ?= "debian-${BASE_DISTRO_CODENAME}"
 
+WIC_IMAGER_INSTALL += "python3.9-distutils"
+
 DISTRO_CONFIG_SCRIPT ?= "debian-configscript.sh"
 DISTRO_KERNELS ?= "4kc-malta 5kc-malta 686-pae 686 alpha-generic alpha-smp \
 	amd64 arm64 armmp-lpae armmp cloud-amd64 cloud-arm64 itanium \
