Your message dated Mon, 06 Feb 2017 21:17:00 +0000 with message-id <49e31c86-f09b-cfdb-001f-d4b682daf600@thykier.net> and subject line Re: Bug#854406: unblock: pbuilder/0.228.4 has caused the Debian Bug report #854406, regarding unblock: pbuilder/0.228.4 to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 854406: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854406 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: submit@bugs.debian.org
- Subject: unblock: pbuilder/0.228.4
- From: Mattia Rizzolo <mattia@debian.org>
- Date: Mon, 6 Feb 2017 20:37:16 +0100
- Message-id: <[🔎] 20170206193715.frdsko4n5likqbcw@mapreri.org>
package: release.debian.org user: release.debian.org@packages.debian.org usertags: unblock Hi! I just uploaded a pbuilder adding a very small undocumented feature to help with the reproducible builds project. You can find the small debdiff attached. Previously r-b was using an undocumented and undefined behaviour of pbuilder that just `cd /build/*/debian/..` to move into the unpackaged source; 0.228 changed this with a well defined `cd /build/$pkg-$ver` (also started to call `dpkg-source` with that parameter). r-b has been test building packages in different build paths /build/1st/$pkg-$ver vs /build/$pkg-$ver/2nd and using a hook to mangle the paths, etc; with 0.228 this wouldn't be possible at all (as the `cd` call would fail). 0.228.4 adds an undocumented conf variable BUILDSUBDIR to specify the name of the final source directory, making this work pssible again. Thanks for considering! -- regards, Mattia Rizzolo GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`. more about me: https://mapreri.org : :' : Launchpad user: https://launchpad.net/~mapreri `. `'` Debian QA page: https://qa.debian.org/developer.php?login=mattia `-diffstat for pbuilder-0.228.3 pbuilder-0.228.4 debian/changelog | 19 +++++++++++++++++++ pbuilder-buildpackage | 11 +++++++---- pbuilder-modules | 2 +- pbuilderrc.5 | 14 +++++++++----- 4 files changed, 36 insertions(+), 10 deletions(-) diff -Nru pbuilder-0.228.3/debian/changelog pbuilder-0.228.4/debian/changelog --- pbuilder-0.228.3/debian/changelog 2017-01-24 16:29:13.000000000 +0100 +++ pbuilder-0.228.4/debian/changelog 2017-02-06 20:16:31.000000000 +0100 @@ -1,3 +1,22 @@ +pbuilder (0.228.4) unstable; urgency=medium + + [ James Clarke ] + * modules: Fix bind-mounts on kFreeBSD. + + [ Mattia Rizzolo ] + * buildpackage: + + rename internal variable SUBDIR_NAME to BUILDSUBDIR (the subdirectory of + BUILDDIR where the source will be unpacked). + + make it possible to specify BUILDSUBDIR externally, i.e. through + pbuilderrc. Closes: #854255 + * pbuilderrc.5: + + remove stale information: BUILDDIR is not (by default) the HOME of the + build user anymore. + + document what will happen inside BUILDDIR, and where the unpacked source + will be. + + -- Mattia Rizzolo <mattia@debian.org> Mon, 06 Feb 2017 20:16:31 +0100 + pbuilder (0.228.3) unstable; urgency=medium * pbuilder-modules: Add get_source_options function to extract options for diff -Nru pbuilder-0.228.3/pbuilder-buildpackage pbuilder-0.228.4/pbuilder-buildpackage --- pbuilder-0.228.3/pbuilder-buildpackage 2017-01-23 11:26:48.000000000 +0100 +++ pbuilder-0.228.4/pbuilder-buildpackage 2017-02-06 09:09:28.000000000 +0100 @@ -128,8 +128,11 @@ copydsc "$PACKAGENAME" "${BUILDPLACE}$BUILDDIR" copyinputfile "${BUILDPLACE}$BUILDDIR" -SUBDIR_NAME=$(dsc_get_basename "$PACKAGENAME" "no") -SUBDIR_NAME=${SUBDIR_NAME//_/-} +# don't allow empty values of BUILDSUBDIR +if [ -z "${BUILDSUBDIR:-}" ]; then + BUILDSUBDIR="$(dsc_get_basename "$PACKAGENAME" "no")" + BUILDSUBDIR="${BUILDSUBDIR//_/-}" +fi log.i "Extracting source" if echo "chown $BUILDUSERNAME:$BUILDUSERNAME $BUILDDIR $BUILDDIR/*" | $CHROOTEXEC /bin/bash; then @@ -138,7 +141,7 @@ log.e "pbuilder: Failed chowning to $BUILDUSERNAME:$BUILDUSERNAME" exit 1; fi -if echo "( cd $BUILDDIR; env PATH=\"$PATH\" dpkg-source -x $(basename "$PACKAGENAME") "$SUBDIR_NAME" )" | $UNSHARE $CHROOTEXEC env $SUTOUSER ; then +if echo "( cd $BUILDDIR; env PATH=\"$PATH\" dpkg-source -x $(basename "$PACKAGENAME") "$BUILDSUBDIR" )" | $UNSHARE $CHROOTEXEC env $SUTOUSER ; then : # success else log.e "pbuilder: Failed extracting the source" @@ -181,7 +184,7 @@ if [ -n "$TWICE" ]; then DPKG_COMMANDLINE="$DPKG_COMMANDLINE && $DPKG_COMMANDLINE" fi - DPKG_COMMANDLINE="cd ${BUILDDIR}/$SUBDIR_NAME/ && $DPKG_COMMANDLINE" + DPKG_COMMANDLINE="cd ${BUILDDIR}/$BUILDSUBDIR/ && $DPKG_COMMANDLINE" log.i "Running $DPKG_COMMANDLINE" echo "$DPKG_COMMANDLINE" | $UNSHARE $CHROOTEXEC env $SUTOUSER ) & diff -Nru pbuilder-0.228.3/pbuilder-modules pbuilder-0.228.4/pbuilder-modules --- pbuilder-0.228.3/pbuilder-modules 2017-01-24 15:29:51.000000000 +0100 +++ pbuilder-0.228.4/pbuilder-modules 2017-02-05 16:07:34.000000000 +0100 @@ -412,7 +412,7 @@ log.i "Mounting $mnt to $mntpoint" fi if mkdir -p "$BUILDPLACE/$mntpoint" && - mount -obind "$mnt" "$BUILDPLACE/$mntpoint"; then + mount $MOUNTPARAMS "$mnt" "$BUILDPLACE/$mntpoint"; then # successful. mounted[${#mounted[@]}]="$BUILDPLACE/$mnt" else diff -Nru pbuilder-0.228.3/pbuilderrc.5 pbuilder-0.228.4/pbuilderrc.5 --- pbuilder-0.228.3/pbuilderrc.5 2017-01-18 13:38:23.000000000 +0100 +++ pbuilder-0.228.4/pbuilderrc.5 2017-02-05 16:28:58.000000000 +0100 @@ -82,14 +82,18 @@ .EE .TP .BI "BUILDDIR=" "/build" -The directory inside the chroot where the build happens. This will also be the -.B HOME -of the build user. +The directory inside the chroot where the build happens. +This directory will contain the build products; the source packages will be +unpacked in a subdirectory therein contained, named +.IR $srcpkg - $ver , +with +.I $ver +being the upstream part of the version, without epoch and debian revision. Attention! Some directories \(em such as .B /tmp -\(em are not safe to use since they can be world-writable, and external user can -temper with the build process. +\(em are not safe to use since they can be world-writable, and external users +can temper with the build process. .TP .BI "BUILDPLACE=" "/var/cache/pbuilder/build/" The default place which the chroot is constructed.Attachment: signature.asc
Description: PGP signature
--- End Message ---
--- Begin Message ---
- To: Mattia Rizzolo <mattia@debian.org>, 854406-done@bugs.debian.org
- Subject: Re: Bug#854406: unblock: pbuilder/0.228.4
- From: Niels Thykier <niels@thykier.net>
- Date: Mon, 06 Feb 2017 21:17:00 +0000
- Message-id: <49e31c86-f09b-cfdb-001f-d4b682daf600@thykier.net>
- In-reply-to: <[🔎] 20170206193715.frdsko4n5likqbcw@mapreri.org>
- References: <[🔎] 20170206193715.frdsko4n5likqbcw@mapreri.org>
Mattia Rizzolo: > package: release.debian.org > user: release.debian.org@packages.debian.org > usertags: unblock > > Hi! > > I just uploaded a pbuilder adding a very small undocumented feature to > help with the reproducible builds project. > You can find the small debdiff attached. > > Previously r-b was using an undocumented and undefined behaviour of > pbuilder that just `cd /build/*/debian/..` to move into the unpackaged > source; 0.228 changed this with a well defined `cd /build/$pkg-$ver` > (also started to call `dpkg-source` with that parameter). r-b has been > test building packages in different build paths > /build/1st/$pkg-$ver vs /build/$pkg-$ver/2nd > and using a hook to mangle the paths, etc; with 0.228 this wouldn't be > possible at all (as the `cd` call would fail). > 0.228.4 adds an undocumented conf variable BUILDSUBDIR to specify the > name of the final source directory, making this work pssible again. > > Thanks for considering! > Unlocked, thanks. ~Niels
--- End Message ---