openSUSE:Build Service FAQ

移動先: 案内, 検索


Open Build Service とは何?

Open Build Service はソフトウエア開発者に対して提供されるサービスで、 openSUSE やその他のディストリビューションのほか、異なるハードウエアアーキテクチャ向けにもオープンソースのソフトウエアを構築し、幅広いユーザに公開するための仕組みです。

自分自身のソフトウエアを各種の Linux ユーザに対して提供したいと考えている開発者の場合、 1 つのディストリビューション向けにパッケージを構築しても、他のパッケージでは一般に動作させることができない、という問題に直面します。 Open Build Service は開発者に対して、同じソースコードから複数のディストリビューションに対応するパッケージを、同じ品質の高さで構築して提供する作業を支援する、唯一のソースビルドシステムです。システムイメージングツールである KIWI を利用することで、オープンソースの開発者は自分の要件に合った Linux ディストリビューションを素早く構築することもできるほか、品質を高める目的でそれを厳密にテストし、簡単にインストールできるようにパッケージ化することもできます。ユーザは最新のオープンソースパッケージを簡単に探すことができるほか、カスタマイズしたディストリビューションを作成したりすることもできます。

Open Build Service はオープンソースのみで構成されたサービスであり、開発者やユーザに対して Linux のパッケージに関する選択の自由と、完全なるアクセスを提供します。もちろんこれには openSUSE, SUSE Linux Enterprise のほか、 Fedora, Debian, Ubuntu などのディストリビューションも含まれています。


誰もが Open Build Service でパッケージを構築できるのか?

はい、誰もが Open Build Service を利用することができます。 openSUSE アカウント (Wiki を編集する際に使用するのと同じアカウント) が必要となりますので、ご登録のうえ http://build.opensuse.org にアクセスしてください。

Open Build Service の Web インターフェイスでは、すべてのプロジェクトの一覧を表示することができるほか、検索機能や統計情報の表示、 Open Build Service の状態表示などができます。また、 Open Build Service のヘルプを表示したり、構築されているパッケージの説明を読んだり、 spec ファイルを作成したりバグを報告したりすることもできます。

Open Build Service そのものの議論をご希望の方は opensuse-buildservice@opensuse.org メーリングリスト (英語) にご参加ください。

なお、 Open Build Service はコミュニティによって支えられているプロジェクトであることに注意してください。そのため、パッケージを構築したいと考えている方は、特に下記の点にご留意ください:

  • コミュニティに対して何か新しいものを提供することが期待される場合に、パッケージを作成してください
  • 似たようなパッケージや分野を持つ人々と交流してください
  • パッケージを重複させるのではなく、既存のパッケージを支援するようにしてください
  • 何をやろうとしているのかを、コミュニティメンバーに周知するようにしてください。周知はメーリングリストなどが適切でしょう。

Open Build Service の資源は有限であることにご注意ください。できるだけリソースを追加できるようにはしていますが、不要なパッケージは不要なリソース消費を簡単に増やしてしまうからです。

Open Build Service では他のディストリビューション向けのパッケージも構築できるのか?

はい。現時点では、 RPM および Debian 形式のパッケージに対応しています。 openSUSE と SUSE Linux Enterprise のほかには、 Debian, Ubuntu, Fedora, Mandriva の各ディストリビューションに対応しています。

Open Build Service で Windows OS 向けのパッケージを構築できるのか?

Windows の実行ファイルはクロスコンパイラ (mingw など) で作成することができます。ただし、主なターゲットはあくまでも Linux ディストリビューションであるため、出力されるのは .rpm または .deb のパッケージになることにご注意ください。

Open Build Service で自分専用のディストリビューションを構築できるのか?

Open Build Service では KIWI と呼ばれるシステムを利用して、イメージファイルを作成することができます。 openSUSE 11.2 はイメージを含め、すべてのものを Build Service で構築しています。ディストリビューションのカスタマイズ例は、 KDE:Medias プロジェクトをご覧ください。こちらは最新の KDE リリースに合わせて、安定版の openSUSE を更新したものを提供しています。

Open Build Service のユニークなところは?

  • OBS はオープンソースライセンス (GPL) に完全に準拠しています。
  • OBS ではパッケージの構築を簡単に行なうことができます。
  • OBS はソフトウエアの実験を行なうための仕組みを提供しています。
  • 巨大なパッケージコレクションを作成するための基礎になっています。
  • さまざまなディストリビューションに対するパッケージを構築することができます。
  • 1-クリックインストールなどの使いやすいエンドユーザ向けインターフェイスを提供しています。
  • OBS は複数のパッケージバージョンに対応 (ソースリンク) することのできる開発プラットフォームです。
  • OBS はパッケージの構築について一貫性を提供します。依存先のパッケージが変更された場合、パッケージを自動的に再構築します。
  • OBS はパッケージの構築をコミュニティ内での作業に分割することができます。これはつまり、苦労を分割できるということになります ;-)

Open Build Service を自分のマシンにインストールしたい場合は?

openSUSE:Tools プロジェクトから提供されている OBS RPM パッケージをインストールしてください。 また、 開発者文書 もお読みください。

openSUSE のパッケージを構築するのに、 openSUSE をインストールする必要がある?

いいえ。 OBS インスタンスは Web サービスですので、パッケージの構築は遠隔から制御することになります。したがって、インストールしている Linux のバージョンには依存しません。このような仕組みは、どのようなオペレーティングシステムからでもシステムを制御することができる、という利点にもつながっています。

Open Build Service は Web インターフェイス から制御することができるほか、 osc と呼ばれるコマンドラインツール (多数のディストリビューション向けにパッケージが作成されています) からも制御することができます。

Web インターフェイスはわかりやすく使いやすい仕組みではありますが、 osc コマンドラインツールは、パッケージをローカルで構築したりなどの高度な機能が利用できます。ローカルでの構築はサブディレクトリ内に構築環境が用意され、その中に chroot して処理が行なわれます。これにより、学びやすくテストしやすい環境になっています。