\documentclass[landscape]{seminar}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[pdftex,unicode=true,plainpages=false,colorlinks,urlcolor=Brown]{hyperref}
\usepackage[pdftex]{color}
\usepackage{slidesec,epic,eepic,graphicx,ifpdf,rotating}

\ifpdf
\def\imgext#1{#1.pdf}
\else
\def\imgext#1{#1.eps}
\fi

\definecolor{Brick}{rgb}{0.6100, 0.4000, 0.1200}
\definecolor{Brown}{rgb}{0.6100, 0.2047, 0.1200}
\definecolor{RedHat}{rgb}{0.8039, 0.0, 0.0}
\definecolor{Olive}{rgb}{0.2300, 0.3700, 0.1700}
\definecolor{OliveDark}{rgb}{0.1600, 0.2700, 0.1200}
\definecolor{WhiteIvory}{rgb}{1.000000, 1.000000, 0.96}
\definecolor{IvoryDark}{rgb}{0.95, 0.95, 0.90}
\definecolor{IvoryDarkDark}{rgb}{0.92, 0.92, 0.85}
\definecolor{Firebrick}{rgb}{0.6980, 0.1333, 0.1333}

\renewcommand{\familydefault}{\sfdefault}

\def\urlmailto#1{\href{mailto:#1}{$<$#1$>$}}
\def\urlhttp#1{\href{http://#1}{#1}}
\def\myslidemode{\Large\centering\color{OliveDark}}
\def\nextpage{\end{slide}\begin{slide}\myslidemode}

\def\topic#1{\centerline{\normalsize\textcolor{Brown}{\textsf{#1}}}}
\def\heading#1{\slideheading{\texorpdfstring{\LARGE\colorbox{white}{\textcolor{RedHat}{\textsf{#1}}}}{#1}}}
\def\subheading#1{\slideheading{\texorpdfstring{\textcolor{Olive}{\Large\textsf{#1}}}{#1}}}
\def\cemph#1{\textcolor{Firebrick}{\bf\textsf{#1}}}
\def\labelitemi{\textcolor{RedHat}{$\bullet$}}
\def\labelitemii{\textcolor{RedHat}{\bf--}}
\addto\layoutspanish{
\def\labelitemi{\textcolor{RedHat}{$\bullet$}}
\def\labelitemii{\textcolor{RedHat}{\bf--}}
}

\def\slidefig#1{\centering\colorbox{white}{\input{#1}}}
\def\quotationbox#1#2{\centerline{\colorbox{white}{\parbox{300pt}{\normalsize\textcolor{OliveDark}{\textit{#1}}\begin{flushright}\unskip\textcolor{Olive}{\textsf{#2}}\end{flushright}}}}}

