I also came across that issue when building images using my tool called edi using the edi-pi project configuration: https://github.com/lueschem/edi-pi
I suggest the following fix (it also covers the case where a container is taken instead of a chroot): >From 73d8a0c4a6cbe082ae31f81dc6af7031b5007c54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20L=C3=BCscher?= <luesc...@gmail.com> Date: Sun, 14 Jan 2018 17:27:48 +0100 Subject: [PATCH 1/5] Do not check mount point if virtualization gets detected. --- debian/kernel/postinst.d/raspi3-firmware | 12 +++++++----- debian/raspi3-firmware.postinst | 14 +++++++++----- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/debian/kernel/postinst.d/raspi3-firmware b/debian/kernel/postinst.d/raspi3-firmware index fe89560..deacec9 100755 --- a/debian/kernel/postinst.d/raspi3-firmware +++ b/debian/kernel/postinst.d/raspi3-firmware @@ -31,11 +31,13 @@ case "$1" in ;; esac -if ! ischroot; then - if ! mountpoint -q /boot/firmware; then - echo "raspi3-firmware: missing /boot/firmware, did you forget to mount it?" >&2 - exit 1 - fi +if ischroot ; then + : chroot detected - skip mount point check +elif test -e /usr/bin/systemd-detect-virt && systemd-detect-virt -q ; then + : virtualization detected - skip mount point check +elif ! mountpoint -q /boot/firmware; then + echo "raspi3-firmware: missing /boot/firmware, did you forget to mount it?" >&2 + exit 1 fi latest_kernel=$(ls -1 /boot/vmlinuz-* | grep -v '\.dpkg-bak$' | sort -V -r | head -1) diff --git a/debian/raspi3-firmware.postinst b/debian/raspi3-firmware.postinst index 236b389..01bdcf8 100644 --- a/debian/raspi3-firmware.postinst +++ b/debian/raspi3-firmware.postinst @@ -6,11 +6,15 @@ set -e case "$1" in configure) - if ! ischroot; then - if ! mountpoint -q /boot/firmware; then - echo "Error: missing /boot/firmware, did you forget to mount it?" >&2 - exit 1 - fi + if ischroot ; then + # chroot detected - skip mount point check + mkdir -p /boot/firmware + elif test -e /usr/bin/systemd-detect-virt && systemd-detect-virt -q ; then + # virtualization detected - skip mount point check + mkdir -p /boot/firmware + elif ! mountpoint -q /boot/firmware; then + echo "Error: missing /boot/firmware, did you forget to mount it?" >&2 + exit 1 fi for file in /usr/lib/raspi3-firmware/* -- 2.7.4