[Reproducible-commits] [presentations] 02/10: FOSDEM15: add section slides, add slides for general approach and strip-nondeterminism
Jérémy Bobbio
lunar at moszumanska.debian.org
Fri Jan 30 23:54:19 UTC 2015
This is an automated email from the git hooks/post-receive script.
lunar pushed a commit to branch master
in repository presentations.
commit 51b659af50c2f9b1af545baad76bdb6363cf74b8
Author: Jérémy Bobbio <lunar at debian.org>
Date: Sat Jan 31 00:26:37 2015 +0100
FOSDEM15: add section slides, add slides for general approach and strip-nondeterminism
---
2015-01-31-FOSDEM15/2015-01-31-FOSDEM15.mdwn | 93 +++++++++++++++++++++++++---
2015-01-31-FOSDEM15/TODO | 2 -
2 files changed, 86 insertions(+), 9 deletions(-)
diff --git a/2015-01-31-FOSDEM15/2015-01-31-FOSDEM15.mdwn b/2015-01-31-FOSDEM15/2015-01-31-FOSDEM15.mdwn
index e77a4d9..d7ccf21 100644
--- a/2015-01-31-FOSDEM15/2015-01-31-FOSDEM15.mdwn
+++ b/2015-01-31-FOSDEM15/2015-01-31-FOSDEM15.mdwn
@@ -1,5 +1,11 @@
\titlepage
+----------------------------------
+
+\begin{center}
+\Huge What?
+\end{center}
+
What are reproducible builds?
-----------------------------
@@ -39,6 +45,12 @@ from a given source
\includegraphics[width=0.8\textwidth]{images/what-proofs-4}
\end{center}
+----------------------------------
+
+\begin{center}
+\Huge Why?
+\end{center}
+
Why?
----
@@ -252,6 +264,12 @@ Wouldn't it be cool?
* More than 21,000 source packages
* “Our priorities are our **users** and **free software**”
+----------------------------------
+
+\begin{center}
+\Huge How?
+\end{center}
+
How?
----
@@ -259,8 +277,16 @@ How?
* Reproduce the build environment
* Eliminate unneeded variations
-Record the build environment
-----------------------------
+----------------------------------
+
+\begin{center}
+\Huge How:
+
+\Large Record the build environment
+\end{center}
+
+*.buildinfo
+-----------
New control file `*.buildinfo` which records:
@@ -269,8 +295,8 @@ New control file `*.buildinfo` which records:
* Checksum of the source package.
* Checksums of the binary packages.
-Record the build environment
-----------------------------
+Example *.buildinfo
+-------------------
\footnotesize
@@ -292,12 +318,20 @@ Build-Environment:
…
~~~
-Reproduce the build environment
--------------------------------
+----------------------------------
+
+\begin{center}
+\Huge How:
+
+\Large Reproduce the build environment
+\end{center}
+
+snapshot.debian.org
+-------------------
`snapshot.debian.org` archives every state of the Debian archive.
- * 2015-01-29: 28 terabytes of data in almost 17 million files.
+2015-01-29: 28 terabytes of data in almost 17 million files.
srebuild
--------
@@ -309,6 +343,37 @@ srebuild
Status: work in progress
+----------------------------------
+
+\begin{center}
+\Huge How:
+
+\Large Eliminate unneeded variations
+\end{center}
+
+General approach
+----------------
+
+ * Gitian (Bitcoin, Tor Browser):
+ - Use a VM: same kernel, same user, same build path
+ - `libfaketime`
+ * Debian:
+ - Fix the tools
+ - Fix the build systems
+ - Work-arounds as last resort
+
+strip-nondeterminism
+--------------------
+
+ * Normalize various file formats
+ * Currently handle:
+ - ar archives (`.a`)
+ - gzip
+ - Java jar
+ - Javadoc HTML
+ - ZIP archives
+ * Written in Perl (like `dpkg-dev`)
+
Investigating packages
----------------------
@@ -392,6 +457,14 @@ Investigating packages (cont.)
- … *easy to extend to new file formats*
* Falls back to binary comparison
+----------------------------------
+
+\begin{center}
+\Huge Test
+
+\Large (and test again)
+\end{center}
+
reproducible.debian.net - in the beginning
------------------------------------------
@@ -530,6 +603,12 @@ Identified issues
\includegraphics[width=0.9\textwidth]{images/stats_issues}
\end{center}
+----------------------------------
+
+\begin{center}
+\Huge Findings
+\end{center}
+
Identified issues
-----------------
diff --git a/2015-01-31-FOSDEM15/TODO b/2015-01-31-FOSDEM15/TODO
index bfa2d1c..8df2bc7 100644
--- a/2015-01-31-FOSDEM15/TODO
+++ b/2015-01-31-FOSDEM15/TODO
@@ -3,8 +3,6 @@ mention
srebuild too early
"Reproduce the build environment" feels out of place + little info
- not mentioned at all yet: strip_nondeterminism and dh_stripnoterminism
-
status / goals / help
help: dak integration, .buildinfo files integrated in the archive #763822
Require matching binary packages from the developer and a buildd before accepting the package in the archive. This could initially be opt-in.
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/presentations.git
More information about the Reproducible-commits
mailing list