</div>
<div class="slide">
- <h1>Debian kernel team</h1>
+ <h1>Debian kernel team (1)</h1>
+ <p>
+ Who are we?
+ </p>
+ <ul class="incremental">
+ <li>
+ Currently 5 general maintainers: Maximilian Attems, Bastian
+ Blank, dann frazier, Moritz Muehlenhoff and me
+ </li>
+ <li>
+ Many more specialised contributors:
+ <ul>
+ <li>Specific architectures</li>
+ <li>Specific features (e.g. Xen)</li>
+ <li>Bug triage</li>
+ </ul>
+ </li>
+ <li>
+ Would appreciate more help, particularly with bug triage and
+ PowerPC
+ </li>
+ </ul>
+</div>
+
+<div class="slide">
+ <h1>Debian kernel team (2)</h1>
+ <p>
+ What do we do?
+ </p>
+ <ul class="incremental">
+ <li>
+ Bug triage - takes a huge amount of time
+ </li>
+ <li>
+ Backport bug fixes and features - particularly new hardware
+ support for stable
+ <ul class="incremental">
+ <li>...while trying not to change kernel ABI in stable</li>
+ </ul>
+ </li>
+ <li>
+ Update build configurations for each new upstream release -
+ e.g. to enable new drivers
+ </li>
+ <li>
+ Try to ensure smooth upgrades when there are major
+ implementation changes - e.g. KMS, switch to libata drivers
+ </li>
+ <li>
+ Integrate <em>some</em> features not accepted upstream
+ </li>
+ </ul>
+</div>
+
+<div class="slide">
+ <h1>Official Linux kernel packages (1)</h1>
+ <p>
+ Main source package is linux-2.6 (still!). Most binary package
+ names change regularly.
+ </p>
+ <ul class="incremental">
+ <li>
+ linux-image-<var>upstream</var>-<var>abi</var>-<var>flavour</var>
+ - compiled kernel and modules
+ </li>
+ <li>
+ linux-headers-<var>upstream</var>-<var>abi</var>-<var>flavour</var>
+ (and others) - development package for OOT modules
+ </li>
+ <li>
+ linux-libc-dev - headers for userland
+ </li>
+ <li>
+ linux-source-<var>upstream</var> - for custom kernels
+ </li>
+ <li>
+ linux-doc-<var>upstream</var>, linux-tools-<var>upstream</var>,
+ etc.
+ </li>
+ <li>
+ linux-support-<var>upstream</var>-<var>abi</var> - scripts and
+ metadata to support linux-latest-2.6
+ </li>
+ </ul>
+</div>
+
+<div class="slide">
+ <h1>Official Linux kernel packages (2)</h1>
+ <p>
+ The linux-latest-2.6 source package builds meta-packages to
+ support automatic upgrades between binaries built from linux-2.6.
+ </p>
+ <ul class="incremental">
+ <li>
+ linux-image-<var>flavour</var>
+ </li>
+ <li>
+ linux-headers-<var>flavour</var>
+ </li>
+ <li>
+ linux-source, linux-doc, linux-tools, etc.
+ </li>
+ </ul>
+ <p class="incremental">
+ The installer will normally install linux-image-<var>flavour</var>
+ (for some appropriate <var>flavour</var>).
+ </p>
</div>
<div class="slide">
- <h1>Official Linux kernel packages</h1>
+ <h1>Official Linux kernel packages (3)</h1>
+ <ul class="incremental">
+ <li>
+ firmware-free - separate 'firmware' compliant with DFSG
+ </li>
+ <li>
+ linux-base - base package for images and tools
+ </li>
+ <li>
+ linux-kbuild-2.6 builds linux-kbuild-<var>upstream</var> -
+ code used for building OOT modules
+ </li>
+ </ul>
</div>
<div class="slide">
- <h1>Custom Linux kernel packages</h1>
+ <h1>Custom Linux kernel builds</h1>
+ <p>
+ The official packages work for most users, but not all:
+ </p>
+ <ul class="incremental">
+ <li>
+ Different ARM platforms need incompatible configurations,
+ and we cannot build them all
+ </li>
+ <li>
+ New features are not enabled immediately if we are worried
+ about potential regressions
+ </li>
+ </ul>
+ <p class="incremental">
+ Using either upstream source or Debian linux-source package:
+ </p>
+ <ul class="incremental">
+ <li>
+ <tt>make && make install</tt>
+ </li>
+ <li>
+ <tt>make deb-pkg</tt> - build packages
+ </li>
+ <li>
+ <tt>make-kpkg</tt> - build packages with more customisation;
+ requires kernel-package
+ </li>
+ </ul>
</div>
<div class="slide">
<h1>Out-of-tree modules</h1>
+ <p>
+ The kernel team does not encourage the use of out-of-tree modules.
+ However, we support them by providing development packages and by
+ avoiding ABI changes during a stable release.
+ </p>
+ <p class="incremental">
+ Debian has two packages to aid in building out-of-tree modules:
+ </p>
+ <ul class="incremental">
+ <li>
+ <tt>dkms</tt> - builds and installs modules automatically. Can
+ build packages for installation on other systems. Also
+ supported by Ubuntu and SUSE.
+ </li>
+ <li>
+ <tt>module-assistant</tt> - builds packages as directed.
+ Uses a separate package name for each kernel ABI.
+ </li>
+ </ul>
</div>
<div class="slide">
<h1>Firmware files</h1>
+ <ul class="incremental">
+ <li>
+ Most peripherals have microcontroller running non-free
+ firmware; some require host to load it
+ </li>
+ <li>
+ Several drivers used to include firmware, making kernel
+ non-free. Fudged with GRs for a while; finally fixed in squeeze
+ </li>
+ <li>
+ Users with these devices - almost any wifi card, some network
+ controllers and Radeon GPUs - will still need the firmware
+ files installed
+ </li>
+ <li>
+ Kernel team maintains <tt>firmware-nonfree</tt> source package
+ covering most firmware files that are clearly redistributable
+ </li>
+ <li>
+ Also collected in linux-firmware.git repository maintained by
+ David Woodhouse and myself
+ </li>
+ </ul>
</div>
<div class="slide">
<h1>Documentation</h1>
+ <ul class="incremental">
+ <li>
+ <tt>manpages-dev</tt> - the system call API
+ </li>
+ <li>
+ <tt>linux-doc-</tt><var>upstream</var> - miscellaneous upstream
+ documentation
+ </li>
+ <li>
+ <tt>linux-manual-</tt><var>upstream</var> - the internal API,
+ based on structured comments
+ </li>
+ <li>
+ <tt>debian-kernel-handbook</tt> - Debian-specific information;
+ currently also Linux-specific but could cover other kernels
+ </li>
+ <li>
+ <a href="http://wiki.debian.org/DebianKernel">http://wiki.debian.org/DebianKernel</a>
+ - wiki index page
+ </li>
+ </ul>
</div>
<div class="slide">