[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: kernel-handbook の査読依頼 (2) chapter-source.sgml



八津尾です。
kernel-handbook の Chapter 2 です。

---------------------------------------------------------------------
<chapt id="source">
  <heading>Debian kernel source</heading>
  <sect id="changes">
    <heading>Changes to the pristine kernel source</heading>
    <p>

      The kernels in Debian are distributed in binary form, built from
      the Debian kernel source. It is important to recognize that
      Debian kernel source may be (and in most cases is) different
      from the upstream (or "pristine") kernel source, distributed
      from <url id="http://www.kernel.org"; name="www.kernel.org"> and
      its mirrors. Due to licensing restrictions, unclear license
      information, or failure to comply with the Debian Free Software
      Guidelines (DFSG), parts of the kernel are removed in order to
      distribute the source in the <tt>main</tt> section of the Debian
      archive. Such removal produces
      <tt>linux_<em>version</em>.orig.tar.xz</tt> tarball, which
      serves as the original upstream source. <em>version</em>
      is the actual upstream version.

    </p>

    <p>
      The guidelines for firmware removal were set by the <url
      id="http://www.debian.org/vote/2006/vote_007"; name="Handling
      source-less firmware in the Linux kernel"> General Resolution
      and the <url
      id="http://lists.debian.org/debian-kernel/2006/10/msg00541.html";
      name="position statement"> by the release
      managers. Even though these documents originally applied to
      the Etch release, there were no significant changes in the
      removal policy, so they were in effect for the Lenny
      release as well. As of version 2.6.31-1, all known sourceless
      firmware has been removed from the Debian package, but much
      of it is included in the
      <url id="http://packages.debian.org/source/firmware-nonfree"; name="firmware-nonfree"> package.
      Additional information about firmware licensing and removals
      may be found at the
      <url id="http://wiki.debian.org"; name="Debian Wiki"> page <url
      id="http://wiki.debian.org/KernelFirmwareLicensing";
      name="KernelFirmwareLicensing">.

    </p>
  </sect>
  <sect id="patches">
    <heading>Debian kernel patches</heading>
    <p>

      The source from which the Debian binary kernels are built is
      obtained by taking the source from
      <tt>linux_<em>version</em>.orig.tar.xz</tt> (that
      is, pristine kernel source with problematic parts removed)
      and applying a set of Debian
      patches. These patches typically implement essential fixes for
      serious bugs and security holes. The Debian version of the
      kernel packages has the form <tt><em>version-revision</em></tt>
      where <tt><em>version</em></tt> is the upstream version of the
      kernel (like 3.2.20) and <tt><em>revision</em></tt> determines
      the patchlevel. For example, the packages with version 3.2.20-1
      are built from the <tt>linux_3.2.20.orig.tar.xz</tt> source,
      patched up to patchlevel 1. Certain packages include extra
      'featuresets' not included in the upstream source, such as
      <tt>rt</tt>.

    </p>
  </sect>
  <sect id="acceptance">
    <heading>Policy for patch acceptance</heading>
    <p>
      The general policy of the Debian kernel team is that a patch
      must either fix a bug or add hardware support, and must be based
      on a change already accepted by the upstream kernel maintainers.
      The change does not need to have been included in an upstream
      release yet.  This policy allows the team to drop most patches
      when moving to a new upstream version, rather than having to
      maintain an increasing series of Debian-specific patches.  The
      recommended procedure for inclusion of patches introducing
      optional features is to submit to the upstream maintainer.
    </p>
  </sect>
</chapt>


---------------------------------------------------------------------
<chapt id="source">
  <heading>Debian カーネルソース</heading>

  <sect id="changes">
  <heading>素のカーネルソースへの変更</heading>
    <p>
      Debian のカーネルはバイナリ形式で配布されており、 Debian カーネルソースからビルドされます。Debian カーネルソースは
      (大抵の場合) <url id="http://www.kernel.org"; name="www.kernel.org"> とそのミラーで配布されているアップストリームの
      (または "素" の) カーネルソースとは異なる可能性があるということを認識しておきましょう。
      ライセンスの制約により、不明確なライセンス情報や Debian フリーソフトウェアガイドライン (DFSG) に合致しないカーネル
      のパーツは Debian アーカイブの <tt>main</tt> セクションから除外されます。
      除外のプロセスを経て <tt>linux_<em>version</em>.orig.tar.xz</tt> の tarball ができます。
      これはオリジナルのアップストリームソースとして提供されます。
      <em>version</em> は実際のアップストリームのバージョンです。
    </p>

    <p>
      ファームウェアを除外するガイドラインが一般決議: <url
      id="http://www.debian.org/vote/2006/vote_007"; name="Handling
      source-less firmware in the Linux kernel"> によって採択され、
      リリースマネージャによって <url id="http://lists.debian.org/debian-kernel/2006/10/msg00541.html"; name="position statement">
      が宣言されました。
      これらの文書は、もともとは Etch のリリースに適用されたものですが、除外ポリシーに目立った変更がないため Lenny のリリースに対しても有効です。
      バージョン 2.6.31-1 以降、ソースが無いファームウェアは全て Debian パッケージから削除されましたが、多くは
      <url id="http://packages.debian.org/source/firmware-nonfree"; name="firmware-nonfree">
      パッケージに収録されています。
      ファームウェアのライセンス情報と、削除に関連した追加の情報は <url id="http://wiki.debian.org"; name="Debian Wiki"> の
      <url id="http://wiki.debian.org/KernelFirmwareLicensing"; name="KernelFirmwareLicensing"> を参照して下さい。
    </p>
  </sect>

  <sect id="patches">
    <heading>Debian カーネルパッチ</heading>
    <p>
      Debian のバイナリ形式のカーネルをビルドするためのソースは <tt>linux_<em>version</em>.orig.tar.xz</tt> から入手したソースに
      (このソースは問題のある箇所を除去した素のカーネルソースです。) Debian パッチを当てることで手に入ります。
      これらのパッチは深刻なバグやセキュリティホールに対する必須の修正が実装されているものがほとんどです。
      Debian の カーネルパッケージは <tt><em>version-revision</em></tt> というフォーマットになっています。
      <tt><em>version</em></tt> はアップストリームのカーネルバージョン (例えば 3.2.20) を、
      <tt><em>revision</em></tt> はパッチレベルをあらわします。
      たとえば、3.2.20-1 というバージョンナンバーは <tt>linux_3.2.20.orig.tar.xz</tt> のソースに
      パッチレベル 1 のパッチが当たっているという意味になります。
      特定のパッケージには、アップストリームのソースには入っていない <tt>rt</tt> のようなオプション機能が組込まれている場合があります。
    </p>
  </sect>

  <sect id="acceptance">
    <heading>パッチ受入れのポリシー</heading>
    <p>
      Debian カーネルチームの基本となるポリシーは、パッチはバグを修正するものかハードウェアのサポートを追加するものでなければならないことと、
      アップストリームのカーネルメンテナによってすでに受入れられた変更にもとづいていなければならないことです。
      ただし、この変更はアップストリームのリリースに含まれている必要はありません。
      このポリシーにより、次のアップストリームバージョンへ移行する際に、増え続ける Debian 特有のパッチをメンテナンスし続けることなく、
      ほとんどのパッチを捨てることができます。
      オプション機能を提供するパッチを取込んでもらうためには、まずアップトリームのメンテナにパッチを投げてみましょう。
    </p>
  </sect>
</chapt>

Attachment: signature.asc
Description: Digital signature