Source: twitter-bootstrap Version: 2.0.2+dfsg-9 Severity: minor Tags: patch upstream User: reproducible-builds@lists.alioth.debian.org Usertags: environment X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org
Dear Maintainer, While working on the “reproducible builds” effort [1], we have noticed that 'twitter-bootstrap' could not be built reproducibly [2]. When using the shell bash, echo does not expand "\n" in the copyright string, leading to an unexpected result. This can be fixed by using printf instead of echo, as illustrated by the attached patch. Once applied, twitter-bootstrap can be built reproducibly in our current experimental framework. Regards, Alexis Bienvenüe. [1] https://wiki.debian.org/ReproducibleBuilds [2] https://reproducible.debian.net/rb-pkg/testing/amd64/twitter-bootstrap.html
diff -Nru twitter-bootstrap-2.0.2+dfsg/debian/patches/06-use-printf-instead-of-echo.patch twitter-bootstrap-2.0.2+dfsg/debian/patches/06-use-printf-instead-of-echo.patch --- twitter-bootstrap-2.0.2+dfsg/debian/patches/06-use-printf-instead-of-echo.patch 1970-01-01 01:00:00.000000000 +0100 +++ twitter-bootstrap-2.0.2+dfsg/debian/patches/06-use-printf-instead-of-echo.patch 2016-05-17 22:06:16.000000000 +0200 @@ -0,0 +1,17 @@ +Description: Use printf instead of echo + "\n" can be expanded or not by echo, depending on the shell used. + So using printf instead of echo is more reliable. +Author: Alexis Bienvenüe <p...@passoire.fr> +Index: twitter-bootstrap-2.0.2+dfsg/Makefile +=================================================================== +--- twitter-bootstrap-2.0.2+dfsg.orig/Makefile ++++ twitter-bootstrap-2.0.2+dfsg/Makefile +@@ -35,7 +35,7 @@ bootstrap: + lessc --compress ${BOOTSTRAP_RESPONSIVE_LESS} > bootstrap/css/bootstrap-responsive.min.css + cat js/bootstrap-transition.js js/bootstrap-alert.js js/bootstrap-button.js js/bootstrap-carousel.js js/bootstrap-collapse.js js/bootstrap-dropdown.js js/bootstrap-modal.js js/bootstrap-tooltip.js js/bootstrap-popover.js js/bootstrap-scrollspy.js js/bootstrap-tab.js js/bootstrap-typeahead.js > bootstrap/js/bootstrap.js + uglifyjs bootstrap/js/bootstrap.js > bootstrap/js/bootstrap.min.tmp.js +- echo "/**\n* Bootstrap.js by @fat & @mdo\n* Copyright 2012 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/" > bootstrap/js/copyright.js ++ printf "/**\n* Bootstrap.js by @fat & @mdo\n* Copyright 2012 Twitter, Inc.\n* http://www.apache.org/licenses/LICENSE-2.0.txt\n*/\n" > bootstrap/js/copyright.js + cat bootstrap/js/copyright.js bootstrap/js/bootstrap.min.tmp.js > bootstrap/js/bootstrap.min.js + rm bootstrap/js/copyright.js bootstrap/js/bootstrap.min.tmp.js + diff -Nru twitter-bootstrap-2.0.2+dfsg/debian/patches/series twitter-bootstrap-2.0.2+dfsg/debian/patches/series --- twitter-bootstrap-2.0.2+dfsg/debian/patches/series 2015-09-25 15:00:00.000000000 +0200 +++ twitter-bootstrap-2.0.2+dfsg/debian/patches/series 2016-05-17 22:06:56.000000000 +0200 @@ -3,3 +3,4 @@ 03-use-nodejs-command.patch 04-build-with-node-1.4.2.patch 05-drop-nc-from-uglifyjs.patch +06-use-printf-instead-of-echo.patch
_______________________________________________ Reproducible-builds mailing list Reproducible-builds@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds