%; whizzy document % latex beamer presentation. % Copyright (C) 2007 Junichi Uekawa % This program is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation; either version 2 of the License, or % (at your option) any later version. % This program is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % You should have received a copy of the GNU General Public License % along with this program; if not, write to the Free Software % Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA \documentclass[dvipdfm,12pt]{beamer} %\usetheme{} % preview (shell-command (concat "xpdf " (replace-regexp-in-string "tex$" "pdf"(buffer-file-name)) "&")) % presentation (shell-command (concat "xpdf -fullscreen " (replace-regexp-in-string "tex$" "pdf"(buffer-file-name)) "&")) % presentation-evince (shell-command (concat "evince " (replace-regexp-in-string "tex$" "pdf"(buffer-file-name)) "&")) \title{what's happening with pbuilder?} \subtitle{Debian Conference 2007} \author{dancer@debian.org} \date{June 2007} \logo{\includegraphics[width=8cm]{openlogo-light.eps}} \begin{document} \frame{\titlepage{}} \begin{frame}{Who am I?} \begin{itemize} \item Junichi Uekawa, dancer@debian.org \item Lives in Japan, Debian JP Project Leader for 2007 \item Debian Developer since 2000 \item Interests: Audio-processing related tools, and Debian quality maintenance related tools, Japanese localization, shared library packaging, and more recently, Debian/MacBook related. \end{itemize} \end{frame} \begin{frame}{pbuilder basics} \includegraphics[height=0.7\vsize]{pbuildercycle.eps} \end{frame} \begin{frame}{pbuilder basics ...} \begin{tabular}{|l|p{8em}|p{8em}|} \hline operation & frequence & meaning \\ \hline create & once in initial run & create base filesystem \\ update & twice a day (according to unstable updates) & revise base filesystem \\ build & for each package build & build Debian package inside chroot \\ \hline \end{tabular} \end{frame} \begin{frame}[containsverbatim]{pbuilder create} \begin{verbatim} # pbuilder create Distribution is sid. Building the build environment -> running debootstrap /usr/sbin/debootstrap I: Retrieving Release I: Retrieving Packages I: Validating Packages . . \end{verbatim} \end{frame} \begin{frame}[containsverbatim]{pbuilder update} \begin{verbatim} # pbuilder update W: /home/dancer/.pbuilderrc does not exist Building the build Environment -> extracting base tarball [/var/cache/pbuilder/base.tgz] . . \end{verbatim} \end{frame} \begin{frame}[containsverbatim]{pbuilder build} \begin{verbatim} # pbuilder build dsh_*.dsc I: using fakeroot in build. Current time: Sat Jan 20 12:03:34 JST 2007 pbuilder-time-stamp: 1169262214 Building the build Environment -> extracting base tarball [/home/dancer/DEBIAN/pbuilder/pbuilder/testsuite/tmp.FeeAX18779/testimage] -> creating local configuration . . \end{verbatim} \end{frame} \begin{frame}{pbuilder basics ...} \begin{minipage}{0.4\hsize} How do you maintain your package today? \end{minipage} \begin{minipage}{0.5\hsize} \includegraphics[height=0.9\vsize]{develcycle.eps} \end{minipage} \end{frame} \begin{frame}[containsverbatim]{Development} alioth project: \url{http://alioth.debian.org/projects/pbuilder} \begin{verbatim} git-clone ssh://git.debian.org/git/pbuilder/pbuilder.git \end{verbatim} \end{frame} \begin{frame}{pbuilder backend variations} \begin{minipage}{0.5\hsize} Motivation \begin{itemize} \item limitation in chroot segregation (process space, filesystem) \item COW filesystem optimization \end{itemize} \end{minipage}\begin{minipage}{0.4\hsize} \begin{itemize} \item LVM \item UML \item cowdancer \item qemu \end{itemize} \end{minipage} \end{frame} \begin{frame}{further ideas} \begin{itemize} \item install testing \item package testing \end{itemize} \end{frame} \begin{frame}{related tools} \begin{itemize} \item schroot \item piuparts \item autopkgtest \end{itemize} \end{frame} \end{document}