Debian Bug report logs -
#825092
grass: please make the build reproducible (fileordering, randomness)
Reported by: Alexis Bienvenüe <pado@passoire.fr>
Date: Mon, 23 May 2016 14:09:01 UTC
Severity: wishlist
Tags: patch, upstream
Found in version grass/7.0.4-1
Fixed in version grass/7.0.4-2
Done: Bas Couwenberg <sebastic@debian.org>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, reproducible-builds@lists.alioth.debian.org, Debian GIS Project <pkg-grass-devel@lists.alioth.debian.org>:
Bug#825092; Package src:grass.
(Mon, 23 May 2016 14:09:05 GMT) (full text, mbox, link).
Acknowledgement sent
to Alexis Bienvenüe <pado@passoire.fr>:
New Bug report received and forwarded. Copy sent to reproducible-builds@lists.alioth.debian.org, Debian GIS Project <pkg-grass-devel@lists.alioth.debian.org>.
(Mon, 23 May 2016 14:09:05 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Source: grass
Version: 7.0.4-1
Severity: wishlist
Tags: patch upstream
User: reproducible-builds@lists.alioth.debian.org
Usertags: fileordering randomness
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org
Control: block -1 by 825088
Dear Maintainer,
While working on the “reproducible builds” effort [1], we have noticed
that 'grass' could not be built reproducibly.
There are several reproducibility issues:
1) File ordering issues - the build result depends on the order of the
files listed with readdir or equivalent.
* in tools/build_modules_xml.py - see patch sort-build-modules-list
* in lib/db/dbmi_base/dbmscap.c (this affects options order in the
html/db.*.html files) - see patch sort-dbmscap that builds an ordered list.
* in include/Make/Vars.make (this affects the order in which object
files are merged) - see patch sort-obj-files
2) Randomness issue: html/colortables/random.png is built using a
pseudo-random generator seeded with build-time value. See patch
srand48_auto-from-SOURCE_DATE_EPOCH that uses the SOURCE_DATE_EPOCH [2]
environment variable (when set) to set a seed from last debian/changelog
entry date.
3) Makefile mistake: from
https://buildd.debian.org/status/fetch.php?pkg=grass&arch=i386&ver=7.0.4-1&stamp=1462121195,
it seems to me that the binary NAD files are not installed properly:
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/prvi
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/hawaii
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/alaska
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/stgeorge
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/FL
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/WO
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/TN
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/stlrnc
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/stpaul
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/conus
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/MD
/usr/bin/install -c -m 644 OBJ.i686-pc-linux-gnu/prvi
/«PKGBUILDDIR»/dist.i686-pc-linux-gnu/etc/proj/nad/WI
The single OBJ.i686-pc-linux-gnu/prvi file is here installed to *all*
/etc/proj/nad files.
See the patch binary-nad-install for a fix.
4) nad2bin issue: nad2bin has unreproducible output (see #825088)
Once these proposed patches are applied (and #825088 fixed), grass can
be built reproducibly in our current experimental framework.
Regards,
Alexis Bienvenüe.
[1] https://wiki.debian.org/ReproducibleBuilds
[2] https://reproducible-builds.org/specs/source-date-epoch/
[sort-build-modules-list (text/plain, attachment)]
[sort-dbmscap (text/plain, attachment)]
[sort-obj-files (text/plain, attachment)]
[srand48_auto-from-SOURCE_DATE_EPOCH (text/plain, attachment)]
[binary-nad-install (text/plain, attachment)]
Added blocking bug(s) of 825092: 825088
Request was from Alexis Bienvenüe <pado@passoire.fr>
to submit@bugs.debian.org.
(Mon, 23 May 2016 14:09:05 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian GIS Project <pkg-grass-devel@lists.alioth.debian.org>:
Bug#825092; Package src:grass.
(Mon, 23 May 2016 22:27:04 GMT) (full text, mbox, link).
Acknowledgement sent
to Sebastiaan Couwenberg <sebastic@xs4all.nl>:
Extra info received and forwarded to list. Copy sent to Debian GIS Project <pkg-grass-devel@lists.alioth.debian.org>.
(Mon, 23 May 2016 22:27:04 GMT) (full text, mbox, link).
Message #12 received at 825092@bugs.debian.org (full text, mbox, reply):
Control: tags -1 pending
Hi Alexis,
Also many thanks for this comprehensive set of patches.
They're included in the package and forwarded upstream.
I'll give the buildds a chance to build the updated proj package before
uploading the new grass revision to unstable.
Kind Regards,
Bas
--
GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1
Added tag(s) pending.
Request was from Sebastiaan Couwenberg <sebastic@xs4all.nl>
to 825092-submit@bugs.debian.org.
(Mon, 23 May 2016 22:27:04 GMT) (full text, mbox, link).
Reply sent
to Bas Couwenberg <sebastic@debian.org>:
You have taken responsibility.
(Tue, 24 May 2016 18:36:35 GMT) (full text, mbox, link).
Notification sent
to Alexis Bienvenüe <pado@passoire.fr>:
Bug acknowledged by developer.
(Tue, 24 May 2016 18:36:35 GMT) (full text, mbox, link).
Message #19 received at 825092-close@bugs.debian.org (full text, mbox, reply):
Source: grass
Source-Version: 7.0.4-2
We believe that the bug you reported is fixed in the latest version of
grass, 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 825092@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Bas Couwenberg <sebastic@debian.org> (supplier of updated grass 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, 24 May 2016 20:01:10 +0200
Source: grass
Binary: grass grass-core grass-gui grass-doc grass-dev-doc grass-dev
Architecture: source amd64 all
Version: 7.0.4-2
Distribution: unstable
Urgency: medium
Maintainer: Debian GIS Project <pkg-grass-devel@lists.alioth.debian.org>
Changed-By: Bas Couwenberg <sebastic@debian.org>
Description:
grass - Geographic Resources Analysis Support System (GRASS GIS)
grass-core - GRASS GIS core components
grass-dev - GRASS GIS development files
grass-dev-doc - GRASS GIS Programmers' Manual
grass-doc - GRASS GIS user documentation
grass-gui - GRASS GIS graphical user interfaces
Closes: 825092
Changes:
grass (7.0.4-2) unstable; urgency=medium
.
* Add patches by Alexis Bienvenüe to make the build reproducible.
(closes: #825092)
Checksums-Sha1:
e7df44f8476ee26c3e9917c620e6f203356032dd 2749 grass_7.0.4-2.dsc
abc9618401c26c46d463bea2c16b817bc47f4312 26288 grass_7.0.4-2.debian.tar.xz
db1aa0a4695b30c26c64c222ebd6dcb54fe2521a 10437818 grass-core-dbgsym_7.0.4-2_amd64.deb
23e8f040302d467aab9d500010cf84b1e9c8d96e 7346968 grass-core_7.0.4-2_amd64.deb
2403ef43c4e6896ec5828e9ec7b0e7fbed99cc4e 3538 grass-dev-dbgsym_7.0.4-2_amd64.deb
1ac260f70176a947647f8abf74f212ad115250f0 7407052 grass-dev-doc_7.0.4-2_all.deb
471b15a34a73ead931af4a15ad2f743e41c5a537 196754 grass-dev_7.0.4-2_amd64.deb
5dee06eeb790e3cd68a5daffd47cdcff568f553e 19259360 grass-doc_7.0.4-2_all.deb
4157994f2b8c56cf535f7cceaf8161747a20f4a2 3012454 grass-gui_7.0.4-2_amd64.deb
87c40d72aaa4bd281a3aa905408bf7c9796a989e 18596 grass_7.0.4-2_all.deb
Checksums-Sha256:
0f22639b36d0e99b7bf71db99ae6e4737efb92bb678c5d257877dd9c53c2e529 2749 grass_7.0.4-2.dsc
b07d7a02a2b71265a357dd4025793224d5c0e3c8fb71663804620416623d4029 26288 grass_7.0.4-2.debian.tar.xz
d1d23dde8e1c0228a440267201c59e2bba05c509aa96aeb349433a2b1d22a815 10437818 grass-core-dbgsym_7.0.4-2_amd64.deb
b8d8418c1868647784b3db2d3172da9678979cfe5eac6ed9a77ce7d31458be85 7346968 grass-core_7.0.4-2_amd64.deb
545a54a6028402121da91434d9cf8e3b4263188bee0a4d540c8a6f0221d33f33 3538 grass-dev-dbgsym_7.0.4-2_amd64.deb
dd3fd36588e851be6bb0f9ca8f025099403430481e21f4e270209f4ac8d0668e 7407052 grass-dev-doc_7.0.4-2_all.deb
df3fa2c4fbcde34ff15e1bb3fb5acdf1382f9b9e04df0bd37d1ac3a690815a50 196754 grass-dev_7.0.4-2_amd64.deb
3fb2d0ee903f40a0c996f9abee9911b5ac252bed7188e70d963288218b5f6477 19259360 grass-doc_7.0.4-2_all.deb
3290bb8908a44b3056cbe3c63b1a6d1aad6f3722dc995e23a62bcb97294c0f44 3012454 grass-gui_7.0.4-2_amd64.deb
9f8d20196d69df67f1dccb977fb9f3aa998f6887c4693cfb81a63337b036ab41 18596 grass_7.0.4-2_all.deb
Files:
0ec76ce3fa5c480ea4e8deb40762fb37 2749 science optional grass_7.0.4-2.dsc
8096644e5759ffd189f2c6f723e50e7a 26288 science optional grass_7.0.4-2.debian.tar.xz
6d96bc5068bdc2185d6ac65d242bf0ac 10437818 debug extra grass-core-dbgsym_7.0.4-2_amd64.deb
e10483525b611ead6a3c0918ab7ca353 7346968 science optional grass-core_7.0.4-2_amd64.deb
5c6aa0e2eb32c2734d5c6d4e335dc202 3538 debug extra grass-dev-dbgsym_7.0.4-2_amd64.deb
1f11688560f945f390f3a33e113ffa82 7407052 doc optional grass-dev-doc_7.0.4-2_all.deb
fee11503b7a1fc9a4356b71496fe3971 196754 devel optional grass-dev_7.0.4-2_amd64.deb
f7638a19efea94663a6c73965b304046 19259360 doc optional grass-doc_7.0.4-2_all.deb
a8a2472396dd0802f5ff38d7a9b60efd 3012454 science optional grass-gui_7.0.4-2_amd64.deb
b01000d0e02fbf9a1cde48216d9b3177 18596 metapackages optional grass_7.0.4-2_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAEBCgAGBQJXRJwqAAoJEGdQ8QrojUrxzIUP/0ycL3SL5fDIot8V8vt2ps9o
BXGqTt8BB9FhvL6j4AtCX7fH/J9BXnlaSzTr7mEESo9WL06F31NbQ1wsklFk5IIl
Bfx/LyqGt8KgEnnXnaHB1/g48uKmitmOMyhMtQCUuS/Pcf1YahgNxSQmzDWI7ih8
gZbUSCJxqgwDFw1ehAep1CQdPXna+FOpJjpMJhQSMNRvvWGXxlfHMSkOnPjhGQ7B
SZIs1a9VwUuPveD9FoTgNrF1atHQNKGzrbMeq2RpVBOUwqI8GrBf/rHMoJmyl2yy
v+OR7uIdCm1rjEjCPPAUd/HVc9m9WfzGbI/ORdedv/2RetW+fRtJQ0aJsZvHZOiY
tpRhNAlzRZvPVhA4x1lxfj2MqcxcPXOtrqCNq/0lS+8HZfpkXFeBTJFUA5f0oMkJ
7dQX+9pcMlp6/xPNQ0JEBw41PeEDROdiO8V2atSt1dOmbaGbub69Hc9dwiSKZ5ZG
YU5K/qqje8oqLcDPodMYyl2RV1/DeQ8OYa89gnFgeyKo7XuFZGUQNmOcqV3Do6N0
raLeTo2pcOUmGSVNPhHctdVc42ixbxnA/JSqZzVv5U2UDa+BFp0hYGQckGMkMjXF
oM+k5VWrw1fzcmryraR2BgMQlgANIKkwyN55InExENTX+7r8UWVbJwfbI9ZvxocI
LYr5MI1KDSKdZvta+fUp
=IQzF
-----END PGP SIGNATURE-----
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Mon, 27 Jun 2016 07:37:56 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 13:51:04 2023;
Machine Name:
buxtehude
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.