Package: autopkgtest Version: 5.44 Severity: normal Hi,
I am trying to use the unshare backend of autopkgtest to test adduser. The manual page autopkgtes-virt-unshare suggests that this should work out of the box even if no tarball was created before, by automatically invoking mmdebstrap. This does not seem to be the case: mh@ganchotestff:~/packages/adduser/adduser-3.138$ autopkgtest . -- unshareautopkgtest [14:14:29]: starting date and time: 2025-02-16 14:14:29+0100 autopkgtest [14:14:29]: version 5.44 autopkgtest [14:14:29]: host ganchotestff; command line: /usr/bin/autopkgtest . -- unshare ['mmdebstrap', '--variant=apt', '--skip=output/mknod,cleanup/apt/lists', '--customize-hook=sed "s/^deb /deb-src /" "$1/etc/apt/sources.list" > "$1/etc/apt/sources.list.d/src.list" && APT_CONFIG=$MMDEBSTRAP_APT_CONFIG apt-get update', '*', '/tmp/tmp772tvxkz/chroot.tar'] failed (exit status 25, stderr "sh: 1: printf: usage: printf format [arg ...]\nI: automatically chosen mode: unshare\nI: chroot architecture amd64 is equal to the host's architecture\nI: automatically chosen format: tar\nI: using /tmp/mmdebstrap.Uew3yfTcE1 as tempdir\nI: skipping output/mknod as requested for ./dev/console\nI: skipping output/mknod as requested for ./dev/full\nI: skipping output/mknod as requested for ./dev/null\nI: skipping output/mknod as requested for ./dev/ptmx\nI: skipping output/mknod as requested for ./dev/random\nI: skipping output/mknod as requested for ./dev/tty\nI: skipping output/mknod as requested for ./dev/urandom\nI: skipping output/mknod as requested for ./dev/zero\nI: running apt-get update...\nIgn:1 http://deb.debian.org/debian * InRelease\nErr:2 http://deb.debian.org/debian * Release\n 404 Not Found [IP: 2a04:4e42:8e::644 80]\nReading package lists...\nE: The repository 'http://deb.debian.org/debian * Release' does not have a Release file.\nE: apt-get update--error-on=any -oAPT::Status-Fd=<$fd> -oDpkg::Use-Pty=false failed\nW: hooklistener errored out: E: received eof on socket\n\nI: main() received signal PIPE: waiting for setup...\nI: removing tempdir /tmp/mmdebstrap.Uew3yfTcE1...\nE: mmdebstrap failed to run\n") autopkgtest [14:14:30]: ERROR: testbed failure: unexpected eof from the testbed Exception ignored in: <_io.TextIOWrapper name=6 encoding='UTF-8'> BrokenPipeError: [Errno 32] Broken pipe mh@ganchotestff:~/packages/adduser/adduser-3.138$ This error message is nearly unreadable. I guess that the system is trying to execute mmdebstrap --variant=apt --skip=output/mknod,cleanup/apt/lists --customize-hook='sed "s/^deb /deb-src /" "$1/etc/apt/sources.list" > "$1/etc/apt/sources.list.d/src.list" && APT_CONFIG=$MMDEBSTRAP_APT_CONFIG apt-get update' '*' '/tmp/tmp772tvxkz/chroot.tar' I might have gotten the quoting wrong (maybe there are single quotes missing around the paramters of --customize-hook, what does the single asterisk mean here that seems to end up in the source.list file, and since there are unexpanded environment variable this cannot work. And it doesn't: mh@ganchotestff:~/packages/adduser/adduser-3.138$ mmdebstrap --variant=apt --skip=output/mknod,cleanup/apt/lists --customize-hook='sed "s/^deb /deb-src /" "$1/etc/apt/sources.list" > "$1/etc/apt/sources.list.d/src.list" && APT_CONFIG=$MMDEBSTRAP_APT_CONFIG apt-get updat' '*' '/tmp/tmp772tvxkz/chroot.tar' sh: 1: printf: usage: printf format [arg ...] I: automatically chosen mode: unshare I: chroot architecture amd64 is equal to the host's architecture I: automatically chosen format: tar I: using /tmp/mmdebstrap.kJOwsBd7zk as tempdir I: skipping output/mknod as requested for ./dev/console I: skipping output/mknod as requested for ./dev/full I: skipping output/mknod as requested for ./dev/null I: skipping output/mknod as requested for ./dev/ptmx I: skipping output/mknod as requested for ./dev/random I: skipping output/mknod as requested for ./dev/tty I: skipping output/mknod as requested for ./dev/urandom I: skipping output/mknod as requested for ./dev/zero I: running apt-get update... done Ign:1 http://deb.debian.org/debian * InRelease Err:2 http://deb.debian.org/debian * Release 404 Not Found [IP: 2a04:4e42:70::644 80] Reading package lists... E: The repository 'http://deb.debian.org/debian * Release' does not have a Release file. E: apt-get update --error-on=any -oAPT::Status-Fd=<$fd> -oDpkg::Use-Pty=false failed W: hooklistener errored out: E: received eof on socket I: main() received signal PIPE: waiting for setup... I: removing tempdir /tmp/mmdebstrap.kJOwsBd7zk... E: mmdebstrap failed to run I must be doing something totally stupid here. Please also note the leading "sh: 1: printf: usage: printf format [arg ...]" which seems to come from some shell script. In some document that isn't mentioned in the man page, I learned how to create an sbuild tarball with TMPDIR=/var/tmp mmdebstrap --include=ca-certificates --skip=output/dev --variant=buildd unstable ~/.cache/sbuild/unstable-amd64.tar.zst http://debian.debian.zugschlus.de/debian With this, autopkgtest fails differntly: mh@ganchotestff:~/packages/adduser/adduser-3.138$ autopkgtest . -- unshareautopkgtest [14:25:39]: starting date and time: 2025-02-16 14:25:39+0100 autopkgtest [14:25:39]: version 5.44 autopkgtest [14:25:39]: host ganchotestff; command line: /usr/bin/autopkgtest . -- unshare autopkgtest [14:25:41]: testbed dpkg architecture: amd64 autopkgtest [14:25:41]: testbed apt version: 2.9.29 autopkgtest [14:25:41]: @@@@@@@@@@@@@@@@@@@@ test bed setup autopkgtest [14:25:41]: testbed release detected to be: None autopkgtest [14:25:41]: testbed running kernel: Linux 6.12.13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.13-1 (2025-02-09) autopkgtest [14:25:41]: @@@@@@@@@@@@@@@@@@@@ unbuilt-tree . autopkgtest [14:25:41]: testing package adduser version 3.138 autopkgtest [14:25:41]: build needed for binaries autopkgtest [14:25:41]: ERROR: Failed to resolve build-deps for /tmp/autopkgtest.F3SxDS/build.sU5/real-tree; apt-get --simulate output: autopkgtest [14:25:41]: ERROR: | Note, using directory '/tmp/autopkgtest.F3SxDS/build.sU5/real-tree' to get the build dependencies autopkgtest [14:25:41]: ERROR: | Reading package lists... autopkgtest [14:25:41]: ERROR: | Building dependency tree... autopkgtest [14:25:41]: ERROR: | Reading state information... autopkgtest [14:25:41]: ERROR: | Some packages could not be installed. This may mean that you have autopkgtest [14:25:41]: ERROR: | requested an impossible situation or if you areusing the unstable autopkgtest [14:25:41]: ERROR: | distribution that some required packages have not yet been created autopkgtest [14:25:41]: ERROR: | or been moved out of Incoming. autopkgtest [14:25:41]: ERROR: | The following information may help to resolve the situation: autopkgtest [14:25:41]: ERROR: | autopkgtest [14:25:41]: ERROR: | The following packages have unmet dependencies: autopkgtest [14:25:41]: ERROR: | builddeps:/tmp/autopkgtest.F3SxDS/build.sU5/real-tree : Depends: debhelper-compat (= 13) but it is not installable autopkgtest [14:25:41]: ERROR: | Depends: po4a but it is not installable autopkgtest [14:25:41]: ERROR: | Depends: gettext but it is not installable autopkgtest [14:25:41]: ERROR: | E: Unable to correct problems, you have held broken packages. blame: . badpkg: Can't resolve build dependencies on testbed autopkgtest [14:25:41]: ERROR: erroneous package: Can't resolve build dependencies on testbed mh@ganchotestff:~/packages/adduser/adduser-3.138$ This is either a bug in the package, or a server shortcoming in the docs. I am willing to help finding out what is going wrong here. Greetings Marc -- System Information: Debian Release: trixie/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 6.12.13-amd64 (SMP w/2 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages autopkgtest depends on: ii apt-utils 2.9.29 ii libdpkg-perl 1.22.15 ii mawk 1.3.4.20250131-1 ii procps 2:4.0.4-7 ii python3 3.13.1-2 ii python3-debian 0.1.49 ii python3-distro-info 1.13 ii retry 1.0.5-3 Versions of packages autopkgtest recommends: ii autodep8 0.28+nmu1 ii fakeroot 1.37-1 Versions of packages autopkgtest suggests: pn docker-cli | docker.io <none> pn docker.io <none> pn fakemachine <none> pn genisoimage <none> pn incus <none> pn lxc <none> pn lxd <none> pn ovmf <none> pn ovmf-ia32 <none> pn podman <none> pn qemu-efi-aarch64 <none> pn qemu-efi-arm <none> pn qemu-efi-riscv64 <none> pn qemu-system <none> pn qemu-utils <none> ii schroot 1.6.13-6 ii util-linux 2.40.4-3 pn vmdb2 <none> pn zerofree <none> -- no debconf information -- ----------------------------------------------------------------------------- Marc Haber | "I don't trust Computers. They | Mailadresse im Header Leimen, Germany | lose things." Winona Ryder | Fon: *49 6224 1600402 Nordisch by Nature | How to make an American Quilt | Fax: *49 6224 1600421