Package: devscripts X-Debbugs-Cc: [email protected] Version: 2.26.9 Severity: normal Tags: patch
Dear Maintainer, Since Build-Path is an optional field, debrebuild should work without it. dpkg-genbuildinfo only sets it if it starts with '/build/'. What actually happens: $ mkdir -p /tmp/debrebuild $ cd /tmp/debrebuild/ $ wget https://buildinfos.debian.net/buildinfo-pool/h/hello/hello_2.12.3-1_amd64.buildinfo Edit the buildinfo file to remove the field: @@ -18,7 +18,6 @@ Build-Origin: Debian Build-Architecture: amd64 Build-Date: Thu, 14 May 2026 08:56:42 +0000 -Build-Path: /build/reproducible-path/hello-2.12.3 Installed-Build-Depends: autoconf (= 2.72-6), automake (= 1:1.18.1-4), $ debrebuild hello_2.12.3-1_amd64.buildinfo --buildresult=./out --builder=mmdebstrap ... I: skipping cleanup/reproducible as requested I: creating tarball... I: done I: removing tempdir /tmp/mmdebstrap.wJ7g2t3a61... I: success in 22.2760 seconds fileparse(): need a valid pathname at /usr/bin/debrebuild line 700. I've attached a patch that sets the build path to /build/$srcpkgname-$upstream_ver for the dpkg and mmdebstrap builders. It's not ideal but it does resolve the problem. Kind regards, Serge -- Package-specific info: --- /etc/devscripts.conf --- Empty. --- ~/.devscripts --- Not present -- System Information: Debian Release: forky/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.12.90+deb13.1-amd64 (SMP w/4 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages devscripts depends on: ii dpkg-dev 1.23.7 ii file 1:5.47-4 ii gpg 2.4.9-4 ii gpg-agent 2.4.9-4 ii gpgv 2.4.9-4 ii libconfig-inifiles-perl 3.000003-5 ii libdpkg-perl 1.23.7 ii libfile-dirlist-perl 0.05-3 ii libfile-homedir-perl 1.006-2 ii libfile-touch-perl 0.12-2 ii libio-string-perl 1.08-4 ii libmoo-perl 2.005005-1 ii libwww-perl 6.83-1 ii libyaml-libyaml-perl 0.907.0+ds-1 ii patchutils 0.4.5-1 ii perl 5.40.1-8 ii python3 3.13.9-3+b1 ii sensible-utils 0.0.26 ii wdiff 1.2.2-9 Versions of packages devscripts recommends: ii apt 3.3.1 ii curl 8.21.0~rc3-1 ii dctrl-tools 2.24-3+b1 ii debian-keyring 2026.05.24 ii debian-tag2upload-keyring 1.2 ii diffstat 1.69-1 ii dput 1.2.4 ii equivs 2.3.3 ii git-debpush 15.10 ii libdistro-info-perl 1.15 ii libencode-locale-perl 1.05-3 ii libgitlab-api-v4-perl 0.27-1 ii libjson-perl 4.10000-1 ii liblwp-protocol-https-perl 6.15-1 ii libmetacpan-client-perl 2.043000-1 ii libsoap-lite-perl 1.27-3 ii libstring-shellquote-perl 1.04-3 ii liburi-perl 5.35-1 ii licensecheck 3.3.9-1 ii lintian 2.136.2 ii lzip 1.26-1 ii man-db 2.13.1-1 ii patch 2.8-2 ii pristine-tar 1.50+nmu2 ii python3-apt 3.1.0 ii python3-debian 1.1.1 ii python3-magic 2:0.4.27-5 ii python3-requests 2.32.5+dfsg-1 ii python3-unidiff 0.7.5-2 ii python3-xdg 0.28-3 ii sbuild 0.91.9 ii strace 7.0+ds-1 ii unzip 6.0-29 ii wget 1.25.0-2 ii xz-utils 5.8.3-1 Versions of packages devscripts suggests: pn adequate <none> pn at <none> pn autopkgtest <none> pn bls-standalone <none> pn bsd-mailx | mailx <none> ii build-essential 12.12 pn check-all-the-things <none> ii debhelper 14.1 pn default-mta | mail-transport-agent <none> pn diffoscope <none> pn disorderfs <none> pn docker.io <none> pn dose-extra <none> pn duck <none> pn elpa-devscripts <none> pn faketime <none> pn gnuplot <none> pn how-can-i-help <none> ii libauthen-sasl-perl 2.2000-1 pn libdbd-pg-perl <none> pn libterm-size-perl <none> ii libtimedate-perl 2.3500-1 ii mmdebstrap 1.5.7-3 pn mutt <none> ii openssh-client [ssh-client] 1:10.3p1-4 pn piuparts <none> pn postgresql-client <none> pn pristine-lfs <none> ii python3-debianbts 4.1.1 pn python3-pycurl <none> pn quilt <none> pn ratt <none> pn reprotest <none> pn svn-buildpackage <none> pn w3m <none> -- no debconf information
From 1ba5e36e69041671cda1b9ed6c5a2c5e15ba095c Mon Sep 17 00:00:00 2001 From: Serge Schneider <[email protected]> Date: Tue, 16 Jun 2026 14:15:30 +0100 Subject: [PATCH] debrebuild: default Build-Path in dpkg/mmdebstrap when buildinfo omits it The dpkg and mmdebstrap builders dereference $custom_build_path unconditionally and crash when buildinfo had no Build-Path field. Default it to /build/<src>-<ver>/ at the top of each branch. --- scripts/debrebuild.pl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scripts/debrebuild.pl b/scripts/debrebuild.pl index 8962629e..b270c28f 100755 --- a/scripts/debrebuild.pl +++ b/scripts/debrebuild.pl @@ -505,6 +505,8 @@ if ($builder eq "none") { print( "$environment dpkg-buildpackage -uc " . "--host-arch=$host_arch --build=$build\n"); } elsif ($builder eq "dpkg") { + (my $upstream_ver = $srcpkgver) =~ s/^\d+://; + $custom_build_path //= "/build/$srcpkgname-$upstream_ver"; if ("$build_arch\n" ne `dpkg --print-architecture`) { die "must be run on $build_arch\n"; } @@ -680,6 +682,8 @@ if ($builder eq "none") { unlink $sbuildrc; } elsif ($builder eq "mmdebstrap") { + (my $upstream_ver = $srcpkgver) =~ s/^\d+://; + $custom_build_path //= "/build/$srcpkgname-$upstream_ver"; my @binnmucmds = (); if ($cdata->{"Binary-Only-Changes"}) { -- 2.43.0

