[presentations] 01/02: copied from 2016-10-13-OpenWrt-Summit

Holger Levsen holger at layer-acht.org
Wed Jan 25 17:29:07 UTC 2017


This is an automated email from the git hooks/post-receive script.

holger pushed a commit to branch master
in repository presentations.

commit 20cf8acf7e5204e457a45d02227d3dbea0f159b6
Author: Holger Levsen <holger at layer-acht.org>
Date:   Wed Jan 25 17:51:36 2017 +0100

    copied from 2016-10-13-OpenWrt-Summit
---
 2017-01-27-devconf.cz/2017-01-27-devconf.cz.tex    | 986 +++++++++++++++++++++
 2017-01-27-devconf.cz/Makefile                     |  29 +
 .../demo/giftrans_1.12.2-19.debian.tar.xz          | Bin 0 -> 6820 bytes
 2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.dsc  |  43 +
 .../demo/giftrans_1.12.2.orig.tar.gz               | Bin 0 -> 9036 bytes
 2017-01-27-devconf.cz/images/2016-01-26-180836.jpg | Bin 0 -> 130311 bytes
 2017-01-27-devconf.cz/images/31c3.png              | Bin 0 -> 435876 bytes
 2017-01-27-devconf.cz/images/archlinux.png         | Bin 0 -> 7149 bytes
 .../images/cccamp2015_lunar_random.png             | Bin 0 -> 338020 bytes
 2017-01-27-devconf.cz/images/cii_logo.png          | Bin 0 -> 7099 bytes
 2017-01-27-devconf.cz/images/coreboot.png          | Bin 0 -> 3764 bytes
 .../images/diffoscope_example_html.png             | Bin 0 -> 98085 bytes
 2017-01-27-devconf.cz/images/diffoscope_logo.png   | Bin 0 -> 2335 bytes
 2017-01-27-devconf.cz/images/electrobsd.png        | Bin 0 -> 8608 bytes
 2017-01-27-devconf.cz/images/fedora.png            | Bin 0 -> 5508 bytes
 2017-01-27-devconf.cz/images/freebsd.png           | Bin 0 -> 21100 bytes
 2017-01-27-devconf.cz/images/guix.png              | Bin 0 -> 6440 bytes
 2017-01-27-devconf.cz/images/lede.png              | Bin 0 -> 9455 bytes
 .../images/linux_foundation_logo.png               | Bin 0 -> 10163 bytes
 2017-01-27-devconf.cz/images/netbsd.png            | Bin 0 -> 7978 bytes
 2017-01-27-devconf.cz/images/openlogo-nd.pdf       | Bin 0 -> 3168 bytes
 2017-01-27-devconf.cz/images/openwrt.png           | Bin 0 -> 6785 bytes
 2017-01-27-devconf.cz/images/profitbricks_logo.png | Bin 0 -> 3778 bytes
 2017-01-27-devconf.cz/images/rbwww1.png            | Bin 0 -> 53235 bytes
 .../images/stats_bugs_sin_ftbfs_state.png          | Bin 0 -> 27940 bytes
 .../images/stats_builds_per_day_amd64.png          | Bin 0 -> 52732 bytes
 .../images/stats_meta_pkg_state_required.png       | Bin 0 -> 25817 bytes
 2017-01-27-devconf.cz/images/stats_pkg_state.png   | Bin 0 -> 30283 bytes
 .../images/stats_pkg_state_armhf.png               | Bin 0 -> 26789 bytes
 .../images/stats_pkg_state_testing.png             | Bin 0 -> 30176 bytes
 .../images/stats_pkg_state_unstable.png            | Bin 0 -> 31976 bytes
 2017-01-27-devconf.cz/images/strawhorse.png        | Bin 0 -> 226278 bytes
 2017-01-27-devconf.cz/images/swirl-lightest.pdf    | Bin 0 -> 3540 bytes
 2017-01-27-devconf.cz/images/wholeworld.jpg        | Bin 0 -> 156812 bytes
 2017-01-27-devconf.cz/notes                        |  75 ++
 2017-01-27-devconf.cz/outline                      |  58 ++
 36 files changed, 1191 insertions(+)

