\hypersetup{pdftitle={Debian Packaging Tutorial},bookmarks}
\title{Debian Packaging Tutorial}
\author[]{Lucas Nussbaum\\{\small\texttt{lucas@debian.org}}}
-\date{\footnotesize version 0.1 - 2011-05-05}
+\date{\footnotesize version 0.1 - 2011-05-23}
\begin{document}
\br
\item \textbf{Non-commercial}, built collaboratively by over 1,000 volunteers
\br
- \item 30,000 binary packages; 12 ports (inc. 2 non-Linux); 120 derivatives
- \br
\item 3 main features:
\begin{itemize}
\item \textbf{Quality} -- culture of technical excellence\\
\end{itemize}
\end{frame}
+\subsection{Debian packages}
+\begin{frame}{Debian packages}
+\begin{itemize}
+\item \textbf{.deb} files (binary packages)
+ \br
+\item A very powerful and convenient way to distribute software to users
+ \br
+\item One of the two most common packages format (with RPM)
+ \br
+\item Universal:
+ \begin{itemize}
+ \item 30,000 binary packages in Debian\\
+ $\rightarrow$ most of the available free software is packaged in Debian!
+ \hbr
+ \item For 12 ports (architectures), including 2 non-Linux (Hurd; KFreeBSD)
+ \hbr
+ \item Also used by 120 Debian derivatives distributions
+ \end{itemize}
+\end{itemize}
+\end{frame}
\subsection{The Deb package format}
\begin{frame}[fragile]{The Deb package format}
\begin{itemize}
- \item One of the two most common packages format (with RPM)
- \item A very powerful and convenient way to distribute software to users
\item \texttt{.deb} file: an \texttt{ar} archive
\begin{lstlisting}[basicstyle=\ttfamily\footnotesize]
$ ar tv wget_1.12-2.1_i386.deb
\end{center}
\end{frame}
+\subsection{Rebuilding dash}
+\begin{frame}{Example: rebuilding dash}
+\begin{enumerate}
+\item Install build-essential, devscripts and debhelper (needed to build dash)\\
+ {\texttt{apt-get install build-essential devscripts debhelper}}
+ \hbr
+\item Create a working directory, and get in it:\\
+ \texttt{mkdir /tmp/w ; cd /tmp/w}
+ \hbr
+\item Grab the \texttt{dash} source package\\
+ \texttt{apt-get source dash}\\
+ {\small (This needs you to have \texttt{deb-src} lines in your \texttt{/etc/apt/sources.list})}
+ \hbr
+\item Build the package\\
+ {\texttt{cd dash-*\\ debuild -us -uc}}
+
+ \hbr
+\item Check that it worked
+ \begin{itemize}
+ \item There are some new \texttt{.deb} files in the parent directory
+ \end{itemize}
+ \hbr
+\item Look at the \texttt{debian/} directory
+ \begin{itemize}
+ \item That's where the packaging work is done
+ \end{itemize}
+\end{enumerate}
+\end{frame}
+
\section{Creating source packages}
\subsection{Source packages basics}
\begin{frame}{Source package}
\end{itemize}
\end{frame}
-\section{Practical session 0: simple rebuild of dash}
-\begin{frame}{Practical session 0: simple rebuild of dash}
- \begin{enumerate}
- \item Install build-essential debhelper devscripts
- \br
- \item Create a working directory, and get in it
- \br
- \item Grab the \texttt{dash} source package
- \br
- \item Build the package
- \br
- \item Check that it worked
- \end{enumerate}
-\end{frame}
-
\section{Practical session 2: packaging GNUjump}
\begin{frame}{Practical session 2: packaging GNUjump}
\begin{enumerate}
+++ /dev/null
-\documentclass[10pt,final]{beamer}
-\mode<presentation>
-\usetheme{debian}
-\usepackage{debiantutorial}
-
-\hypersetup{pdftitle={Practical session 0: dash},bookmarks}
-\title[Practical session 0: dash]{Practical session 0:\\ Simple rebuild of the Dash package}
-\author[]{Philip Hands\\{\small\texttt{phil@hands.com}}}
-\institute{\includegraphics[viewport=274 335 360 440,width=1cm]{figs/openlogo-nd.pdf}}
-\date{}
-
-\begin{document}
-
-\frame{\titlepage}
-
-\begin{frame}{Practical session 0: building the dash package}
-\begin{enumerate}
-\item Install build-essential debhelper devscripts\\
- {\small \texttt{apt-get install build-essential debhelper devscripts}}
- \hbr
-\item Create a working directory, and get in it:\\
- \begin{tabbing}
- e.g. \= \texttt{mkdir -p \textasciitilde/src/\textsl{packagename} ; cd \textasciitilde/src/\textsl{packagename}}\\
- or \> \texttt{mkdir \textasciitilde/debian ; cd \textasciitilde/debian}
- \end{tabbing}
- \hbr
-
-\item Grab the \texttt{dash} source package\\
- \texttt{apt-get source dash}\\
- {\small this needs you to have \texttt{deb-src} lines in your \texttt{/etc/apt/sources.list}}
- \hbr
-\item Build the package\\
- {\small \texttt{cd dash-*\\ debuild -us -uc}}
-
- \hbr
-\item Check that it worked\\
- {\small You should notice that we've got some new
- files in the directory above us, in particular
- there should now be a couple of \texttt{.deb}
- files}
-\end{enumerate}
-\end{frame}
-
-\end{document}