openSUSE:Leap

移動先: 案内, 検索
このページでは、 SUSE Linux Enterprise のソースコードを元に openSUSE ディストリビューションを開発するにあたって、その議論に関する現状を記録しています。
Process-stop.png
警告!
openSUSE Leap の開発は現在進行中であり、下記に示す状況は将来的に変更されることがあることにご注意ください。定期的な更新をご希望の場合は、 ブログ (英語) をお読みください!


概要

openSUSE Conference 2015 において、 SUSE は SUSE Linux Enterprise (SLE) 製品とそのメンテナンス更新のソースコードを、 OBS 参照サーバ 内で公開することをアナウンスしました。これは、 SLE と openSUSE の開発者がお互いにソースコードを持ち帰り、ディストリビューションリリース (SLE12/13.2) の安定性を高める作業を行なうための可能性を切り開いたことになります。このページでは、この件に関して メインの openSUSE 開発者メーリングリスト で議論された成果を記録しています。

この議論の結果、 2 種類のディストリビューションを公開することになりました。 1 つはローリングリリースモデルを採用し、継続的なアップグレードが行なわれる Tumbleweed 、もう 1 つはバージョンごとにアップグレードが行なわれる Leap です。

現状

現在、 openSUSE Leap 42.1 は Milestone 2 (アナウンス) までが公開され、 software.opensuse.org からダウンロードできるようになっています。

openSUSE Leap 42.1 の正式公開は 2015 年 11 月 を予定しています。

開発に関する議論

プロセス

Stephan Kulow が名言したように 、 SLE のソースコードからはシステムの中枢部分を採用し、 "デスクトップ関連の要素" については Tumbleweed のものを使用する、というのが基本的な流れになります。

プロジェクトのレイアウト

openSUSE:42
このプロジェクトには openSUSE Leap からの正式なフォークだけが含まれています。それぞれ下記の 3 つのプロジェクトに対するプロジェクトリンクが含まれています。
openSUSE:42:SLE-Pkgs-With-Overwrites
実際には SLE12 をベースにしているものの、 SLE12 ではまだ公開されていない修正を必要とするパッケージに対して、すべてのソースコードが含まれています。
openSUSE:42:Factory-Copies
openSUSE:Factory 内の特定バージョンに対するバージョンリンクです。
openSUSE:42:SLE12-Picks
SUSE:SLE-12-SP1:GA, SUSE:SLE-12-SP1:Update, SUSE:SLE-12:GA, SUSE:SLE-12:Update で公開されているパッケージのうち、特定のバージョンへのバージョンリンクです。

パッケージの発信手順

パッケージの作成者は、他のプロジェクトと同様に openSUSE:42 に対してブランチを作成し、必要であれば発信 (submit) 要求を送信します。レビュー手順は Tumbleweed で知られているとおり、通常の自動化されたレビューのほか、手作業によるレビューも各リクエストに対して行ないます。すべてのレビューを通過すると、プロジェクトのメンテナンス担当者が発信要求を受け入れます。

OBS では、サブプロジェクト内に存在するパッケージである場合、そのソースコードを自動的に変換します。ここでの変換は スクリプト を動作させ、正しいサブプロジェクトに移動するものです。スクリプトは openSUSE:42 の正式フォークでのみ実行されます。

カーネルのバージョン

Leap の当初の計画では、 SLE で提供されている 3.12 のカーネルを使用する予定でした。ところが新しいハードウエアへの対応について懸念事項が生じたため、 岩井隆氏と Richard Brown 氏の提案 により、Leap では新しい 4.1 LTS カーネルをデフォルトとして使用することとし、7 月 22 日よりディストリビューションに統合されるようになりました。

GCC のバージョン

Richard Biener 氏の提案 により、 (特にいくつかのバイナリを混在させる場合の) 互換性を維持するため、 openSUSE:42 では gcc5 コンパイラを古い libstdc++ ABI に切り替えることとしました。新しい libstdc++ ABI への切り替えは、後日実施する予定です。 また、 openSUSE:42 におけるデフォルトのコンパイラは 2015 年 7 月 1 日の時点で最終的に gcc5 にはならず、現状の 4.8 のままで行くことにしています。

RPM におけるディストリビューションのバージョンマクロについて

  • suse_version 1315 は SLE12 および openSUSE:42 の全サポート期間内で有効です。
  • SLE12:GA では sle_version は 1200 であり、 SLE12:SP1 では 1210 になります。
  • なお、 SLE と openSUSE の区別を行なう目的で、 openSUSE では is_opensuse に 1 が設定されます。
SLE12 と openSUSE:42 における RPM マクロ
SLE12:GA SLE12:SP1 openSUSE:42
suse_version 1315 1315 1315
sle_version 1200 1210 未定義/0?
is_opensuse 未定義/0? 未定義/0? 1

マーケティング要素

名前とバージョン番号

opensuse-project メーリングリスト内で議論が行なわれたとおり、コミュニティは openSUSE Board に対して、新しいディストリビューションに対する名前とバージョン番号を、候補リスト内から決定するように要求しました。

その後 7 月 6 日、 openSUSE Board は新しいディストリビューションを 'openSUSE Leap' と命名し、バージョンを 42.1 から開始することを決定しました

openSUSE Leap

開発ガイドライン


Leap 42.1: The Best of Two Worlds

SUSE Enterprise 製品のコンポーネントと LTS カーネル、そして長期間のサポートを、
オープンソースのコミュニティによる革新的な精神に組み合わせることで、
上品なまでの信頼性と新しさを兼ね備えるものとする。

ターゲットとなる利用者

一般的に Leap は、ワークステーションやサーバに対する安定バージョンを希望する人々に対して提供し、 Tumbleweed は、フリー/オープンソースソフトウエアがもたらす最新かつ最大の利益の享受を希望し、少しの不安定性を我慢できる人々に提供することを目的にしています。