Upgrade to Pro — share decks privately, control downloads, hide ads and more …

openSUSE Leap 15.3 とリリースモデルの話

openSUSE Leap 15.3 とリリースモデルの話

Open Developers Conference Online 2021

Fuminobu TAKEYAMA

August 24, 2021
Tweet

More Decks by Fuminobu TAKEYAMA

Other Decks in Technology

Transcript

  1. 2021-08-28 3/18 正しいのはどれ? • 1. サーバールームでモフモフできるカメレオン型ガジェット • 2. Ruby で簡単に

    Web アプリを作れるフレームワーク • 3. 1996年にドイツで生まれた Linux ディストリビューション
  2. 2021-08-28 4/18 正しいのはどれ? • 1. サーバールームでモフモフできるカメレオン型ガジェット • 2. Ruby で簡単に

    Web アプリを作れるフレームワーク • 3. 1996年にドイツで生まれた Linux ディストリビューション
  3. 2021-08-28 5/18 正解: 3 • 3. 1996年にドイツで生まれた Linux ディストリビューション –

    S.u.S.E Linux 4.2 リリース – これ以前は Slackware + 設定ツールでした • Q: RedHat 系ですか? Debian 系ですか? A: どちらでもありません! Slackware 系でもありません • Q: OpenSUSE ですか?openSUSE ですか? A: o は小文字です。IPhone ではなく、iPhone なのと同じです
  4. 2021-08-28 7/18 2つの openSUSE Tumbleweed 常に最新 安定 ローリング・リリース 新しいカーネルやライブラリを使いたい人 アプリケーションのテスト環境

    年次アップデート 有償サポートなしで安定版を使いたい人 普段遣いのデスクトップやサーバーに 15.3 での方針変更は後ほど
  5. 2021-08-28 8/18 openSUSE Tumbleweed • ローリングリリース: パッケージの新しいバージョンがすぐに降ってくる – アップストリームでのアップデート後、メンテナがパッケージを更新したら –

    ディストリビューション全体のテストが通ったら配信される – 週に複数回 • Leap では1年以上待つ • 新しいバージョンを使いたいときに、自分でビルドする必要が (あまり)ない
  6. 2021-08-28 9/18 openSUSE Tumbleweed の仲間たち • コンテナ × ローリングリリース •

    openSUSE MicroOS – 最小限の初期インストールパッケージ – トランザクショナルアップデート • Btrfs のスナップショットで、パッケージ更新を一斉反映、失敗時のロールバック – 用途 • コンテナのベースイメージ…小さいほうがよい • コンテナホスト…アプリはパッケージではなくコンテナで入れる • New! コンテナベースのデスクトップ…アプリはパッケージではなく Flatpak で入れる • openSUSE Kubic – Kubernetes ノード用の MicroOS
  7. 2021-08-28 10/18 openSUSE Leap • SUSE Linux Enterprise (SLE) ベースのディストリビューション

    – 基本的には SLE と同一のパッケージ – openSUSE 独自パッケージや設定 • 現在のバージョン: 15.3 (2021年6月) – Kernel 5.3.18 (最新ハードウェアサポートパッチ入り) – KDE Plasma 5.18, GNOME 3.34
  8. 2021-08-28 11/18 15.3 での方針変更 • 15.2 まで: SLE とパッケージのソースコードが同一 –

    コンパイル時のパラメータに若干の違いも多かった • 15.3 から: パッケージがバイナリレベルで同一 – パッケージの署名まで同じ – RHEL クローンディストリビューションとの違い • 目的: パッケージの総メンテナンスコストを下げる – 多くのパッケージは SLE の長期サポートをそのまま提供できる
  9. 2021-08-28 12/18 openSUSE Leap 15.3 の構成 SUSE Linux Enterprise のパッケージ

    openSUSE Backports のパッケージ openSUSE 15.3 固有のパッケージ • *-branding-openSUSE • virtualbox • ... • plasma5-workspace • xfce4-panel • chromium • ... • kernel-default • gnome-shell • gcc • ... SLE 向けの コミュニティ提供パッケージ
  10. 2021-08-28 13/18 openSUSE Leap 15.3 のリリース構成 • 15.3 のセットアップ後のリポジトリ構成は SLE

    との共通化のため少し複雑 – OSS: インストールメディア(SLE や Backports 由来のものを含む) – Update: 下記以外の更新パッケージ – Update repository with updates from SLE: SLE の更新パッケージ – Update repository of openSUSE Backports: Backports 由来の更新 – Non OSS – Update Non OSS
  11. 2021-08-28 15/18 openSUSE の開発とは? • Tumbleweed の開発 • コミュニティメンバーが SLE

    の開発に参加 – コミュニティメンバーが SLE のパッケージバージョンアップ提案をするための 提案システムを導入 – 実際の変更リクエストは Open Build Service で従来どおり • ただし、ビルドは SUSE の非公開 OBS で実施
  12. 2021-08-28 16/18 15.3 に向けた作業 • 忙しかったのであまりできず… • リリースノートに IBus の制限事項を書いた

    – キーボードレイアウトの名前で使用するコード体系が変わった • 例: ger → deu – 変更前のレイアウト名を設定ファイル中にした持つ状態でアップグレードすると キーボードレイアウトが US に戻るので再設定が必要 – コード修正が難しい状況で、リリースノートでカバーしたのは個人的に初めて
  13. 2021-08-28 17/18 補足: openSUSE のパッケージ開発 • Open Build Service を使用

    – パッケージソースのバージョン管理 – Pull request 方式のコラボレーション – CI 環境 • オンラインビルド環境 (単体テスト実行、静的チェッカ) • リポジトリからの配布 • 誰でもすぐに開発に参加できる! – アップデートして pull request • tar.xz を差し替えるだけも多い https://build.opensuse.org/
  14. 2021-08-28 18/18 まとめ • 2種類のリリースモデル – ローリングリリースモデルの Tumbleweed – 定期リリースモデルの

    Leap • Leap 15.3 のパッケージは SLE と同一化 – 15.2 まではソースコードリビルド