Control: tag -1 patch

On Tue, Mar 10, 2026 at 10:07:59AM -0400, Nicolas Mora wrote:
> Le 2026-03-03 à 14 h 17, Nicolas Mora a écrit :
> > I'm the maintainer for the package libssh2, and recently, a FTBFS bug
> > was opened due to test_sshd tests fail [1].
> > 
> > In the build log, the tests test_sshd.test 1 and test_sshd.test 2.
> > 
> > The logs mentions a lot of messages like this:
> > "#  User sbuild not allowed because account is locked".
> > 
> > I didn't make any changes to the libssh2 package for a while and the
> > package did built until january.
> > 
> > I'm wondering if a default configuration in openssh changed recently
> > that could cause this ftbfs?
> 
> I've sent a mail last week about a bug in the package libssh2, but it hasn't
> been answered yet. Can you help me about the bug #1129134 ?

Sorry for missing this.

debbisect is great for tracking down this sort of thing, although 
/usr/share/doc/devscripts/examples/debbisect_buildsrc.sh didn't quite 
work and I had to fight with it a bit because libssh2's tests fail 
within mmdebstrap+unshare (probably unrelated to this bug and not 
particularly interesting to investigate).  Here's what I ended up with:

$ cat debbisect_sbuild.sh
#!/bin/sh

set -eu

mmdebstrap --variant=apt unstable \
    --aptopt='Apt::Key::gpgvcommand 
"/usr/share/debuerreotype/scripts/.gpgv-ignore-expiration.sh"' \
    --aptopt='Acquire::Check-Valid-Until "false"' \
    --include=gpgv \
    chroot.tar.zst $DEBIAN_BISECT_MIRROR "deb-src $DEBIAN_BISECT_MIRROR 
unstable main"

sbuild -Ad unstable --chroot-mode=unshare -c ./chroot.tar.zst --no-run-lintian \
    --post-build-commands="%SBUILD_CHROOT_EXEC dpkg-query -W 
>$(pwd)/debbisect.$DEBIAN_BISECT_TIMESTAMP.pkglist" \
    --post-build-failed-commands="%SBUILD_CHROOT_EXEC dpkg-query -W 
>$(pwd)/debbisect.$DEBIAN_BISECT_TIMESTAMP.pkglist" \
    "$DEBIAN_BISECT_SRCPKG"
$ DEBIAN_BISECT_SRCPKG=libssh2 debbisect --verbose --cache=./cache 
2026-01-17T04:33:19Z 2026-02-27T00:55:00Z ./debbisect_sbuild.sh
[lots of output]
bisection finished successfully
  last good timestamp: 20260218T142537Z
  first bad timestamp: 20260218T203007Z
the following packages differ between the last good and first bad timestamp:
  openssh-client 1:10.2p1-3 -> 1:10.2p1-4
  openssh-server 1:10.2p1-3 -> 1:10.2p1-4
  openssh-sftp-server 1:10.2p1-3 -> 1:10.2p1-4

So that would seem to point to:

  [ Luca Boccassi ]
  * openssh-client: use sysusers.d instead of manual scripting.
  * openssh-client: drop compat postinst not needed since bookworm/noble.
  * openssh-client: drop versioned dependency on i-s-h, satisfied since
    trixie/noble.
  * openssh-client: drop dependency on passwd, add recommends on
    openssh-server.
  * Use dh-sequence-installsysusers and drop d/rules override.

This made me wonder if there might be an implicit dependency on passwd 
hiding somewhere in your test suite.  And indeed, this patch fixes your 
build:

diff --git a/debian/control b/debian/control
index cd6d6825..f53ff4e9 100644
--- a/debian/control
+++ b/debian/control
@@ -7,6 +7,7 @@ Build-Depends: dpkg-dev (>= 1.22.5)
              , libssl-dev
              , zlib1g-dev
              , openssh-server <!nocheck>
+             , passwd <!nocheck>
 Standards-Version: 4.7.0
 Homepage: https://libssh2.org/
 Rules-Requires-Root: no

Cheers,

-- 
Colin Watson (he/him)                              [[email protected]]

Reply via email to