Ubuntuはこうやって作られている
ミズノ:Debianから派生してUbuntuができている、という部分は……。割と難しいよねぇ。
hito:Ubuntuのコンポーネントごとに状況が違いますからねー。
瀬尾浩史:main・restricted・universe・multiverseってやつペン?
編集S:mainがCanonicalによるサポートあり、ほかがコミュニティベースで頑張る、と。
やまね:とりあえず覚えておくべきは、「universeとmultiverseはDebianからコピーしてビルドしなおしただけ」ってところかな。なので、八割ぐらいDebian。
あわしろいくや:まあ、universeやmultiverseの中にもちょっとだけUbuntu側の手が入っているものもありますが……大抵はDebianそのまんまですな。
hito:DebianとUbuntuの開発に両方関わっている人もいるから、Ubuntuが完全に寄りかかってるわけでもないけど……。基本そのまんま、という理解でいいかな。うーむ、単純に言えるもんでもないので色々と難しいところです。
編集S:本を作るのと一緒で、中を知れば知るほどひとことで言えなくなるらしい……。
ミズノ:ただ、あくまでも「ビルドしなおしたもの」なのでDebianと互換ではないです、ってのは注意かな。同じソースパッケージではあるけど、ビルドした結果の中身には互換性がないかもしれない。
あわしろいくや:互換性がないだけでなく、アップデート時におかしなことになる可能性もあって、混ぜると危険ですな。
編集S:う、なんで混ぜるな危険になってるのか、っていう部分がわかんない。ビルドしなおすと別のものになる? だから危険?
小林:おおむねそういう理解でいいですね。mainの部分が違っていたり、ビルド時に使われる設定が違っていたり、ビルドするタイミングが違っていたりするので、バイナリの互換性がなくなることがあります。要するに「うまく動かない」と。
あわしろいくや:さらに、「DebianのパッケージをそのままUbuntuに混ぜた」状態は誰もテストしていないので、パッケージのアップデート時におかしなバグを踏む可能性もありますな。そのときには誰も助けてくれませんし。まったくオススメできません。
編集S:ほほー。
hito:ではmainとrestrictedは、ってなるんですが……。まずカーネル部分は、今だともうUbuntuは完全に独自に開発してますね。
やまね:Debianとの互換性だけは維持されている?
hito:それなりに。Debianのカーネルパッケージに含まれているパッチの一部が移植されたりはしていますね。そもそもリリースバージョン食い違ってるから、「互換ではないが、それで問題が起きないようになっている」ぐらいかなぁ。細かい部分をきっちり説明すると、理解するのに一年ぐらい勉強してください、みたいな世界になっちゃうので省略。
あわしろいくや:Ubuntuのカーネルってどういうパッチが当たってるんでしたっけ?
hito:基本、kernel.orgのやつをベースにドライバ類がバックポートされてて、あとAppArmorのためのパッチが入ってて、というのが大きな違いかなぁ。モノによっては新規にドライバ書かれてたりもするし。他にもこまごまとあるので、知りたければhttp://kernel.ubuntu.com/を見ろと。
ミズノ:いきなりgit見ろとかハードル高いし!
hito:カーネル追いかけるのにgit見れないとか無謀すぎる。英語読めないけど英文学研究したいです、ぐらいの無謀さ。……というカーネルまわりのハードコア話はともかく、mainの残りの部分の話もしないと。
やまね:mainの部分、Debianから直接コピーしてるやつとマージしてるやつがある?
小林:あと、独自に開発しているものもあれば、上流から直接持ってきているものも混じってますね。
あわしろいくや:独自開発ものはuniverseにもありますけど、mainの方が割合は多いですね。GNOME関連なんかはDebianからコピーではなく、直接GNOMEから持ってきていたりもしてますな。
hito:で、こうして作った材料でUbuntuやらKubuntuやらXubuntuやらUbuntu Studioやら……が登場する、と。
ミズノ:どっちにせよ、DebianがないとUbuntu存在しない、と。
編集S:ううう、全体的にどーなってるのかイマイチわかんない。このあたりは皮膚感覚の部分が多そうだから、実際に開発を追いかけてないと実際のところは分かんないんだろうなぁ。
(次ページへ続く)
この連載の記事
-
第61回
PC
~師範、Ubuntu道場が最終回です!~ -
第60回
PC
~師範、組版システム「TeX」について教えてください!~ -
第59回
PC
~師範、Ubuntu関連のイベントを教えてください!~ -
第58回
PC
~師範、日本語Remixの作り方を教えてください!~ -
第57回
PC
~師範、Ubuntu独自のテクノロジーについて教えてください!~ -
第56回
PC
~師範、いまどきの仮想化について教えてください!~ -
第55回
PC
~師範、Ubuntu 12.04の特徴を教えてください!~ -
第54回
PC
~みなさん、Ubuntuに触ったきっかけを教えてください!~ -
第53回
PC
~師範、Ubuntuのヘビーユーザーってどんな感じでしょう?~ -
第52回
PC
~師範、Ubuntuは今後どうなるんですか?~ -
第51回
PC
~師範、ARMって何ですか!~ - この連載の一覧へ