diff mbox

[v2,15/15] reproducible: improve help text

Message ID 1479460224-6119-16-git-send-email-jezz@sysmic.org
State Superseded
Headers show

Commit Message

Jérôme Pouiller Nov. 18, 2016, 9:10 a.m. UTC
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
---
 Config.in | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Arnout Vandecappelle Nov. 19, 2016, 12:45 p.m. UTC | #1
On 18-11-16 10:10, Jérôme Pouiller wrote:
> Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
> ---
>  Config.in | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/Config.in b/Config.in
> index 5cf0c4d..2a81202 100644
> --- a/Config.in
> +++ b/Config.in
> @@ -707,6 +707,11 @@ config BR2_REPRODUCIBLE
>  	  this allows to generate exactly identical binaries from one
>  	  build to the other, including on different machines.
>  
> +	  Some restrictions are known on current implementation:
> +	    - Build paths ($OUTDIR and $TOPDIR) have to be the sames for all
> +	      builds
> +	    - Use of lzop is incompatible

 I don't think it makes sense to document the lzop part. For example, I doubt
any of the filesystems except for tar and maybe squashfs are reproducible at the
moment (they probably put things in filesystem order). The lzop thing is really
a small aspect compared to that.

 So I think we should just document the restriction that it has to be the same
output directory:

	  The current implementation is restricted to builds with the same
	  output directory. Many (absolute) paths are recorded in intermediary
	  files, and it is very likely that some of these paths leak into the
	  target rootfs. If you build with the same O=... path, however, the
	  result is identical.

(I'm not 100% satisfied with this explanation but it's a start.)

 Regards,
 Arnout

> +
>  	  This is labeled as an experimental feature, as not all
>  	  packages behave properly to ensure reproducibility.
>  
>
diff mbox

Patch

diff --git a/Config.in b/Config.in
index 5cf0c4d..2a81202 100644
--- a/Config.in
+++ b/Config.in
@@ -707,6 +707,11 @@  config BR2_REPRODUCIBLE
 	  this allows to generate exactly identical binaries from one
 	  build to the other, including on different machines.
 
+	  Some restrictions are known on current implementation:
+	    - Build paths ($OUTDIR and $TOPDIR) have to be the sames for all
+	      builds
+	    - Use of lzop is incompatible
+
 	  This is labeled as an experimental feature, as not all
 	  packages behave properly to ensure reproducibility.