八津尾です。 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