\item patches -- if you need to modify the upstream sources
\end{itemize}
\hbr
- \item Most of the files use a format based on RFC 822 (mail headers)
+ \item Several files use a format based on RFC 822 (mail headers)
\end{itemize}
\end{frame}
\item Named \texttt{\textsl{package}\_\textsl{version}\_\textbf{all}.deb}
\end{itemize}
\end{itemize}
+ \br
+ A source package can generate a mix of \texttt{Architecture:\ any} and \texttt{Architecture:\ all} binary packages
\end{frame}
\begin{frame}[fragile]{debian/rules}
dh_installchangelogs
dh_installdocs
dh_installexamples
-# dh_install
+ dh_install
dh_installman
dh_link
dh_strip
\begin{frame}[fragile]{CDBS}
\hbr
\begin{itemize}
- \item Still a lot of redundancy between packages
+ \item With debhelper, still a lot of redundancy between packages
\hbr
- \item Second-level helpers that factor common funtionality
+ \item Second-level helpers that factor common functionality
\begin{itemize}
\item Building with \texttt{./configure \&\& make \&\& make install} or CMake
\item Support for Perl, Python, Ruby, GNOME, KDE, Java, Haskell, \ldots
\begin{frame}{Classic debhelper vs CDBS vs dh}
\hbr
\begin{itemize}
- \item Market shares: (feb'11)\\
- Classic debhelper: 45\% \hskip 1em CDBS: 24\% \hskip 1em dh: 29\%
+ \item Mind shares:\\
+ Classic debhelper: 41\% \hskip 1em CDBS: 23\% \hskip 1em dh: 34\%
\hbr
\item Which one should I learn?
\begin{itemize}
- \item Probably all of them
+ \item Probably a bit of all of them
\item You need to know debhelper to use dh and CDBS
\item You might have to modify CDBS packages
\end{itemize}
\hbr
\item Which one should I use for a new package?
\begin{itemize}
- \item \textbf{dh} (only solution with an increasing market share)
+ \item \textbf{dh} (only solution with an increasing mind share)
\end{itemize}
\end{itemize}
\hbr
\item Done in \textsl{maintainer scripts}\\
\texttt{preinst, postinst, prerm, postrm}
+ \begin{itemize}
+ \item Snippets for common actions can be generated by debhelper
+ \end{itemize}
\hbr
\item Documentation:
\begin{itemize}
\begin{frame}{Several ways to contribute to Debian}
\begin{itemize}
\item \textbf{Worst} way to contribute:
- \begin{itemize}
+ \begin{enumerate}
\item Package your own application
\item Get it into Debian
\item Disappear
- \end{itemize}
- \br
- \item Bring new software to Debian
- \begin{itemize}
- \item Only if it's interesting/useful enough, please
- \item Are there alternatives already packaged in Debian?
- \end{itemize}
+ \end{enumerate}
\br
\item Adopt existing unmaintained packages (\textsl{orphaned packages})
\begin{itemize}
\item Full list on \url{http://wiki.debian.org/Teams}
\item An excellent way to work with more experienced contributors
\end{itemize}
+ \br
+ \item Bring new software to Debian
+ \begin{itemize}
+ \item Only if it's interesting/useful enough, please
+ \item Are there alternatives already packaged in Debian?
+ \end{itemize}
\end{itemize}
\end{frame}
\begin{itemize}
\item UCF -- manage user changes to configuration files when upgrading
\hbr
+ \item dpkg triggers -- group similar maintainer scripts actions together
+ \hbr
\item Debian development organization:
\begin{itemize}
\item Bug Tracking System (BTS)