Cyril Brulebois <[email protected]> (2026-06-28): > I'm currently fighthing a depthcharge-related oddity: a build in a sid > development (so very unclean, with lots of history and extra packages) > works just fine, but a build inside a fresh sid cowbuilder env doesn't.
The same issue happens with daily builds, at least on some archs. Given the absence of changes on the installer side, the timing, and the expression of the bug, I'm pretty sure this is due to the Python bump from 3.13 to 3.14 (which would also explain why my development environment is behaving differently). https://tracker.debian.org/news/1768399/accepted-python3-defaults-3146-1-source-into-unstable/ I haven't tracked down the exact reason for the failure (yet) though. > I'm working on understanding the problem and fixing it. If I can't > manage to do that in a reasonable time, I'll probably give you a green > light to upload 7.0.14-1 to sid, and the d-i upload window would open > again once 7.0.14-1 reaches testing. I'll be filing a serious bug report against depthcharge-tools shortly… Unless the kernel team is happy to wait until that's resolved, I think it would make sense to proceed with 7.0.14-1, and try again (to upload d-i to unstable) in a few days, once 7.0.14-1 reaches testing and depthcharge-tools is fixed. Previous build logs looked like this: update-manifest dest/cdrom/gtk/debian-cd_info.tar.gz "isolinux help screens for CD (graphical)" pigz -nm -v -d <tmp/cdrom_gtk/initrd.gz | xz -T0 --check=crc32 --block-size=1M -v >tmp/cdrom_gtk/initrd.xz <stdin> to <stdout> (stdin): 57.1 MiB / 134.4 MiB = 0.425, 14 MiB/s, 0:09 rm -f ./tmp/cdrom_gtk/depthcharge/* mkdir -p ./tmp/cdrom_gtk/depthcharge for board in amd64-generic; do \ depthchargectl build -v \ --board ${board} \ --kernel-release 7.0.13+deb14-amd64 \ --kernel ./tmp/cdrom_gtk/vmlinuz \ --initramfs ./tmp/cdrom_gtk/initrd.xz \ --root none \ --kernel-cmdline "partman-partitioning/default_label=gpt --- quiet" \ --output ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img; \ gen-hd-image -v -z \ -X gpt \ -p $(($(stat -c%s ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img) / 512 + 2048)) \ -i $(mktemp -d) \ -o ./tmp/cdrom_gtk/depthcharge/${board}.disk.img \ -d FE3A2A5D-4F32-41A7-B725-ACCC3285A309 \ ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img \ 2048; \ pigz -9nmf ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img; \ done Couldn't find /boot in fstab, falling back to '/boot'. Assuming board 'Unnamed amd64-generic board' ('amd64-generic') by codename argument or config. Using kernel cmdline from given options: partman-partitioning/default_label=gpt --- quiet Building depthcharge image for board 'Unnamed amd64-generic board' ('amd64-generic'). Building for kernel version '7.0.13+deb14-amd64'. Trying with compression 'none'. Using file '/build/reproducible-path/debian-installer-20250804/build/tmp/cdrom_gtk/vmlinuz' as a vmlinuz. Trying to decompress file '/build/reproducible-path/debian-installer-20250804/build/tmp/cdrom_gtk/vmlinuz'. Using file '/build/reproducible-path/debian-installer-20250804/build/tmp/cdrom_gtk/initrd.xz' as an initramfs. Using keyblock file '/usr/share/vboot/devkeys/kernel.keyblock'. Using signprivate file '/usr/share/vboot/devkeys/kernel_data_key.vbprivk'. Using signpubkey file '/usr/share/vboot/devkeys/kernel_subkey.vbpubk'. Vmlinuz pref_address is 0x1000000, with init_size 0x3c47000. Padding vmlinuz to size 0xdaa000 Packing files as temporary image. […] New build logs look like this instead: update-manifest dest/cdrom/gtk/debian-cd_info.tar.gz "isolinux help screens for CD (graphical)" pigz -nm -v -d <tmp/cdrom_gtk/initrd.gz | xz -T0 --check=crc32 --block-size=1M -v >tmp/cdrom_gtk/initrd.xz <stdin> to <stdout> (stdin): 57.1 MiB / 134.4 MiB = 0.425, 14 MiB/s, 0:09 rm -f ./tmp/cdrom_gtk/depthcharge/* mkdir -p ./tmp/cdrom_gtk/depthcharge for board in amd64-generic; do \ depthchargectl build -v \ --board ${board} \ --kernel-release 7.0.13+deb14-amd64 \ --kernel ./tmp/cdrom_gtk/vmlinuz \ --initramfs ./tmp/cdrom_gtk/initrd.xz \ --root none \ --kernel-cmdline "partman-partitioning/default_label=gpt --- quiet" \ --output ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img; \ gen-hd-image -v -z \ -X gpt \ -p $(($(stat -c%s ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img) / 512 + 2048)) \ -i $(mktemp -d) \ -o ./tmp/cdrom_gtk/depthcharge/${board}.disk.img \ -d FE3A2A5D-4F32-41A7-B725-ACCC3285A309 \ ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img \ 2048; \ pigz -9nmf ./tmp/cdrom_gtk/depthcharge/${board}.kernel.img; \ done Traceback (most recent call last): File "/usr/bin/depthchargectl", line 33, in <module> sys.exit(load_entry_point('depthcharge-tools==0.6.2', 'console_scripts', 'depthchargectl')()) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/depthcharge_tools/utils/argparse.py", line 895, in main parser = cls.parser ^^^^^^^^^^ File "/usr/lib/python3/dist-packages/depthcharge_tools/utils/argparse.py", line 1042, in parser return cls.__build() ~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/depthcharge_tools/utils/argparse.py", line 1065, in __build arg.build(parser) ~~~~~~~~~^^^^^^^^ File "/usr/lib/python3/dist-packages/depthcharge_tools/utils/argparse.py", line 439, in build return parent.add_argument(*option_strings, **kwargs) ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.14/argparse.py", line 1531, in add_argument kwargs = self._get_positional_kwargs(*args, **kwargs) File "/usr/lib/python3.14/argparse.py", line 1666, in _get_positional_kwargs raise ValueError('nargs for positionals must be != 0') ValueError: nargs for positionals must be != 0 stat: cannot statx './tmp/cdrom_gtk/depthcharge/amd64-generic.kernel.img': No such file or directory /bin/sh: 10: arithmetic expression: expecting primary: " / 512 + 2048" make[4]: *** [config/x86.cfg:437: arch_depthcharge] Error 2 make[3]: *** [Makefile:315: _build] Error 2 make[2]: *** [Makefile:309: build_cdrom_gtk] Error 2 make[1]: *** [Makefile:315: _build] Error 2 make: *** [Makefile:309: build_cdrom_isolinux] Error 2 In passing, one might be confused by the mix of Python traceback and error issues: the failure of depthchargectl doesn't trigger the exit, so gen-hd-image is attempted with parameters computed via shell-based maths on… a file that hasn't been created by the previous command, hence the stat/arithmetic expression errors. Cheers, -- Cyril Brulebois ([email protected]) <https://debamax.com/> D-I release manager -- Release team member -- Freelance Consultant
signature.asc
Description: PGP signature

