Debian Bug report logs - #860428
reprotest: use an existing HOME in the control build

version graph

Package: reprotest; Maintainer for reprotest is Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>; Source for reprotest is src:reprotest (PTS, buildd, popcon).

Reported by: beuc@debian.org

Date: Sun, 16 Apr 2017 16:57:01 UTC

Severity: normal

Found in version reprotest/0.6

Fixed in version reprotest/0.7

Done: Ximin Luo <infinity0@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#860428; Package reprotest. (Sun, 16 Apr 2017 16:57:04 GMT) (full text, mbox, link).


Acknowledgement sent to beuc@debian.org:
New Bug report received and forwarded. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Sun, 16 Apr 2017 16:57:04 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: beuc@debian.org
To: submit@bugs.debian.org
Subject: reprotest: use an existing HOME in the control build
Date: Sun, 16 Apr 2017 18:55:34 +0200
Package: reprotest
Version: 0.6
Severity: normal

Hi,

I was investigating why reprotest would report a reproducible build,
but still produce a different executable than when compiling directly.

After several tests (and then more) I eventually tracked it to HOME
being invariably non-existant in reprotest
(HOME=/nonexistent/first-build and HOME=/nonexistent/second-build),
while my normal compilation environment has an existing home (duh!).

This caused a subtle bug when cross-compiling with mingw and
wine-binfmt:

- existing home: ./configure attempts to run conftest.exe, wine can
  create '.wine', conftest.exe runs OK, configure assumes:
  checking whether we are cross compiling... no

- non-existing home: ./configure attempts to run conftest.exe, wine
  can't create '.wine', conftest.exe fails, configure assumes:
  checking whether we are cross compiling... yes

The respective binaries were very different notably due to a different
config.h.

(and now I understand why one should specify both --host *and* --build
when cross-compiling from autoconf ahah..)


To detect this issue, and probably others, I'd suggest making the
control build's HOME point to an existing directory.


Cheers!
Sylvain



Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#860428; Package reprotest. (Sun, 16 Apr 2017 17:15:07 GMT) (full text, mbox, link).


Message #8 received at 860428@bugs.debian.org (full text, mbox, reply):

From: Mattia Rizzolo <mattia@debian.org>
To: beuc@debian.org, 860428@bugs.debian.org
Subject: Re: Bug#860428: reprotest: use an existing HOME in the control build
Date: Sun, 16 Apr 2017 19:11:08 +0200
[Message part 1 (text/plain, inline)]
On Sun, Apr 16, 2017 at 06:55:34PM +0200, beuc@debian.org wrote:
> After several tests (and then more) I eventually tracked it to HOME
> being invariably non-existant in reprotest
> (HOME=/nonexistent/first-build and HOME=/nonexistent/second-build),
> while my normal compilation environment has an existing home (duh!).

Consider that both sbuild and pbuilder have HOME pointing to something
non-existent.

> - non-existing home: ./configure attempts to run conftest.exe, wine
>   can't create '.wine', conftest.exe fails, configure assumes:
>   checking whether we are cross compiling... yes

This feels quite buggy behaviour.  I suggest you consider this another
bug in your package.

> To detect this issue, and probably others, I'd suggest making the
> control build's HOME point to an existing directory.

By all means, I suggest instead having one build with an existent and
writable HOME, and one with a non-existent one (this leaves out the case
of an existent but not writable, though).

