Bug#931580: pbuilder: SOURCE_ONLY_CHANGES=yes fails to work with pdebuild-internal

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Bug#931580: pbuilder: SOURCE_ONLY_CHANGES=yes fails to work with pdebuild-internal

Francesco Poli (wintermute)
Package: pbuilder
Version: 0.230.4
Severity: normal
Tags: patch

Hi!

I read in the [documentation] that [source only uploads] are recommended.
No, it's more than that: since the release of buster, they seem to be
[mandatory] for bullseye.

[documentation]: <https://wiki.debian.org/DebianMaintainer/Tutorial>
[source only uploads]: <https://wiki.debian.org/SourceOnlyUpload>
[mandatory]: <https://lists.debian.org/debian-devel-announce/2019/07/msg00002.html>

I tried to set SOURCE_ONLY_CHANGES=yes in my sid chroot configuration
file:

  $ cat ~/.pbuilder/sid.conf
  export HOME=/home/my_user_name
  DISTRIBUTION="sid"
  COMPONENTS="main"
  MIRRORSITE="http://deb.debian.org/debian"
  APTCACHE="${HOME}/var/cache/pbuilder/aptcache/${DISTRIBUTION}/"
  APTCACHEHARDLINK="no"
  AUTOCLEANAPTCACHE="yes"
  BASETGZ="${HOME}/var/cache/pbuilder/${DISTRIBUTION}-base.tgz"
  BUILDPLACE="${HOME}/var/cache/pbuilder/build/"
  BUILDRESULT="${HOME}/var/cache/pbuilder/result/${DISTRIBUTION}/"
  HOOKDIR=""
  DEBBUILDOPTS="-i -I"
  SOURCE_ONLY_CHANGES="yes"
  BINDMOUNTS=""
  USE_PDEBUILD_INTERNAL="yes"
  DEBOOTSTRAPOPTS[0]="--variant=buildd"
  DEBOOTSTRAP="debootstrap"
  EXTRAPACKAGES="gnupg debian-archive-keyring"
  USEPROC="yes"
  USEDEVPTS="yes"
  USEDEVFS="no"
  REMOVEPACKAGES="lilo elilo grub-legacy grub-pc"
  BUILDSOURCEROOTCMD="fakeroot"
  PBUILDERROOTCMD="sudo"
  BUILDUSERID="9999"
  BUILDUSERNAME="pbuilder"
  export DEBIAN_FRONTEND="noninteractive"
  AUTO_DEBSIGN="yes"
  PKGNAME_LOGFILE="yes"
  PKGNAME_LOGFILE_EXTENSION=".buildlog"
  export debian_chroot="pbuild$$"

but it fails to have any effect.

The fact is that I use pdebuild-internal and the generation of the
source .changes file is not implemented for this operation mode,
as [confirmed] by James Clarke.

[confirmed]: <https://bugs.debian.org/867822#30>

The attached patch implements the optional generation of the source
.changes file for pdebuild-internal operation mode.
It also implements the signing of all the generated .changes file
(both the binary and source .changes file, if both were generated;
only one of them, if one was generated).
Please note that, the --no-re-sign option is passed to debsign
from the second invocation on, in order to avoid breaking the
checksums of any previously signed .changes file.
See also bug [#906063], which is related to checksum breaking
(I don't know if my patch also fixes that bug, though...).

[#906063]: <https://bugs.debian.org/906063>

I hereby release my patch under the same terms as pbuilder itself,
that is to say, under the terms of the GNU GPL v2 or later.


Please apply my patch, so that pdebuild-internal users may generate
source .changes files.

Thanks for your time!
Bye.



-- System Information:
Debian Release: 10.0
  APT prefers testing
  APT policy: (800, 'testing'), (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-5-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages pbuilder depends on:
ii  debconf [debconf-2.0]  1.5.71
ii  debootstrap            1.0.114
ii  dpkg-dev               1.19.7

Versions of packages pbuilder recommends:
ii  devscripts  2.19.5
ii  eatmydata   105-7
ii  fakeroot    1.23-1
ii  iproute2    4.20.0-2
ii  net-tools   1.60+git20180626.aebd88e-1
ii  sudo        1.8.27-1

Versions of packages pbuilder suggests:
pn  cowdancer   <none>
pn  gdebi-core  <none>

-- debconf information excluded

source_only_for_pdebuild_internal.diff.gz (1K) Download Attachment