summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2019-12-08 17:36:20 +0100
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2019-12-26 00:52:23 +0100
commit9daa3beabe139f38265e8f2c7a4a05891e43b862 (patch)
tree064444ab98d23cf7a823d0bb71217a6ef0969ffc
parenta4abd1eb3c16641f5f66ebd1654c354b65938d1c (diff)
downloadpresentations-9daa3beabe139f38265e8f2c7a4a05891e43b862.tar.gz
presentations-9daa3beabe139f38265e8f2c7a4a05891e43b862.tar.bz2
presentations-9daa3beabe139f38265e8f2c7a4a05891e43b862.zip
Start implementing the new structure.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
-rw-r--r--36c3/Replicant_sustainability/Makefile2
-rw-r--r--36c3/Replicant_sustainability/Replicant_sustainability.tex793
2 files changed, 754 insertions, 41 deletions
diff --git a/36c3/Replicant_sustainability/Makefile b/36c3/Replicant_sustainability/Makefile
index 7bc95ec..bdea753 100644
--- a/36c3/Replicant_sustainability/Makefile
+++ b/36c3/Replicant_sustainability/Makefile
@@ -12,7 +12,7 @@ output:
output/$(TITLE).pdf: output $(TITLE).tex $(IMAGES)
pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}'
- # pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}'
+ pdflatex $(TEXFLAGS) '\providecommand\locale{en}\input{$(TITLE).tex}'
output/%.png: dot/%.dot output
dot -T png $< > $@
diff --git a/36c3/Replicant_sustainability/Replicant_sustainability.tex b/36c3/Replicant_sustainability/Replicant_sustainability.tex
index a2152da..e1c269d 100644
--- a/36c3/Replicant_sustainability/Replicant_sustainability.tex
+++ b/36c3/Replicant_sustainability/Replicant_sustainability.tex
@@ -4,20 +4,20 @@
\usepackage{graphicx}
\usepackage{ifthen}
\usepackage[utf8]{inputenc}
+\usepackage{ulem}
\usepackage{listings}
-\usepackage{xtab}
\usepackage{pdfpages}
\usepackage{tikz}
+\usepackage{xtab}
\newcommand{\outputpicture}[2] {
{\includegraphics[scale=#1]{output/#2}}
}
-
\newcommand{\devicepicture}[1] {
{\includegraphics[scale=0.5]{../../external_resources/replicant_website/images/supported-devices/#1.png}}
}
-\usetheme{Singapore}
+%% \usetheme{Singapore}
\title{Extending the lifetime of smartphones with Replicant, a fully free Android distribution}
\author{Denis 'GNUtoo' Carikli and David 'dllud' Ludovino}
@@ -30,12 +30,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Introduction}
-\begin{frame}{TITLE 1}
- \begin{tikzpicture}
- %% \draw (-1.5,0) -- (1.5,0);
- %% \draw (0,-1.5) -- (0,1.5);
- \devicepicture{passion} ;
- \end{tikzpicture}
+\begin{frame}
+ \center{Introduction}
\end{frame}
\begin{frame}
@@ -158,33 +154,748 @@
%% \end{itemize}
%% \end{frame}
-\begin{frame}[plain,allowframebreaks]{title}
- \begin{xtabular}{ll}
- \hline
- Device dropping cause & Replicant leverage \\
- \hline
- Upstream support & We're working to improve it \\
- \hline
- Android RAM consumption & negligeable \\
- %% Most device we want to support have similar-ish RAM size
- %% Cannot increase much the device lifetime by choosing devices with bigger RAM size
- %% => We have no impact on it and have to endure it
- \hline
- Lack of removable batteries & don't support devices with non-replacable batteries \\
- \hline
- Freedom issues & Conflicting interests \\
- %% Chinese whispers => Better keeping it simple
- %% We drop the least free devices
- %% Conflicting interest
- \hline
- \end{xtabular}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Smartphones lifetime}
+
+\begin{frame}
+ \center{Part I: Smartphones lifetime}
\end{frame}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\setbeamercolor{background canvas}{bg=black}
+\setbeamercolor{normal text}{fg=green}
+\usebeamercolor*{normal text}
+
+{
+ \setbeamercolor{normal text}{fg=white}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ What I'm about to tell you is subversive...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ $<$subversive$>$
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Once upon a time...
+ }
+ \end{frame}
+}
+
\begin{frame}
- \frametitle{What I'm about to show you is subversive}
+ \center {
+ \large{Dave didn't want to buy a smartphone...} \\
+ \bigskip
+ \small{
+ "Nearly all mobile phones Present-day cell phones are Stalin's dream” \\
+ Richard Stallman\cite{stalin-dream}
+ }
+ }
\end{frame}
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ You need to be reachable at all times.
+ }
+ \end{frame}
+}
+
+{
+ %% TODO: Put Peer Pressure in blue like links
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave $\leftarrow$ [[Peer pressure]] $\leftrightarrow$ Advertizing
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave $\leftarrow$ Dave's employer
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: okay okay, I finally bought a smartphone.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave bought an Android smartphone off the shelf. \\
+ The smartphone has a removable battery.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ This smartphone will self-destruct in 5 years
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: Why didn't I know that at the time of buying?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Two years later...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Hmmm
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: What?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ I'm sorry Dave, your battery ran out.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Game Over: Buy a new phone.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: Play again! Insert a new battery to continue!
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave buys a new battery.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Uhhh consumers like Dave are tiring me...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: I'm a humain beeing!
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Uh oh.
+ }
+ \end{frame}
+}
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Hmmm
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: What now?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ I'm sorry Dave, your smartphone ran out of software support.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: Shiiit
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ %% TODO: Charlie chaplin like interlude
+ Dave doesn't want to destroy the planet
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: \\
+ \sout{No passaran} \\
+ \sout{You shall not pass} \\
+ I shall not buy a new smartphone.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: I can still run Android apps.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Securityyyy....
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: my smartphone is full of backdoors anyway.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: You're part of my threat model.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Shit they become more and more clever.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Hmmm?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ I'm sorry Dave, the Android apps don't support your old Android version.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: Shiiit
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: Fuck you, I'll install LineageOS.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ I'm sorry Dave, you will loose your data in the process.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: \\
+ I'll migrate the data myself. \\
+ DIY is great ! \\
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave Dave please remain with us...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave:
+ I don't trust you.
+ Fuck off! \\
+ Leave me alone! \\
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Two years later...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave was living happily \sout{ever after} and forgot about his smartphone \\
+ (and all the backdoors...).
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ I'm sorry Dave, LineageOS dropped support for your smartphone.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=green}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave faints...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: How is that possible?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Knock Knock Dave...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Do you want the red pill [y/N]?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave: Fuck yes I want the red pill!
+ }
+ \end{frame}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Replicant}
+
+{
+ \setbeamercolor{background canvas}{bg=white}
+ \setbeamercolor{normal text}{fg=black}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ %% TODO: attack of the clones with Replicant instead
+ Part II: The counter attack of the \sout{clones} Replicants
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave, you've been living in a dream...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ The linux kernel in your phone...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ It's not really Linux...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ It's based on Linux...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ but it can be very heavily modified...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Our informations are scarse and sometimes outdated...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ But we deduced that in 2008 the device and chip manufacturers did that to improve the time to market...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ We know that upstreaming a new kernel framework can take years...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ So they abstracted the hardware in the Android framework instead...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Enabling everyone to break the API.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ The applications would talk to the framework \\
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ The framework would interface with HAL (Hardware abstraction libraries) \\
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ The Hal would interface with libraries that handle the custom kernel API \\
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=red}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Someone is calling me?
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Dave:
+ No. \\
+ HAL: Return to sleep. \\
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ LineageOS kernels are based on the vendor kernels.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ LineageOS also uses proprietary libraries.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Like the libril which implements the modem protocol, and a backdoor as well...
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ Though we don't know if the backdoor is usable by someone on the network.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ But we wound't be surprised if it is.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=violet}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ It was found by Paul Kocialkowski while working on Replicant.
+ }
+ \end{frame}
+}
+
+{
+ \setbeamercolor{normal text}{fg=blue}
+ \usebeamercolor*{normal text}
+ \begin{frame}
+ \center {
+ What is Replicant?
+ }
+ \end{frame}
+}
+
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% \begin{frame}
%% \center{Replicant phase 1: Quick and dirty hacks}
@@ -560,14 +1271,16 @@
%% \end{frame}
\begin{thebibliography}{99}
-\bibitem{freeing-a-phone-from-the-ground-up}
- \url{https://code.paulk.fr/article20/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-first-part}
- \url{https://code.paulk.fr/article21/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-second-part}
- \url{https://code.paulk.fr/article22/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-third-part}
- \url{https://code.paulk.fr/article23/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-fourth-part}
-\bibitem{last-android-6-update}
- \url{https://en.wikipedia.org/wiki/Android Marshmallow}
-\bibitem{porting-to-android-9}
- \url{https://redmine.replicant.us/projects/replicant/wiki/PortingToAndroid9}
+\bibitem{stalin-dream}
+ \url{https://stallman.org/archives/2011-nov-feb.html}
+%% \bibitem{freeing-a-phone-from-the-ground-up}
+%% \url{https://code.paulk.fr/article20/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-first-part}
+%% \url{https://code.paulk.fr/article21/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-second-part}
+%% \url{https://code.paulk.fr/article22/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-third-part}
+%% \url{https://code.paulk.fr/article23/a-hacker-s-journey-freeing-a-phone-from-the-ground-up-fourth-part}
+%% \bibitem{last-android-6-update}
+%% \url{https://en.wikipedia.org/wiki/Android Marshmallow}
+%% \bibitem{porting-to-android-9}
+%% \url{https://redmine.replicant.us/projects/replicant/wiki/PortingToAndroid9}
\end{thebibliography}
\end{document}