-- 
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  `-
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#860428; Package reprotest. (Sun, 16 Apr 2017 17:45:03 GMT) (full text, mbox, link).


Acknowledgement sent to beuc@debian.org:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Sun, 16 Apr 2017 17:45:03 GMT) (full text, mbox, link).


Message #13 received at 860428@bugs.debian.org (full text, mbox, reply):

From: beuc@debian.org
To: Mattia Rizzolo <mattia@debian.org>
Cc: 860428@bugs.debian.org
Subject: Re: Bug#860428: reprotest: use an existing HOME in the control build
Date: Sun, 16 Apr 2017 19:34:36 +0200
Hi,

On Sun, Apr 16, 2017 at 07:11:08PM +0200, Mattia Rizzolo wrote:
> On Sun, Apr 16, 2017 at 06:55:34PM +0200, beuc@debian.org wrote:
> > After several tests (and then more) I eventually tracked it to HOME
> > being invariably non-existant in reprotest
> > (HOME=/nonexistent/first-build and HOME=/nonexistent/second-build),
> > while my normal compilation environment has an existing home (duh!).
> 
> Consider that both sbuild and pbuilder have HOME pointing to something
> non-existent.

I'm using reprotest outside of Debian packaging.  See e.g.:
http://blog.beuc.net/posts/Practical_basics_of_reproducible_builds_2/


> > - non-existing home: ./configure attempts to run conftest.exe, wine
> >   can't create '.wine', conftest.exe fails, configure assumes:
> >   checking whether we are cross compiling... yes
> 
> This feels quite buggy behaviour.  I suggest you consider this another
> bug in your package.

Yeah I wrote that this is fixed by specifying both --build and --host
to ./configure.  Btw this is one of the first ./configure tests from
autoconf, so nothing specific to my application.


> > To detect this issue, and probably others, I'd suggest making the
> > control build's HOME point to an existing directory.
> 
> By all means, I suggest instead having one build with an existent and
> writable HOME, and one with a non-existent one (this leaves out the case
> of an existent but not writable, though).

I believe we have the same thing in mind - I suggested an existing
(and indeed writable) directory only for the control build, not the
experiment build.

Cheers!
Sylvain



Reply sent to Ximin Luo <infinity0@debian.org>:
You have taken responsibility. (Tue, 19 Sep 2017 12:39:03 GMT) (full text, mbox, link).


Notification sent to beuc@debian.org:
Bug acknowledged by developer. (Tue, 19 Sep 2017 12:39:03 GMT) (full text, mbox, link).


Message #18 received at 860428-close@bugs.debian.org (full text, mbox, reply):

From: Ximin Luo <infinity0@debian.org>
To: 860428-close@bugs.debian.org
Subject: Bug#860428: fixed in reprotest 0.7
Date: Tue, 19 Sep 2017 12:34:53 +0000
Source: reprotest
Source-Version: 0.7

We believe that the bug you reported is fixed in the latest version of
reprotest, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 860428@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Ximin Luo <infinity0@debian.org> (supplier of updated reprotest package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Tue, 19 Sep 2017 14:18:18 +0200
Source: reprotest
Binary: reprotest
Architecture: source
Version: 0.7
Distribution: unstable
Urgency: medium
Maintainer: Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>
Changed-By: Ximin Luo <infinity0@debian.org>
Description:
 reprotest  - Build software and check it for reproducibility.
Closes: 860428 872412
Changes:
 reprotest (0.7) unstable; urgency=medium
 .
   [ Ximin Luo ]
   * Document when one should use --diffoscope-args=--exclude-directory-metadata
     and do this in our Debian package presets.
   * Bump diffoscope Recommends version to >= 84 to support this flag.
   * Import autopkgtest 4.4, with minimal patches.
   * Choose an existent HOME for the control build. (Closes: #860428)
   * Add the ability to vary the user (Closes: #872412)
   * Heavy refactoring to support > 2 builds.
   * Add a variation config language to be able to configure the specifics of
     different variations, and to make it easier to configure further builds.
   * Deprecate the --dont-vary flag, add a --vary flag for better composability.
   * Support >2 builds using the new --extra-build flag.
   * Properly sanitize artifact_pattern to avoid arbitrary shell execution.
   * Update to Standards-Version 4.1.0.
 .
   [ Mattia Rizzolo ]
   * Use https for the Format URI in debian/copyright.
   * Bump debhelper compat level to 10.
 .
   [ Santiago Torres ]
   * Abstract parts of autopkgtest to support running on non-Debian systems.
   * Add a --host-distro flag to support that too.
Checksums-Sha1:
 ab1c80dfb6401ec385ed4ccc0f149bc879f2a3fb 2051 reprotest_0.7.dsc
 a2e231ae6f5f388af34b12efd89f8f8fad1cf593 78940 reprotest_0.7.tar.xz
 c37f5c17c188ca94cbb8d9c79e4c505b49cf606e 8778 reprotest_0.7_source.buildinfo
Checksums-Sha256:
 490bcccc7140fd0a8677bcb5b2af5d9bb89bc891c50dc70f3ebfa2e65b44e5be 2051 reprotest_0.7.dsc
 95eff26232076821fb6b6bb1a72461f797b5464e9472b336e8994e42698865cb 78940 reprotest_0.7.tar.xz
 b6a318e6050880b30c40c01f324d09c037e39553d64a12be5251ac9ea989be69 8778 reprotest_0.7_source.buildinfo
Files:
 2a85c2e8710b253956b75167eed6932c 2051 devel optional reprotest_0.7.dsc
 5f6a3e6e1b87c85749b5a52a79d5ff8b 78940 devel optional reprotest_0.7.tar.xz
 2775759a5f460b6eb0401444e6c256ba 8778 devel optional reprotest_0.7_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQJJBAEBCgAzFiEENmdIajJtsnZtJVVGhg3vO49lC3kFAlnBCyEVHGluZmluaXR5
MEBkZWJpYW4ub3JnAAoJEIYN7zuPZQt5zPYQAKtgJe49e13mW1Gj+OwGEi/N2227
65iZR5zQYQp4RVXKGHnJ29aXAKlMOpMo0nMLbNDC6XzJiuAN86OtmGwnNUvS/j5L
c1JPM48eYLBwsC1dNIPd1AiUjv88jRQQn+17srSG8nnw8cOeYKncAy6AqsEPEGZN
ofSVDJYBeqnd7DkaZZAhVXvc+QC5FoEom8KoWFgEYe7msinCD5rwNPEbiLzchEG2
fKzqFiS0xd4TM/5VMJ1rRlWxDSEUq7QCD4Rq3ArYik7wi7nyrQddBquKIY5jv7ZH
5j/zNAcFRAs+q/f0o9UNrssuzsVoq6kCkd1dOJnk+lcq6S/JhsudVD4sMPp6maAo
srij0gmTOaTg2YETuC3lNL03qPMM0fQQXPc3HDJ26xaB2ohKg0P+mvrnT7+BGiUw
r2LlnKE3ZnkuHIHpEocUA6fqffTvhwaIeuR18KxQhSSwJ+MJuqBELNDCKu7gtfYk
saadGXGRFdMQVvNrzVEaXPmejXIeCkIe8Sg2IBj1EnP8DLwtRDrXOPw3d3pic0UK
flu9GZo9feSUqFHkEvPF3D48XGy1vciLVjYYCM1PEHAPvw8ijBn8Tg2MQMlkcdAl
5ZuDrUPN73kaCFnFmn1FrfvJiyBR5iaMesmmraGkNQ/e8Q9f9JSWaO6F5jwkR2VL
ZRDANDjkixL7gXeT
=H9TY
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 22 Oct 2017 07:27:29 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed May 17 14:05:33 2023; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.