diff --git a/mkimage.sh b/mkimage.sh
index dcd3bd256078315aa1a4edde30ed5b57caef3fd0..7a6f272385d6de492b77c169c36ca66690c39649 100755
--- a/mkimage.sh
+++ b/mkimage.sh
@@ -384,6 +384,10 @@ case "$DIST" in
 		;;
 	experimental) set -- "$@" --setup-hook='echo deb http://deb.debian.org/debian experimental main non-free-firmware > "$1"/etc/apt/sources.list.d/experimental.list';;
 esac
+# unless we are on bookworm, convert sources.list to deb822 format
+case "$DIST" in bookworm|bookworm-backports) : ;; *)
+	set -- "$@" --setup-hook='chroot "$@" modernize-sources'
+esac
 # install reform-branding from non-free (the package is licensed under CC-BY-NC)
 # download manually to avoid adding non-free to the apt sources
 set -- "$@" --customize-hook='/usr/lib/apt/apt-helper download-file \
@@ -414,7 +418,11 @@ fi
 # platform detection and then adds the options to ${bootargs}.
 # We still want to overwrite /etc/default/flash-kernel because by default it will contain
 # LINUX_KERNEL_CMDLINE="quiet" and we don't want that
-set -- "$@" --essential-hook='{ echo LINUX_KERNEL_CMDLINE=\"\"; echo LINUX_KERNEL_CMDLINE_DEFAULTS=\"\"; } > "$1"/etc/default/flash-kernel'
+# For reform.d.n we want loglevel=7 instead of loglevel=3 as set in 00reform2_ubootenv
+case "$MIRROR" in
+	mntre.com)         set -- "$@" --essential-hook='{ echo LINUX_KERNEL_CMDLINE=\"\"; echo LINUX_KERNEL_CMDLINE_DEFAULTS=\"\"; } > "$1"/etc/default/flash-kernel' ;;
+	reform.debian.net) set -- "$@" --essential-hook='{ echo LINUX_KERNEL_CMDLINE=\"loglevel=7\"; echo LINUX_KERNEL_CMDLINE_DEFAULTS=\"\"; } > "$1"/etc/default/flash-kernel' ;;
+esac
 # select timezone and locales
 # this is later customized by the Reform Setup Wizard GUI
 set -- "$@" \