Package: release.debian.org Severity: minor X-Debbugs-Cc: de...@packages.debian.org Control: affects -1 + src:debvm User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package debvm [ Reason ] This is a minor bugfix update. It fixes three distinct problems: * The images generated by debefivm-create (but not debvm-create) would include an /etc/machine-id. Booting such a machine twice in the same network may result in an IP address conflict. * The --efi-vars option of debefivm-run was wrongly parsed and had no effect. * The workaround for the glibc FTS inode64 problem was broken when supplying a custom kernel image. [ Impact ] None of the fixed bugs are release-critical. Saying "no" definitely is an option. Debusine is impacted as it uses the generated images with incus and thus runs precisely into the aforementioned address conflict. That's how we discovered it. Using created images with autopkgtest-virt-qemu is unaffected by all of these bugs (unless using incus). Without --efi-vars, bootloader changes are not preserved and therefore e.g. bootctl install renders a VM unbootable. If saying no, I intend to retry via s-p-u or work around the machine-id inside Debusine. [ Tests ] None of the problems is covered by automated tests. I performed manual tests such as booting a VM twice with -snapshot and observing its machine-id change. [ Risks ] The changes are targeted fixes. In addition to testing them, I reviewed them on distinct days. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing unblock debvm/0.4.5 It's uploaded, tested and aged for some days already. Thanks for considering Helmut
diff --git a/bin/debefivm-create b/bin/debefivm-create index 1c03be5..f6368df 100755 --- a/bin/debefivm-create +++ b/bin/debefivm-create @@ -415,6 +415,8 @@ set -- "$@" \ "--customize-hook=download vmlinuz '$WORKDIR/kernel'" \ "--customize-hook=download initrd.img '$WORKDIR/initrd'" \ "--customize-hook=download '/usr/lib/systemd/boot/efi/linux$EFIARCH.efi.stub' '$WORKDIR/stub'" \ + '--customize-hook=rm -f "$1/etc/apt/apt.conf.d/00mmdebstrap" "$1/etc/apt/apt.conf.d/99debconf" "$1/var/cache/ldconfig/aux-cache" "$1/var/lib/dbus/machine-id" "$1/var/log/alternatives.log" "$1/var/log/apt/eipp.log.xz" "$1/var/log/apt/history.log" "$1/var/log/apt/term.log" "$1/var/log/dpkg.log"' \ + '--customize-hook=truncate -s 0 "$1/etc/machine-id"' \ '--customize-hook=mount --bind "$1" "$1/mnt"' \ '--customize-hook=mount -t tmpfs tmpfs "$1/mnt/dev" -o mode=0755' \ '--customize-hook=rm -f "$1/usr/sbin/policy-rc.d"' \ diff --git a/bin/debefivm-run b/bin/debefivm-run index c93d7d2..50e87de 100755 --- a/bin/debefivm-run +++ b/bin/debefivm-run @@ -165,14 +165,22 @@ while getopts :a:gi:s:-: OPTCHAR; do graphical|help) "opt_$OPTARG" ;; - architecture|efi-vars|image|netopt|skip|sshport|transport) + architecture|image|netopt|skip|sshport|transport) test "$OPTIND" -gt "$#" && usage_error "missing argument for --$OPTARG" "opt_$OPTARG" "$(nth_arg "$OPTIND" "$@")" OPTIND=$((OPTIND+1)) ;; - architecture=*|efi-vars=*|image=*|netopt=*|skip=*|sshport=*|transport=*) + efi-vars) + test "$OPTIND" -gt "$#" && usage_error "missing argument for --$OPTARG" + opt_efi_vars "$(nth_arg "$OPTIND" "$@")" + OPTIND=$((OPTIND+1)) + ;; + architecture=*|image=*|netopt=*|skip=*|sshport=*|transport=*) "opt_${OPTARG%%=*}" "${OPTARG#*=}" ;; + efi-vars=*) + opt_efi_vars "${OPTARG#*=}" + ;; *) usage_error "unrecognized option --$OPTARG" ;; diff --git a/debian/changelog b/debian/changelog index f15c665..5608f61 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +debvm (0.4.5) unstable; urgency=medium + + * debefivm-create: clean up unreproducible files (Closes: #1107719) + * debefivm-run: fix parsing of --efi-vars option + * debvm-create: fix corner case in #1079443 workaround + + -- Helmut Grohne <hel...@subdivi.de> Wed, 18 Jun 2025 11:18:37 +0200 + debvm (0.4.4) unstable; urgency=medium * Force tests to not use smp (Closes: #1106397) diff --git a/share/customize-kernel.sh b/share/customize-kernel.sh index 0a252a4..d792f49 100755 --- a/share/customize-kernel.sh +++ b/share/customize-kernel.sh @@ -43,7 +43,7 @@ manual_add_modules virtio_blk EOF chmod +x "$TARGET/etc/initramfs-tools/hooks/work_around_1079443" if test "${1:-}" = --update && test -x "$TARGET/usr/bin/update-initramfs"; then - chroot "$TARGET/update-initramfs -u" + chroot "$TARGET" update-initramfs -u fi }