diff --git a/2017-01-27-devconf.cz/2017-01-27-devconf.cz.tex b/2017-01-27-devconf.cz/2017-01-27-devconf.cz.tex
new file mode 100644
index 0000000..2cfa2b1
--- /dev/null
+++ b/2017-01-27-devconf.cz/2017-01-27-devconf.cz.tex
@@ -0,0 +1,986 @@
+\documentclass[14pt,aspectratio=169]{beamer}
+\setbeamertemplate{caption}[numbered]
+\setbeamertemplate{caption label separator}{:}
+\setbeamercolor{caption name}{fg=normal text.fg}
+\usepackage{amssymb,amsmath}
+\usepackage{ifxetex,ifluatex}
+\usepackage{fixltx2e} % provides \textsubscript
+\usepackage{lmodern}
+\ifxetex
+  \usepackage{fontspec,xltxtra,xunicode}
+  \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+  \newcommand{\euro}{€}
+\else
+  \ifluatex
+    \usepackage{fontspec}
+    \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+    \newcommand{\euro}{€}
+  \else
+    \usepackage[T1]{fontenc}
+    \usepackage[utf8]{inputenc}
+      \fi
+\fi
+% use upquote if available, for straight quotes in verbatim environments
+\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
+% use microtype if available
+\IfFileExists{microtype.sty}{\usepackage{microtype}}{}
+\PassOptionsToPackage{hyphens}{url}
+\usepackage{hyperref}
+\usepackage{ulem}
+
+% Comment these out if you don't want a slide with just the
+% part/section/subsection/subsubsection title:
+\AtBeginPart{
+  \let\insertpartnumber\relax
+  \let\partname\relax
+  \frame{\partpage}
+}
+\AtBeginSection{
+  \let\insertsectionnumber\relax
+  \let\sectionname\relax
+  \begin{frame}[plain]
+    \tableofcontents[currentsection]
+  \end{frame}
+}
+\AtBeginSubsection{
+  \let\insertsubsectionnumber\relax
+  \let\subsectionname\relax
+  \frame{\subsectionpage}
+}
+
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{6pt plus 2pt minus 1pt}
+\setlength{\emergencystretch}{3em}  % prevent overfull lines
+\setcounter{secnumdepth}{0}
+% Thanks Richard Darst on how to get a nice Beamer theme.
+% See http://rkd.zgib.net/wiki/DebianBeamerThemes
+
+\usepackage{multicol}
+\usepackage[absolute,overlay]{textpos}
+\usepackage{tikz}
+\usepackage{ctable}
+\usetikzlibrary{positioning}
+
+\usebackgroundtemplate{\includegraphics[width=\paperwidth]{images/swirl-lightest.pdf}}
+\newif\ifplacelogo
+\placelogotrue
+\logo{\ifplacelogo\includegraphics[viewport=274 335 360 440,width=1cm]{images/openlogo-nd.pdf}\fi}
+
+\definecolor{debianred}{rgb}{.780,.000,.211} % 199,0,54
+\definecolor{debianblue}{rgb}{0,.208,.780} % 0,53,199
+\definecolor{debianlightbackgroundblue}{rgb}{.941,.941,.957} % 240,240,244
+\definecolor{debianbackgroundblue}{rgb}{.776,.784,.878} % 198,200,224
+
+\usetheme{Boadilla}
+\setbeamertemplate{navigation symbols}{}
+
+\usecolortheme[named=debianbackgroundblue]{structure}
+\setbeamercolor{normal text}{fg=black}
+\setbeamercolor{titlelike}{fg=debianblue}
+\setbeamercolor{sidebar}{fg=debianred,bg=debianbackgroundblue}
+
+\setbeamercolor{palette sidebar primary}{fg=debianred}
+\setbeamercolor{palette sidebar secondary}{fg=debianred}
+\setbeamercolor{palette sidebar tertiary}{fg=debianred}
+\setbeamercolor{palette sidebar quaternary}{fg=debianred}
+
+\setbeamercolor{section in toc}{fg=debianred}
+\setbeamercolor{subsection in toc}{parent=debianred}
+
+\setbeamercolor{item}{fg=debianred}
+
+\setbeamercolor{block title}{fg=debianblue}
+
+\title[Reproducible builds everywhere]{Reproducible
+builds everywhere \\ eg. in Debian, OpenWrt and LEDE}
+\subtitle{Bit by bit identical binaries \\
+from a given source}
+\author[h01ger and lynxis]{%
+   \texorpdfstring{
+            \centering
+            Alexander 'lynxis' Couzens\\
+            Holger 'h01ger' Levsen
+   }{h01ger and lynxis}}
+\date[OpenWrt Summit, Berlin]{%
+ OpenWrt Summit in Berlin, Germany\\
+ \small{2016-10-13}}
+
+\begin{document}
+
+\begin{frame}[plain]
+ \titlepage
+\end{frame}
+
+\begin{frame}
+ \frametitle{about h01ger}
+
+ \begin{itemize}
+  \item \small{\texttt{B8BF 5413 7B09 D35C F026  FE9D 091A B856 069A AA1C}}
+  \item Debian user since 1995
+  \item Debian contributor since 2001
+  \item OpenWrt user since 2006
+  \item Debian developer since 2007
+  \item DebConf organizer,
+  founded the DebConf video team
+   \begin{itemize}
+    \item \texttt{http://video.debian.net}
+   \end{itemize}
+ \item Debian-Edu (Debian for education)
+  \item Debian QA (quality assurance)
+  \begin{itemize}
+   \item \texttt{https://piuparts.debian.org}
+   \item \texttt{https://jenkins.debian.net} (~1200 jobs continously testing Debian)
+  \end{itemize}
+  \item Debian Reproducible builds team member
+  \begin{itemize}
+   \item since April 2015 funded by the Linux Foundation
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\placelogofalse
+
+\begin{frame}
+ \frametitle{about lynxis}
+
+ \begin{itemize}
+  \item \small{\texttt{390D CF78 8BF9 AA50 4F8F  F1E2 C29E 9DA6 A0DF 8604}}
+  \item Debian user since 2003
+  \item OpenWrt user since 2006
+  \item LEDE founding member
+  \item coreboot hacker
+  \item tests.reproducible-builds.org contributor
+  \item CCC member
+ \end{itemize}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.08\paperwidth, 0.12\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.15\paperheight]{images/lede.png}
+  };
+ \end{tikzpicture}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.85\paperwidth, 0.1\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.3\paperheight]{images/openwrt.png}
+  };
+ \end{tikzpicture}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{about OpenWrt and LEDE}
+
+ \begin{itemize}
+  \item In this talk we'll ignore the distinction between the two:
+  \item when we say "OpenWrt" me mean "LEDE and OpenWrt",
+  \item when we say "LEDE" me mean "OpenWrt and LEDE",
+  \item when we say "OpenWrt and LEDE" we mean "LEDE and OpenWrt".
+  \item<2> They are two projects though and when there are differences we'll
+  mention them.
+ \end{itemize}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.14\paperwidth, 0.1\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.3\paperheight]{images/openwrt.png}
+  };
+ \end{tikzpicture}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.93\paperwidth, 0.11\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.15\paperheight]{images/lede.png}
+  };
+ \end{tikzpicture}
+
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Who are you?}
+ \begin{itemize}
+  \item<2-4> Seen a talk about reproducible builds?
+  \item<3-4> Contributed to the effort?
+  \item<4> Uses Debian or a Debian based system?
+ \end{itemize}
+\end{frame}
+
+\placelogotrue
+
+\begin{frame}
+ \frametitle{Debian reproducible builds team}
+ \begin{center}
+  \begin{columns}
+   \footnotesize
+   \column{.30\linewidth}
+    {akira} \\
+    {Alexis Bienvenüe} \\
+    {Andrew Ayer} \\
+    {Asheesh Laroia} \\
+    {Ceridwen} \\
+    {Chris Lamb} \\
+    {Chris West} \\
+    {Christoph Berg} \\
+    {Daniel Kahn Gillmor} \\
+    {Daniel Shahaf} \\
+    David Suarez \\
+    {Dhole} \\
+    Drew Fisher \\
+    Emmanuel Bourg \\
+    Emanuel Bronshtein \\
+    Esa Peuha \\
+    \column{.30\linewidth}
+    {Fabian Wolff} \\
+    {Guillem Jover} \\
+    Hans-Christoph Steiner \\
+    {Helmut Grohne} \\
+    \only<1>{Holger Levsen}\only<2>{{\color{debianred} Holger Levsen}} \\
+    HW42 \\
+    Intrigeri \\
+    {Jelmer Vernooij} \\
+    {josch} \\
+    Juan Picca \\
+    {Lunar} \\
+    Mathieu Bridon \\
+    {Mattia Rizzolo} \\
+    Nicolas Boulenguez \\
+    {Niels Thykier} \\
+    Niko Tyni \\
+   \column{.30\linewidth}
+    {Paul Wise} \\
+    Peter De Wachter \\
+    Philip Rinn \\
+    {Reiner Herrmann} \\
+    {Santiago Vila} \\
+    {Sascha Steinbiss} \\
+    {Satyam Zode} \\
+    {Scarlett Clark} \\
+    {Stefano Rivera} \\
+    {Stéphane Glondu} \\
+    {Steven Chamberlain} \\
+    Tom Fitzhenry \\
+    {Valerie Young} \\
+    Valentin Lorentz \\
+    {Wookey} \\
+    {Ximin Luo} \\
+  \end{columns}
+ \end{center}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{jenkins.debian.net.git contributors}
+ \begin{center}
+  \begin{columns}
+   \small
+   \column{.46\linewidth}
+    {akira} \\
+    \only<1>{Alexander Couzens}\only<2>{{\color{debianred} Alexander Couzens}} \\
+    \only<1>{Levente 'anthraxx' Polyak}\only<2>{{\color{debianred} Levente 'anthraxx' Polyak}} \\
+    {Antonio Terceiro} \\
+    {Axel Beckert} \\
+    \only<1>{Bryan Newbold}\only<2>{{\color{debianred} Bryan Newbold}} \\
+    {Chris Lamb} \\
+    {Daniel Kahn Gillmor} \\
+    {Gabriele Giacone} \\
+    \only<1>{Hans-Christoph Steiner}\only<2>{{\color{debianred} Hans-Christoph Steiner}} \\
+    Helmut Grohne \\
+    \only<1>{Holger Levsen}\only<2>{{\color{debianred} Holger Levsen}} \\
+    \only<1>{HW42}\only<2>{{\color{debianred} HW42}} \\
+    {James McCoy} \\
+    {Joachim Breitner} \\
+   \column{.46\linewidth}
+    {Johannes 'josch' Schauer} \\
+    {Jérémy Bobbio} \\
+    {Mattia Rizzolo} \\
+    {Niels Thykier} \\
+    {Paul Wise} \\
+    {Petter Reinholdtsen} \\
+    {Philip Hands} \\
+    \only<1>{Reiner Herrmann}\only<2>{{\color{debianred} Reiner Herrmann}} \\
+    {Samuel Thibault} \\
+    {Steven Chamberlain} \\
+    {Tails developers} \\
+    {Ulrike Uhlig} \\
+    {Wolfgang Schweer} \\
+    {Wouter Verhelst} \\
+  \end{columns}
+ \end{center}
+\end{frame}
+
+\placelogofalse
+
+
+\section{Motivation}
+
+\begin{frame}
+ \frametitle{The problem}
+
+ \begin{center}
+  \includegraphics[width=0.7\textwidth]{images/31c3.png}
+
+  Available on \url{media.ccc.de}, 31c3
+ \end{center}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{A few examples from that 31c3 talk}
+ \begin{itemize}
+  \item CVE-2002-0083: remote root exploit in \texttt{sshd}, a single bit difference in the binary
+  \item<2-5> 31c3 talk had a live demo with a kernel module modifying source code in memory only
+  \item<3-5> How can you be sure what's running on your machine or on a build
+  daemon network connected to the net? Do you ever leave your computers physically alone?
+  \item<4-5> Huge financial incentives to crack developer machines or a project's
+  build infrastructure…
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Another example from real life}
+
+ At a CIA conference in 2012:
+ \begin{center}
+  \includegraphics[width=0.8\textwidth]{images/strawhorse.png}
+
+  {\footnotesize
+  \url{firstlook.org/theintercept/2015/03/10/ispy-cia-campaign-steal-apples-secrets/}
+  }
+ \end{center}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{The solution}
+
+ \begin{center}
+ \Large{
+ Promise that anyone can always generate
+ identical binary packages
+ from a given source}
+\end{center}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{The solution}
+
+ \begin{center}
+ We call this:
+
+ \Huge{ “Reproducible builds” }
+ \end{center}
+\end{frame}
+
+\placelogotrue
+
+\begin{frame}
+ \frametitle{Debian demo (skipped)}
+ \begin{itemize}
+ \item Build a package 5 times, get 5 .debs with different checksums
+ \item Build a package 5 times, get 5 .debs with the same checksum\\
+ \only<2>{Yes, it's really this simple.}
+ \end{itemize}
+% show this once running in plain sid,
+% and then in sid with our modified toolchain.
+%
+% prepare demo:
+% mkdir demo ; cd demo ; apt-get source giftrans
+%
+% do demo:
+% PTH=$(mktemp -d); OPTH=$PWD; P=giftrans; cp ${P}_* $PTH/; cd $PTH ;
+%   dpkg-source -x ${P}*.dsc ; for X in 1 2 3 4 5 ; do (cd ${P}-*/;
+%   dpkg-buildpackage -b -uc -us); mkdir -p .$X ; cp $P_*.deb .$X; done ; rm
+%   *.deb ; echo; sha1sum *dsc *z .*/*.deb | grep -v giftrans-dbgsym ; cd - ;
+% rm -r $PTH
+\end{frame}
+
+\placelogofalse
+
+\begin{frame}[plain]
+\begin{center}
+ \Huge{This should become the \textbf{norm}.}
+
+ \visible<2>{\small{ We want to change the meaning of "free software":
+
+  it's only free software if it's reproducible!}}
+\end{center}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{More benefits than "just" security…}
+ \begin{itemize}
+  \item smaller deltas, thus faster updates possible
+  \item in Debian: lots of QA benefits
+  \item Google does reproducible builds, to save money
+  \item …
+ \end{itemize}
+\end{frame}
+
+
+\section{Common ressources}
+
+\begin{frame}
+ \frametitle{reproducible-builds.org}
+
+ \begin{itemize}
+  \item \texttt{https://reproducible-builds.org}
+  \item git repositories, IRC channels, mailinglists, webspace
+ \end{itemize}
+ \begin{center}
+ \includegraphics[width=0.7\textwidth]{images/rbwww1.png}
+ \end{center}
+\end{frame}
+
+
+{
+\usebackgroundtemplate{%
+ \begin{tikzpicture}[remember picture,overlay]%
+  \node[shift={(-0.1\paperwidth, 0.15\paperheight)},at=(current page.south east)] {
+    \includegraphics[width=0.2\paperwidth]{images/diffoscope_logo.png}
+  };
+ \end{tikzpicture}%
+}
+
+\begin{frame}{diffoscope}
+ \frametitle{Debugging problems: \texttt{https://try.diffoscope.org}}
+
+ \begin{itemize}
+  \item Examines differences \textbf{in depth}.
+  \item Recursively unpacks archives, uncompresses PDFs, disassembles
+  binaries, unpacks Gettext files, …
+  \item Easy to extend to new file formats.
+  \item Falls back to binary comparison.
+  \item Outputs HTML or plain text with human readable differences.
+  \item Available from \texttt{git}, PyPI, Debian, \\
+   Arch Linux, Guix, Homebrew. Works on BSD.
+  \item Maintainers in other distros wanted.
+  \item \url{https://diffoscope.org/}
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{\texttt{diffoscope} example (HTML output)}
+ \begin{tikzpicture}[remember picture]
+  \node[at=(current page.center)] {
+   \includegraphics[width=0.9\paperwidth]{images/diffoscope_example_html.png}
+  };
+ \end{tikzpicture}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{\texttt{diffoscope} is "just" for debugging}
+
+ \begin{itemize}
+  \item Reminder: \texttt{diffoscope} is for \textbf{debugging}
+  \item "reproducible" according to our definition means: \textbf{bit by bit
+  identical}. So the tools for testing whether something is reproducible are
+  either \texttt{diff} or \texttt{sha256sum}!
+  \item<2> \texttt{https://try.diffoscope.org}
+ \end{itemize}
+\end{frame}
+
+}
+
+\placelogotrue
+
+
+\begin{frame}
+ \frametitle{tests.reproducible-builds.org}
+
+ \begin{itemize}
+  \item Continuously testing Debian \texttt{testing}, \texttt{unstable} and
+  \texttt{experimental}
+  \item Also testing: coreboot, OpenWrt, LEDE, NetBSD, FreeBSD,
+  Arch Linux, Fedora and soon F-Droid too
+  \item 8-12 \texttt{amd64} nodes, 150 cores and soon 500 GB RAM - thanks to
+  Profitbricks.com!
+  \item 22 \texttt{armhf} nodes, 98 cores and 53 GB RAM
+  \item 329 jenkins jobs running on jenkins.debian.net
+  \item 43 scripts in Python and Bash, 283 lines of code in average
+  \item 37 contributors for \texttt{jenkins.debian.net.git}
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}[fragile]
+ \frametitle{Variations (when testing Debian)}
+
+ \begin{center}
+  \begin{table}
+   \resizebox{0.95\textwidth}{!}{%
+    \begin{tabular}{l|ll}
+\textbf{variation} & \textbf{first build} & \textbf{second build} \\
+\hline
+hostname & \texttt{jenkins} & \texttt{i-capture-the-hostname} \\
+domainname & \texttt{debian.net} & \texttt{i-capture-the-domainname} \\
+\texttt{env TZ} & \texttt{GMT+12} & \texttt{GMT-14} \\
+\texttt{env LANG} & \texttt{C} & \texttt{fr\_CH.UTF-8} \\
+\texttt{env LC\_ALL} & not set & \texttt{fr\_CH.UTF-8} \\
+\texttt{env USER} & \texttt{pbuilder1} & \texttt{pbuilder2} \\
+uid & \texttt{1111} & \texttt{2222} \\
+gid & \texttt{1111} & \texttt{2222} \\
+UTS namespace & shared with the host & \textit{modified using \texttt{/usr/bin/unshare --uts}} \\
+kernel version & Linux 3.16 or 4.X & on amd64 always varied, on armhf
+sometimes \\
+umask & 0022 & 0002 \\
+CPU type & \multicolumn{2}{l}{varied on i386} \\
+ & on armhf varied a bit, not on amd64 & \\
+filesystem & \multicolumn{2}{l}{same for both builds on amd64: (\texttt{tmpfs}), on armhf \texttt{ext3/4}} \\
+ & & \textit{(and we have} \texttt{disorderfs}\textit{, but the code is disabled)} \\
+year, month, date & \multicolumn{2}{l}{on amd64: 398 days variation, on armhf not yet} \\
+hour, minute & \multicolumn{2}{l}{hour is usually the same… usually, the minute differs… } \\
+\textit{everything else} & \multicolumn{2}{l}{\textit{is likely the same…}}
+    \end{tabular}
+   }
+  \end{table}
+ \end{center}
+\end{frame}
+
+\placelogofalse
+
+\begin{frame}
+ \frametitle{Common problems}
+
+ \begin{itemize}
+  \item time stamps
+  \item timezones
+  \item locales
+  \item build paths
+  \item everything else (seperated into known issues and the blurry rest)
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Documentation about common problems}
+ \begin{itemize}
+  \item \texttt{https://reproducible-builds.org/docs}
+  \item Lunar's talk from CCCamp 2015 also on
+  \texttt{https://media.ccc.de}
+ \begin{tikzpicture}[remember picture]
+  \node[shift={(-1.05\paperwidth, -0.3\paperheight)},at=(current page.south east)] {
+    \includegraphics[width=0.83\textwidth]{images/cccamp2015_lunar_random.png}
+  };
+ \end{tikzpicture}
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{\texttt{SOURCE\_DATE\_EPOCH}}
+
+ \begin{itemize}
+  \item Build date (timestamps) usually not useful for the user
+  \item \texttt{SOURCE\_DATE\_EPOCH} is defined as the last modification of
+  the source, since the epoch (1970-01-01)
+  \item can be used instead of current date
+  \item can also be used for random seeds etc.
+  \item in Debian, set from the latest \texttt{debian/changelog} entry
+  \item can be set to the latest git commit too or the latest file
+  modification date
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{\texttt{SOURCE\_DATE\_EPOCH}}
+
+ \begin{itemize}
+  \item \texttt{SOURCE\_DATE\_EPOCH} spec available:
+  \item \texttt{https://reproducible-builds.org/specs/}
+  \item many upstreams support it already
+  \item has been adopted by other distributions
+  (OpenWrt, LEDE, NetBSD, FreeBSD, Arch Linux, coreboot, Guix, …) and many many
+  upstreams (GCC, dpkg, rpm, mkisofs, ghostscript, libxslt, sphinx,
+  texlive-bin, …)
+ \end{itemize}
+\end{frame}
+
+
+\placelogotrue
+
+\section{Status Debian}
+
+\begin{frame}
+ \frametitle{Progress in Debian \texttt{testing} ("stretch")}
+ \begin{tikzpicture}[remember picture]
+  \node[shift={(-0.5\paperwidth, \paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.65\paperheight]{images/stats_pkg_state_testing.png}
+  };
+ \end{tikzpicture}
+ \begin{center}
+  \footnotesize{21,527 (91.2\%) out of 23,597 source packages are reproducible \\
+    in our test framework on \texttt{amd64}}
+  \vfill
+ \end{center}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Progress in Debian \texttt{unstable}}
+ \begin{tikzpicture}[remember picture]
+  \node[shift={(-0.5\paperwidth, \paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.65\paperheight]{images/stats_pkg_state_unstable.png}
+  };
+ \end{tikzpicture}
+ \begin{center}
+  \footnotesize{18,898 (75.8\%) out of 24,931 source packages are reproducible \\
+    in our test framework on \texttt{amd64}} (difference due to build path variations)
+  \vfill
+ \end{center}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Progress in the Debian bug tracker}
+ \begin{tikzpicture}[remember picture]
+  \node[shift={(-0.5\paperwidth, \paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.65\paperheight]{images/stats_bugs_sin_ftbfs_state.png}
+  };
+ \end{tikzpicture}
+ \begin{center}
+  \footnotesize{As a rule, we file bugs with patches. \\
+  There are very few exceptions.}
+  \vfill
+ \end{center}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Details on tests.reproducible-builds.org}
+
+ \begin{itemize}
+  \item \url{https://reproducible.debian.net/$src}
+  \item 43 package sets 
+  \item 250 categorised distinct issues
+  \item 6,944 notes
+  \item 1,894 unreproducible packages in \texttt{stretch} (testing), but only
+  177 without a note (5,777 in \texttt{unstable} but also only 277 without a
+  note)
+  \item maintained in \texttt{notes.git} by 47 contributors
+  \item currently Debian only, but cross distro notes are planned
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Summary / What's left to do}
+ \begin{itemize}
+  \item This is a proof-of-concept, Debian is neither 91.2\% reproducible nor
+  75.8\%. (and 10\% > 2,300 sources packages!)
+  \item<2-4> All our required changes are finally in Debian now, except
+  \texttt{dpkg} and \texttt{.buildinfo} file support on the archive side.
+  \item<3-4> We hope that Debian 9, "stretch", will be partially reproducible
+  in a meaningful way, in 2017.
+  \item<3-4> What's beyond (rebuilding, \texttt{.buildinfo} file handling, user
+  tools) still needs \it{design} and code.
+  \item<4> Will Debian 10, "buster", be 100\% reproducible?
+ \end{itemize}
+\end{frame}
+
+
+
+
+
+\begin{frame}
+ \frametitle{Tell the world \& collaborate}
+
+ \begin{itemize}
+  \item "We don't care about Debian (only), we care about free and open
+   source software."
+  \item<2-4> Weekly reports since May 2015
+  \item<3-4> First Reproducible World Summit in December 2015 (Athens, Greece)
+   \begin{itemize}
+    \item<3-4> 40 people from 16 projects
+    \item<3-4> \texttt{reproducible.debian.net} has become \texttt{tests.reproducible-builds.org}
+   \end{itemize}
+    \item<4> Second Reproducible World Summit in December 2016 in Berlin
+   \begin{itemize}
+    \item<4> Talk to h01ger if you want to attend.
+   \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+
+\section{Status Non-Debian World}
+
+\placelogofalse
+
+\begin{frame}
+ \frametitle{Skipping some…}
+ \begin{itemize}
+  \item \texttt{https://tests.r-b.org/coreboot}
+  \item \texttt{https://tests.r-b.org/netbsd}
+  \item \texttt{https://tests.r-b.org/freebsd}
+  \item paused: \texttt{https://tests.r-b.org/archlinux}
+  \item paused: \texttt{https://tests.r-b.org/fedora}
+  \item not yet: \texttt{https://tests.r-b.org/f-droid}
+ \end{itemize}
+ \begin{center}
+  \includegraphics[height=0.13\paperheight]{images/coreboot.png}
+  \hspace{0.05\paperwidth}
+  \includegraphics[height=0.13\paperheight]{images/netbsd.png}
+  \hspace{0.05\paperwidth}
+  \includegraphics[height=0.13\paperheight]{images/freebsd.png}
+  \hspace{0.05\paperwidth}
+  \includegraphics[height=0.13\paperheight]{images/archlinux.png}
+  \hspace{0.05\paperwidth}
+  \includegraphics[height=0.13\paperheight]{images/fedora.png}
+\end{center}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Skipping some more…}
+ \begin{itemize}
+\item Bitcoin (2011)
+\item Tor (2013)
+\item NixOS, Guix, ElectroBSD
+\item Qubes, Tails
+\item very few commercial, propietary software (\only<1>{guess
+where}\only<2>{gamblingmachines}!)
+\item ?
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{OpenWrt and LEDE tested for reproducible builds}
+ \begin{itemize}
+  \item<2> \texttt{https://tests.r-b.org/openwrt}
+  \item<2> \texttt{https://tests.r-b.org/lede}
+  \item<2> reproducible\_(openwrt\_common|openwrt|lede).sh scripts in \texttt{jenkins.debian.net.git}
+  \item<2> 1,073/1,089 packages and 12/1 (OpenWrt/LEDE) images tested each week
+  \item<2> variations: TZ, LANG, LC\_ALL, PATH, (umask), make -j, linux64 --uname-2.6, CAPTURE\_ENVIRONMENT
+ \end{itemize}
+
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.14\paperwidth, 0.1\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.3\paperheight]{images/openwrt.png}
+  };
+ \end{tikzpicture}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.93\paperwidth, 0.11\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.15\paperheight]{images/lede.png}
+  };
+ \end{tikzpicture}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Thanks to these OpenWrt / LEDE reproducible builds contributors}
+ \begin{center}
+  \begin{columns}
+  \column{.46\linewidth}
+    {Alexander Couzens} \\
+    {Bryan Newbold} \\
+    {Dirk Neukirchen} \\
+    {Felix Fietkau} \\
+    {Jonas Gorski} \\
+    {Jo-Philipp Wich} \\
+    {Nathan Hintz} \\
+    {Reiner Herrmann} \\
+  \end{columns}
+ \end{center}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.08\paperwidth, 0.12\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.15\paperheight]{images/lede.png}
+  };
+ \end{tikzpicture}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.85\paperwidth, 0.1\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.3\paperheight]{images/openwrt.png}
+  };
+ \end{tikzpicture}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{TODO for tests.r-b.org/(openwrt|lede)}
+ \begin{itemize}
+  \item we should add more variations (date, time, build path, hostname, domain, use disorderfs, CPU type,
+  kernel, USER, HOME, SHELL, the base system).
+  \item we should test more targets.
+  \item<2-3> we could build other branches too…
+  \item<2-3> we could build OpenWrt + LEDE at least every day, thanks again to
+  Profitbricks.com.
+  \item<3> we want to make \textbf{you} look at these pages every day!
+ \end{itemize}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.14\paperwidth, 0.1\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.3\paperheight]{images/openwrt.png}
+  };
+ \end{tikzpicture}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.93\paperwidth, 0.11\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.15\paperheight]{images/lede.png}
+  };
+ \end{tikzpicture}
+\end{frame}
+
+\begin{frame}
+ \frametitle{TODO: design \texttt{.buildinfo} files for OpenWrt and LEDE}
+ \begin{itemize}
+  \item rfc822 format
+  \item needs to define the environment
+  \item needs to define the sources (input)
+  \item needs to define the binaries (output)
+  \item<2> Debian has only .deb files as output, while OpenWrt/LEDE have packages
+  and images…
+ \end{itemize}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.08\paperwidth, 0.12\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.15\paperheight]{images/lede.png}
+  };
+ \end{tikzpicture}
+ \begin{tikzpicture}[remember picture,overlay]
+  \node[shift={(-0.85\paperwidth, 0.1\paperheight)},at=(current page.south east)] {
+    \includegraphics[height=0.3\paperheight]{images/openwrt.png}
+  };
+ \end{tikzpicture}
+\end{frame}
+
+
+\section{Future work}
+
+\begin{frame}
+ \frametitle{Rebuilds and sharing signed checksums}
+ \begin{itemize}
+  \item Almost no work has been done here yet. We are just at the first step:
+  being able to rebuild reproducibly…
+  \item Different projects, different solutions?
+ \begin{itemize}
+  \item<2> something like \texttt{.buildinfo} files (defining the environment,
+  the input and the output(s)) will be needed everywhere, but so far we only
+  have them for Debian…
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Rebuilders and sharing signed checksums, cont.}
+ \begin{itemize}
+  \item Individuelly signed checksums (think web of trust) could work in the
+  Debian case (we have a gpg web of trust), but IMO won't scale.
+  \item { Another idea: rebuilders, run by large organisations
+  (ACLU, CCC, CERN, Deutsche Bank, EDF, EON, Greenpeace, NASA, NSA, XYZ).}
+  \item Fedora rebuilds Debian, Debian rebuilds OpenSUSE, OpenSUSE rebuilds
+  NetBSD, etc…
+  \item Big customers could just rebuild everything themselves.
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Integration in user tools}
+ \begin{itemize}
+  \item "Do you really want to install this unreproducible software (y/N)"
+  \item<2-3> "Do you want to build those packages which have unconfirmed checksums,
+  before installing? (Y/n)"
+  \item<3>{ "How many signed checksums do you require to call a package
+  'reproducible'?" - and whom do you trust?}
+ \end{itemize}
+\end{frame}
+
+
+\section{Getting involved}
+
+\begin{frame}
+ \frametitle{As a software developer}
+ \begin{itemize}
+  \item Stop using build dates
+  \item Use \texttt{SOURCE\_DATE\_EPOCH} instead
+  \item See \url{https://reproducible-builds.org/specs/}
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}
+ \frametitle{Form your reproducible builds team!}
+ \begin{itemize}
+  \item Why?
+   \begin{itemize}
+    \item Every distribution should be reproducible!
+    \item Learn something new everyday
+    \item Change the (software) world!
+    \item \texttt{https://tests.reproducible-builds.org/openwrt} needs \textbf{your} help
+    \item \texttt{https://tests.reproducible-builds.org/lede} needs \textbf{your} help
+   \end{itemize}
+  \item How to get started?
+   \begin{itemize}
+    \item Build something twice, run diffoscope on the results.
+    \item Talk to lynxis or h01ger here or talk to us on IRC or via mail.
+    \item RTFM, there is lots of documentation
+    \item Experiment - learning by doing
+   \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\section{Questions, comments, ideas?}
+
+\placelogotrue
+
+\begin{frame}
+ \frametitle{Thanks to…! …and thank \textbf{you}, too!}
+
+ \begin{itemize}
+  \item
+    {All “Reproducible Builds” contributors \\
+        {\small (you are just \textbf{so} awesome!)}}
+  \item OpenWrt Summit and ELCE
+\end{itemize}
+
+ \begin{center}
+  \includegraphics[height=0.1\paperheight]{images/linux_foundation_logo.png}
+  \hspace{0.1\paperwidth}
+  \includegraphics[height=0.1\paperheight]{images/cii_logo.png}
+  \hspace{0.1\paperwidth}
+  \includegraphics[height=0.1\paperheight]{images/profitbricks_logo.png}
+ \end{center}
+
+ \vfill
+ \begin{center}
+  \resizebox{0.9\textwidth}{!}{%
+   \begin{tabular}{rl}
+    \texttt{holger at debian.org} & \texttt{B8BF 5413 7B09 D35C F026} \\
+                               & \texttt{FE9D 091A B856 069A AA1C} \\
+    \texttt{lynxis at fe80.eu} & \texttt{390D CF78 8BF9 AA50 4F8F} \\
+                               & \texttt{F1E2 C29E 9DA6 A0DF 8604}
+\end{tabular}
+  }
+ \end{center}
+\end{frame}
+
+\placelogofalse
+
+\begin{frame}
+ \frametitle{Questions, comments, ideas?}
+
+ \begin{itemize}
+  \item \url{https://reproducible-builds.org/}
+  \item \texttt{\#reproducible-builds} on \texttt{irc.OFTC.net}
+  \item \url{https://lists.reproducible-builds.org}
+  \item twitter: @ReproBuild
+  \item<2> Mike and Seth's talk from 31c3 about motivations
+  \item<2> Lunar's talk about fixing reproducible issues from CCCamp 15
+  \item<2> h01ger's talk "the Reproducible builds ecosystem" from FOSDEM 16
+  \end{itemize}
+\end{frame}
+
+\placelogotrue
+
+\begin{frame}{}
+\begin{textblock}{12}(2, 6)
+    \tiny{
+      Copyright \copyright{} 2014--2016 \\
+         Holger Levsen \texttt{holger at layer-acht.org} and others.\\[3.0mm]
+      Copyright of images included in this document are held by
+      their respective owners.
+      \\[3.0mm]
+      This work is licensed under the \alert{Creative Commons
+        Attribution-Share Alike 3.0} License.  To view a copy of this
+      license, visit
+      \url{http://creativecommons.org/licenses/by-sa/3.0/} or send a
+      letter to Creative Commons, 171 Second Street, Suite 300, San
+      Francisco, California, 94105, USA.
+      \\[2.0mm]
+      % Give a link to the 'Transparent Copy', as per Section 3 of the GFDL.
+      The source of this document is available from
+      \url{https://anonscm.debian.org/git/reproducible/presentations.git}.
+    }
+  \end{textblock}
+\end{frame}
+
+\end{document}
diff --git a/2017-01-27-devconf.cz/Makefile b/2017-01-27-devconf.cz/Makefile
new file mode 100644
index 0000000..b233336
--- /dev/null
+++ b/2017-01-27-devconf.cz/Makefile
@@ -0,0 +1,29 @@
+.PHONY: all source images
+
+PRESENTATION = 2016-10-13-OpenWrt-Summit
+
+all: $(PRESENTATION).pdf
+
+source: $(PRESENTATION)-src.tar.gz
+
+IMGS = $(shell sed -n -e 's/^[^%]*\\includegraphics\([^{]*\)\?{\([^}]*\)}.*$$/\2/p' $(PRESENTATION).tex | sort -u)
+
+$(PRESENTATION).pdf: $(PRESENTATION).tex $(IMGS)
+	set -e && \
+	build=1; \
+	while [ $$build -le 5 ]; do \
+		build=$$(($$build + 1)); \
+		lualatex $<; \
+		if sha1sum -c $(PRESENTATION).aux.sha1sum > /dev/null 2>&1; then \
+			break; \
+		fi; \
+		sha1sum $(PRESENTATION).aux > $(PRESENTATION).aux.sha1sum; \
+	done 
+
+clean:
+	rm -f $(PRESENTATION).aux $(PRESENTATION).log $(PRESENTATION).nav \
+		$(PRESENTATION).out $(PRESENTATION).snm $(PRESENTATION).toc \
+		$(PRESENTATION).vrb $(PRESENTATION).aux.sha1sum $(PRESENTATION).pdfpc
+
+distclean:
+	rm -f $(PRESENTATION).pdf
diff --git a/2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.debian.tar.xz b/2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.debian.tar.xz
new file mode 100644
index 0000000..cc9764c
Binary files /dev/null and b/2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.debian.tar.xz differ
diff --git a/2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.dsc b/2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.dsc
new file mode 100644
index 0000000..1e84554
--- /dev/null
+++ b/2017-01-27-devconf.cz/demo/giftrans_1.12.2-19.dsc
@@ -0,0 +1,43 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+Format: 3.0 (quilt)
+Source: giftrans
+Binary: giftrans
+Architecture: any
+Version: 1.12.2-19
+Maintainer: Debian QA Group <packages at qa.debian.org>
+Homepage: https://www.abdn.ac.uk/tools/ibmpc/giftrans/index.hti
+Standards-Version: 3.9.6
+Vcs-Browser: https://github.com/lamby/pkg-giftrans
+Vcs-Git: git://github.com/lamby/pkg-giftrans.git
+Build-Depends: debhelper (>= 9)
+Package-List:
+ giftrans deb graphics optional arch=any
+Checksums-Sha1:
+ 816067762fe7d41f2b73f0acd2da0e51a1b93f27 9036 giftrans_1.12.2.orig.tar.gz
+ a931a19e832024f509f7902b2b5560f8e46f004b 6820 giftrans_1.12.2-19.debian.tar.xz
+Checksums-Sha256:
+ f38872b7dd2b0717768f29e3bd9b16c8898f0fe31183a41469b7728248d38b39 9036 giftrans_1.12.2.orig.tar.gz
+ 804a7d75d2fa0a9326430cb5194c68b11933deac568f028fdc333ddb89d0e551 6820 giftrans_1.12.2-19.debian.tar.xz
+Files:
+ 886782be6f9bef1798615264ea7ed9f6 9036 giftrans_1.12.2.orig.tar.gz
+ ea3e83079aae0b69a413d8d6b2e797a3 6820 giftrans_1.12.2-19.debian.tar.xz
+
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1
+
+iQIcBAEBAgAGBQJVwlRFAAoJEN5juccE6+nv47wQAI7VabJ/HK0Z/ddGZ1FJara3
+1IR0tb9ryXlVsE41XDYYFTsYJrYsRQQgrC20VicD5zCwW8chf4Z2fM++9G/oOLYQ
+X5TZ2/9wF7EADAOG+wXOSOcs9rRiBYkGEI/8CuXBmcZKmqIUaHGgGR/JNYhYB6ea
+ieqsZw6YRSvVajOqXg2tfHjfCUjaHRdS8xqEA6XUeIZozy25T/HplHf4PMhpCbP5
+FhvNTnxQ6eDnXajkpNxJBA4G2U6V52fl8R0CpyIIfjquaKmnBxjxJoYsMsELIcIi
+0hfng2Dmc1/10/0JLPCuUvobkNEz+NvLQAlxufMm1bmBUT6E2QQTaantAUqH63It
+wnng2GnRk2lReimz+mOvh9FKj1Fdu1djwrBUvFxZBTNrxT5/1h4of+AIWk7krQ1k
+SZaq7IZfCCnO5uwo6Hnr+D8mb+VZHI6BtYOR9gy22Q8hyeBv4KvIJ+oqZruEz+Cx
+VkpWZVS0k2aUnICuE/pq/8kXbaE5k6yCFziEkl6JVboeeJKfAUGCVs7/+9ZalEhL
+tmcKsS5JO20nPh5CiENj8HSFjmhrqUTvfTFhWXkw1Pzl6DBMQy3ywVi/KnXzDyKM
+Hxz8by+h2z4kRSzmYtct/R6Da2j5bQ2jIyp1uiRjfg9qwAq1TS9eJbo9EstX0/mB
+7d97iAbQR6sdFVfierMC
+=P66h
+-----END PGP SIGNATURE-----
diff --git a/2017-01-27-devconf.cz/demo/giftrans_1.12.2.orig.tar.gz b/2017-01-27-devconf.cz/demo/giftrans_1.12.2.orig.tar.gz
new file mode 100644
index 0000000..120dcff
Binary files /dev/null and b/2017-01-27-devconf.cz/demo/giftrans_1.12.2.orig.tar.gz differ
diff --git a/2017-01-27-devconf.cz/images/2016-01-26-180836.jpg b/2017-01-27-devconf.cz/images/2016-01-26-180836.jpg
new file mode 100644
index 0000000..01b9a4d
Binary files /dev/null and b/2017-01-27-devconf.cz/images/2016-01-26-180836.jpg differ
diff --git a/2017-01-27-devconf.cz/images/31c3.png b/2017-01-27-devconf.cz/images/31c3.png
new file mode 100644
index 0000000..8922581
Binary files /dev/null and b/2017-01-27-devconf.cz/images/31c3.png differ
diff --git a/2017-01-27-devconf.cz/images/archlinux.png b/2017-01-27-devconf.cz/images/archlinux.png
new file mode 100644
index 0000000..0e0c2c3
Binary files /dev/null and b/2017-01-27-devconf.cz/images/archlinux.png differ
diff --git a/2017-01-27-devconf.cz/images/cccamp2015_lunar_random.png b/2017-01-27-devconf.cz/images/cccamp2015_lunar_random.png
new file mode 100644
index 0000000..9a9e91d
Binary files /dev/null and b/2017-01-27-devconf.cz/images/cccamp2015_lunar_random.png differ
diff --git a/2017-01-27-devconf.cz/images/cii_logo.png b/2017-01-27-devconf.cz/images/cii_logo.png
new file mode 100644
index 0000000..690b7c6
Binary files /dev/null and b/2017-01-27-devconf.cz/images/cii_logo.png differ
diff --git a/2017-01-27-devconf.cz/images/coreboot.png b/2017-01-27-devconf.cz/images/coreboot.png
new file mode 100644
index 0000000..7d7b186
Binary files /dev/null and b/2017-01-27-devconf.cz/images/coreboot.png differ
diff --git a/2017-01-27-devconf.cz/images/diffoscope_example_html.png b/2017-01-27-devconf.cz/images/diffoscope_example_html.png
new file mode 100644
index 0000000..f7bb7f9
Binary files /dev/null and b/2017-01-27-devconf.cz/images/diffoscope_example_html.png differ
diff --git a/2017-01-27-devconf.cz/images/diffoscope_logo.png b/2017-01-27-devconf.cz/images/diffoscope_logo.png
new file mode 100644
index 0000000..ff9c312
Binary files /dev/null and b/2017-01-27-devconf.cz/images/diffoscope_logo.png differ
diff --git a/2017-01-27-devconf.cz/images/electrobsd.png b/2017-01-27-devconf.cz/images/electrobsd.png
new file mode 100644
index 0000000..1868115
Binary files /dev/null and b/2017-01-27-devconf.cz/images/electrobsd.png differ
diff --git a/2017-01-27-devconf.cz/images/fedora.png b/2017-01-27-devconf.cz/images/fedora.png
new file mode 100644
index 0000000..9cc341f
Binary files /dev/null and b/2017-01-27-devconf.cz/images/fedora.png differ
diff --git a/2017-01-27-devconf.cz/images/freebsd.png b/2017-01-27-devconf.cz/images/freebsd.png
new file mode 100644
index 0000000..deb2768
Binary files /dev/null and b/2017-01-27-devconf.cz/images/freebsd.png differ
diff --git a/2017-01-27-devconf.cz/images/guix.png b/2017-01-27-devconf.cz/images/guix.png
new file mode 100644
index 0000000..9c12d13
Binary files /dev/null and b/2017-01-27-devconf.cz/images/guix.png differ
diff --git a/2017-01-27-devconf.cz/images/lede.png b/2017-01-27-devconf.cz/images/lede.png
new file mode 100644
index 0000000..49a6d1b
Binary files /dev/null and b/2017-01-27-devconf.cz/images/lede.png differ
diff --git a/2017-01-27-devconf.cz/images/linux_foundation_logo.png b/2017-01-27-devconf.cz/images/linux_foundation_logo.png
new file mode 100644
index 0000000..860c2bb
Binary files /dev/null and b/2017-01-27-devconf.cz/images/linux_foundation_logo.png differ
diff --git a/2017-01-27-devconf.cz/images/netbsd.png b/2017-01-27-devconf.cz/images/netbsd.png
new file mode 100644
index 0000000..35fc1b4
Binary files /dev/null and b/2017-01-27-devconf.cz/images/netbsd.png differ
diff --git a/2017-01-27-devconf.cz/images/openlogo-nd.pdf b/2017-01-27-devconf.cz/images/openlogo-nd.pdf
new file mode 100644
index 0000000..fed3d93
Binary files /dev/null and b/2017-01-27-devconf.cz/images/openlogo-nd.pdf differ
diff --git a/2017-01-27-devconf.cz/images/openwrt.png b/2017-01-27-devconf.cz/images/openwrt.png
new file mode 100644
index 0000000..2d457c3
Binary files /dev/null and b/2017-01-27-devconf.cz/images/openwrt.png differ
diff --git a/2017-01-27-devconf.cz/images/profitbricks_logo.png b/2017-01-27-devconf.cz/images/profitbricks_logo.png
new file mode 100644
index 0000000..2ce8ce8
Binary files /dev/null and b/2017-01-27-devconf.cz/images/profitbricks_logo.png differ
diff --git a/2017-01-27-devconf.cz/images/rbwww1.png b/2017-01-27-devconf.cz/images/rbwww1.png
new file mode 100644
index 0000000..8932f53
Binary files /dev/null and b/2017-01-27-devconf.cz/images/rbwww1.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_bugs_sin_ftbfs_state.png b/2017-01-27-devconf.cz/images/stats_bugs_sin_ftbfs_state.png
new file mode 100644
index 0000000..995899b
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_bugs_sin_ftbfs_state.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_builds_per_day_amd64.png b/2017-01-27-devconf.cz/images/stats_builds_per_day_amd64.png
new file mode 100644
index 0000000..5b596a1
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_builds_per_day_amd64.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_meta_pkg_state_required.png b/2017-01-27-devconf.cz/images/stats_meta_pkg_state_required.png
new file mode 100644
index 0000000..b9cbb32
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_meta_pkg_state_required.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_pkg_state.png b/2017-01-27-devconf.cz/images/stats_pkg_state.png
new file mode 100644
index 0000000..37ccd22
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_pkg_state.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_pkg_state_armhf.png b/2017-01-27-devconf.cz/images/stats_pkg_state_armhf.png
new file mode 100644
index 0000000..2ac7633
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_pkg_state_armhf.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_pkg_state_testing.png b/2017-01-27-devconf.cz/images/stats_pkg_state_testing.png
new file mode 100644
index 0000000..964396e
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_pkg_state_testing.png differ
diff --git a/2017-01-27-devconf.cz/images/stats_pkg_state_unstable.png b/2017-01-27-devconf.cz/images/stats_pkg_state_unstable.png
new file mode 100644
index 0000000..b9c4f5d
Binary files /dev/null and b/2017-01-27-devconf.cz/images/stats_pkg_state_unstable.png differ
diff --git a/2017-01-27-devconf.cz/images/strawhorse.png b/2017-01-27-devconf.cz/images/strawhorse.png
new file mode 100644
index 0000000..d089dbf
Binary files /dev/null and b/2017-01-27-devconf.cz/images/strawhorse.png differ
diff --git a/2017-01-27-devconf.cz/images/swirl-lightest.pdf b/2017-01-27-devconf.cz/images/swirl-lightest.pdf
new file mode 100644
index 0000000..1c8ffd2
Binary files /dev/null and b/2017-01-27-devconf.cz/images/swirl-lightest.pdf differ
diff --git a/2017-01-27-devconf.cz/images/wholeworld.jpg b/2017-01-27-devconf.cz/images/wholeworld.jpg
new file mode 100644
index 0000000..b31c95a
Binary files /dev/null and b/2017-01-27-devconf.cz/images/wholeworld.jpg differ
diff --git a/2017-01-27-devconf.cz/notes b/2017-01-27-devconf.cz/notes
new file mode 100644
index 0000000..28ddcc5
--- /dev/null
+++ b/2017-01-27-devconf.cz/notes
@@ -0,0 +1,75 @@
+notes for openwrt/lede talk…
+	S_D_R? https://wiki.debian.org/ReproducibleBuilds/BuildPathProposal
+
+
+
+
+
+demo: PTH=$(mktemp -d); OPTH=$PWD; P=giftrans; cp ${P}_* $PTH/; cd $PTH ; dpkg-source -x ${P}*.dsc ; for X in 1 2 3 4 5 ; do (cd ${P}-*/; dpkg-buildpackage -b -uc -us); mkdir -p .$X ; cp $P_*.deb .$X; done ; rm *deb ; echo; sha1sum *dsc *z .*/*.deb | grep -v giftrans-dbgsym ; cd - ; echo "don't forget to rm -r $PTH"
+
+
+
+koji records the build
+	can be used to recreate it, in theory, in practice this needs documentation / be done
+rpm container has
+	build date
+	build host
+	signature
+	signature changes between development and release
+
+mention gsoc, new people
+
+emphasize this is too much for me…
+add thanks slide for all the people working on it in other projects
+
+end (or beginning?):
+	the whole world is watching? no (not that slide, but its true… or maybe that slide indeed)
+	fosdem 2014 lunar in a dev room
+	fosdem 2015 lunar and holger in k building
+	fosdem 2016 holger in janson
+	will 2016 be the year of the reproducible linux desktop? maybe
+	or 2017?! (i think so, find a nice pic to prove it)
+	and mayne not on the desktop, but just servers
+	or 85% of Debian main ;-)
+	or something - i'll get into the details later
+
+describe debian test setup
+	debian repo
+	debian bugs categories, nah
+	mention variations from TODO
+	
+diffoscope can use debug symbols now
+
+add SOURCE_DATE_EPOCH adoption outside Debian…
+
+need logos:
+	fdroid
+	qubes 4.0
+
+dpkg: mention recent developments… same for ftp!
+re-read: https://wiki.debian.org/ReproducibleBuilds/About etc
+
+explain shortcuts:
+        defined build environment with little variations
+        subsets
+
+many good sideeffects
+	QA QA QA
+	eg also arm bootloader improvements ;)
+	faster builds, saves money
+	check our wiki page on that
+
+future other tests:
+	not all variations debian has are applied, notable not yet date+time
+	seperation of test logic and html page creation planned
+
+future
+	funding
+	another meeting or two in 2016
+	fosdem devroom in 2017?!
+	tests.r-b.o doing rebuilds against releases
+
+disclaimer:
+	the mistakes are mine
+	to better present this here,  chronologic order has been changed
+	this is the work of *many* more people than mentioned, this is free software!
diff --git a/2017-01-27-devconf.cz/outline b/2017-01-27-devconf.cz/outline
new file mode 100644
index 0000000..9e08f1c
--- /dev/null
+++ b/2017-01-27-devconf.cz/outline
@@ -0,0 +1,58 @@
+Outcomes
+========
+
+ * Get an idea of what has changed
+ * Learn about the open issues and questions to make Stretch (partly)
+   reproducible
+ * Learn how to help
+
+Outline
+=======
+
+What is it and why it matters
+-----------------------------
+
+5 minutes max on what it is and why it matters.
+
+What has changed and available tools
+------------------------------------
+
+What have been done real real quick but point people at:
+https://wiki.debian.org/ReproducibleBuilds/History
+
+Explain past changes in dpkg, debhelper, and others
+
+SOURCE_DATE_EPOCH
+
+strip-nondeterminism
+
+reproducible.debian.net test
+
+.buildinfo
+
+Unresolved issues
+-----------------
+
+.buildinfo signature
+
+Unmerged changes to dpkg and others
+
+others issues?
+
+announce the plenary (come help us figure out the best way to do things)
+
+How can you help
+----------------
+
+reproducible.debian.net web interface
+	useful to find other bugs too
+
+notes.git
+
+IRC channel
+
+debbindiff
+
+prebuilder script — improve the doc before, probably
+
+annonce the hack session (come learn how to fix specific packages)

-- 
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