Bug#840741: http-icons: please make the build reproducible
Chris Lamb
lamby at debian.org
Fri Oct 14 11:07:21 UTC 2016
Source: http-icons
Version: 0~20041010-1
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-builds at lists.alioth.debian.org
Hi,
Whilst working on the Reproducible Builds effort [0], we noticed
that http-icons could not be built reproducibly.
The GIF images were being optimised while building by converting
to PNM and back to GIF. The conversion back to GIF introduced some
variation.
Upon further investigation, it looked like this "optimisation" was
actually increasing the sizes of images (!), so I am just actually
just dropping the optimisation here. :)
Patch attached.
[0] https://reproducible-builds.org/
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby at debian.org / chris-lamb.co.uk
`-
-------------- next part --------------
--- a/debian/control 2016-10-14 12:46:59.733298732 +0200
--- b/debian/control 2016-10-14 13:05:41.960636682 +0200
@@ -6,8 +6,7 @@
devscripts,
debhelper,
dh-buildinfo,
- optipng,
- netpbm
+ optipng
Standards-Version: 3.9.3
Homepage: http://www.ideocentric.com/technology/articles/title/apache-icons
Vcs-Git: git://git.debian.org/git/collab-maint/http-icons.git
--- a/debian/rules 2016-10-14 12:46:59.733298732 +0200
--- b/debian/rules 2016-10-14 13:05:46.152701399 +0200
@@ -38,15 +38,11 @@
DEB_COPYRIGHT_CHECK_IGNORE_REGEX = ^(.*\.(gif|png))|debian/(changelog|copyright(|_hints|_newhints))$
# optimize images, and recreate broken blank.png from blank.gif
-CDBS_BUILD_DEPENDS += , optipng, netpbm
+CDBS_BUILD_DEPENDS += , optipng
build/$(pkg):: debian/stamp-optimize-images
debian/stamp-optimize-images:
mkdir -p build/small; \
- set -e; for img in *.gif small/*.gif; do \
- giftopnm --alphaout=build/$$img.alpha $$img > build/$$img.pnm; \
- ppmtogif -sort -alpha=build/$$img.alpha build/$$img.pnm > build/$$img; \
- rm -f build/$$img.alpha build/$$img.pnm; \
- done
+ set -e; for img in *.gif small/*.gif; do cp -v $$img build/$$img; done
find . -maxdepth 1 -name '*.png' \! -name 'blank.png' -exec optipng -nx -force {} -dir build {} \;
optipng -nx -force -out build/blank.png blank.gif
optipng -nx -force -dir build/small small/*.png
More information about the Reproducible-builds
mailing list