\newslideframe{plain}{\textcolor{black}{\colorbox{WhiteIvory}{\begin{picture}(340,229)(-170,-115)\put(0,0){\makebox(0,0){\centering#1}}\Thicklines\color{white}\put(-180,125){\line(1,0){360}}\put(-180,125){\line(0,-1){250}}\color{IvoryDarkDark}\put(180,-125){\line(-1,0){360}}\put(180,-125){\line(0,1){250}}\end{picture}}}}

\newbox\smalllogo
\savebox\smalllogo{\includegraphics[height=3ex]{\imgext{logo-fsfla-en}}}

\slideframe{plain}
\pagecolor{IvoryDark}
\pagestyle{myheadings}

\begin{document}

\begin{slide}

  \myslidemode

  \markright{\usebox\smalllogo\hfill}

  \bigskip

  \vbox to 0pt{
    \includegraphics[height=2.5cm]{\imgext{gnu-head}}
    \hfill
    \includegraphics[height=2.5cm]{\imgext{freedo}}
  }

  \heading{GNU Linux-libre}
  \subheading{and the \cemph{prisoners}' dilemma}

  \medskip

  \hspace{3.5cm}
  \includegraphics[height=1.3cm]{\imgext{stux}}
  \hspace{1cm}
  \includegraphics[height=1.3cm]{\imgext{logo-fsfla}}

  \subheading{\url{http://linux-libre.fsfla.org/}}

  \topic{Alexandre Oliva \urlmailto{lxoliva@fsfla.org} \hfill 
    \href{http://twister.net.co}{Twister},
    \href{https://identi.ca/lxoliva}{Pump.io}: \texttt{@lxoliva}
  }

  \topic{\url{http://www.fsfla.org/~lxoliva/}}

  \bigskip

  \parbox{245pt}{
    \tiny
    Copyright 2009-2015 FSFLA  (last changed November 2015) \\
    This work is licensed under the
    \href{http://creativecommons.org/licenses/by-sa/4.0/}{Creative
      Commons BY-SA 4.0 International} License.\\
    \url{http://www.fsfla.org/svn/fsfla/site/blogs/lxo/pres/linux-libre/} \\
    \url{http://www.fsfla.org/blogs/lxo/pub/linux-libre}
  }

  \nextpage

  \markright{\usebox\smalllogo\hfill\sf\textcolor{black}{GNU
      Linux-libre and the prisoners'
      dilemma}\hfill\textcolor{black}{Alexandre
      Oliva}\hfill\color{black}}

  \heading{Summary}

  \begin{itemize}
  \item History
  \item “Be Free!” campaign
  \item Liberating Linux (again)
  \item Next steps
  \item Adoption
  \item Challenges
  \end{itemize}

  \nextpage

  \heading{History}

  \vspace{-0.5\baselineskip}

  \begin{itemize}
  \item[1983] GNU
  \item[1991] Linux (non-Free)
  \item[1992] Linux (GNU GPLv2), Yggdrasil Linux/GNU/X
  \item[1996] Blobs in Linux (non-Free again)
  \item[2006] gNewSense: \texttt{find-firmware} and \texttt{gen-kernel}
  \item[2007] BLAG: \texttt{deblob} and Linux-libre
  \item[2008] FSFLA: \texttt{deblob-check}
  \item[2012] \cemph{GNU} Linux-libre
  \end{itemize}

  \nextpage

  \heading{Be Free!}

  \begin{itemize}
  \item Promoting Free Software?
  \item Promoting Software Freedom!
  \item Social responsibility
  \end{itemize}

  \quotationbox{You must \cemph{be} the change you wish to see in the
    world.}{Mah\=atm\=a Mohandas Karamchand \textbf{Gandhi}}

  \quotationbox{\noindent
    The more people resist [non-Free Software],\\
    the more people will be Free, and\\
    the more people will be free to be Free.
  }{Free Software Foundation Latin America}

  \subheading{\url{http://fsfla.org/se-libre/}}

  \nextpage

  \heading{But how could we “Be Free”?}

  \begin{itemize}
  \item GNU et al are Free, but Linux isn't!
    \hfill\hbox{\vbox to 0pt{\kern-2.5ex\hbox{\includegraphics[width=2.3cm]{\imgext{stux}}}}\hbox{}\kern-1.5em}
  \item Code without sources, various licenses
  \end{itemize}

  \quotationbox{\noindent This [GPLed] file contains firmware data
    derived from \cemph{proprietary unpublished source code},
    Copyright (c) 2004, 2005, 2006, 2007 [vendor]\\
    Permission is hereby granted for the distribution of this firmware
    data in hexadecimal or equivalent format, [...]}{Network driver,
    100+Kb of actual binary executable code}

  \quotationbox{\noindent \\
    Notwithstanding the [GPLv2 terms] above, under no circumstances
    may you combine this software in any way with any other [vendor]
    software provided under a license other than the GPL,
    [...]}{2008's network driver \cemph{from the same vendor}, 300Kb
    “data”}

  \nextpage

  \heading{Liberating Linux}

  \begin{itemize}
  \item Clean up all that doesn't serve (the user):
    \begin{itemize}
    \item Sourceless code
      \hfill\hbox{\vbox to 0pt{\kern-2.5ex\hbox{\includegraphics[width=2.3cm]{\imgext{freedo}}}}\hbox{}\kern-1.5em}
    \item Incompatibly-licensed portions
    \item Requests for non-Free Software
    \item Documentation that recommends it
      \hfill\hbox{\vbox to 0pt{\kern-2.5ex\hbox{\includegraphics[width=2.3cm]{\imgext{lux}}}}\hbox{}\kern-1.5em}
    \item Incomprehensible code/data?
    \end{itemize}
  \item “\cemph{Holy}” Free systems
  \end{itemize}

  \nextpage

  \heading{Liberating Linux}

  \begin{itemize}
  \item Shell scripts \texttt{deblob-*}
  \item \texttt{-main}: Untar, \texttt{deblob-4.*}, tar, xdelta, gpg
  \item \texttt{-4.*}: \texttt{deblob-check -d} known files,
    adjust
  \item \texttt{-check}: hunts and kills blobs
    \begin{itemize}
    \item Source files, patches and tarballs
    \item Heuristically recognize suspected blobs
    \item Leave alone known false positives
    \item Recognize known unsuitable sequences
    \end{itemize}
  \end{itemize}

  \nextpage

  \heading{Next steps}

  \begin{itemize}
  \item Integrate in \texttt{deblob-check}:
    \begin{itemize}
    \item Generic substitutions
    \item List of files to clean
    \end{itemize}
  \item Compatible but clean git history
  \item Support dynamically loading blobs
    \begin{itemize}
    \item But not inducing their use!
    \item Unidirectional cryptographic hashes?
    \end{itemize}
  \end{itemize}

  \subheading{Help?  \urlmailto{linux-libre@fsfla.org}}

  \nextpage

  \heading{I want GNU Linux-libre!}

  \begin{itemize}
  \item Source tarballs tracking upstream Linux
    \begin{itemize}
    \item \texttt{linux-libre-4.*-gnu*.tar.lz}
    \end{itemize}
  \item Binary builds
    \begin{itemize}
    \item Freesh, Freeloong, Freed-ora (BLAG)
    \item LibrePlanet, rt, Freedom Shoppe
    \item DeCentOS!  Huru-buntu?  Freed-ebian?
    \item Several distros (next page)
    \end{itemize}
  \end{itemize}

  \subheading{Help?  \urlmailto{linux-libre@fsfla.org}}

  \heading{Adoption}

  \begin{itemize}
  \item gNewSense, BLAG, FREEEEE
  \item Trisquel, Venenux, Dragora GNU/Linux
  \item Parábola, Dyne:bolic, \urlhttp{gnu.org/distros}
  \item VegnuX NeonatoX, ConnochaetOS
  \item Kongoni, Tlamaki, RMS, Amagi
  \item Ututo, Musix GNU+Linux
  \item Gentoo, Arch, Ubuntu, Debian?, \cemph{you}?
  \end{itemize}

  \nextpage

  \heading{Challenges}

  \begin{itemize}
  \item Distros want/need popularity
  \item Blobs attract more users?
  \item Incentive to betray users, weaken communities
  \item Prisoners' dilemma, iterated
  \item Defection feeds the aggressors
  \item Tragedy of the commons
  \end{itemize}

  \nextpage

  \heading{How can we change this picture?}

  \begin{itemize}
  \item Break the myth of breakage
    \hfill\hbox{\vbox to 0pt{\kern-2.5ex\hbox{\includegraphics[width=2.8cm]{\imgext{stux}}}}\hbox{}\kern-1.5em}
  \item Lead by example, “\cemph{Be Free!}”
  \item Educate users, to shift the incentives
    \hfill\hbox{\vbox to 0pt{\kern-2.5ex\hbox{\includegraphics[width=2.2cm]{\imgext{freetz}}}}\hbox{}\kern-1.5em}
  \item Seek credible commitment among distros
  \item Take it upstream, uphill?
    \hfill\hbox{\vbox to 0pt{\kern-2.5ex\hbox{\includegraphics[width=2.2cm]{\imgext{lux}}}}\hbox{}\kern-1.5em}
  \end{itemize}

  \heading{Suggestions?}

  \nextpage

  \heading{Thank you!}

  \includegraphics[height=4cm]{\imgext{100gnu+freedo}}

  \href{http://twister.net.co}{Twister},
  \href{https://identi.ca/lxoliva}{Pump.io}: \texttt{@lxoliva} \\
  \url{http://linux-libre.fsfla.org/} \\
  \url{irc://irc.gnu.org/#linux-libre}

\end{slide}

\end{document}
