リネオブログ

Yocto よもやま話 第 9 回 「Yocto Project の最新動向」

2023 年 03 月 07 日   Yocto Project よもやま話

今回のブログは、予告を変更して最近の Yocto Project の状況についてお知らせします。

1. Yocto Project の WebSite から

Yocto Project の WebSite の TopPage に掲載される画像は、少し前までは最新のリリース情報でしたが、現在はプロジェクトに関する重要なトピックが掲載されています。

1.1 FOSDEM2023 の講演から

AUTOMATED SBoM GENERATION WITH OPENEMBEDDED

2023 年 2 月 4 日(土)、5 日(日)に、ベルギーのブリュッセル自由大学で開催された FOSDEM2023 (Free and Open Source Development European Meeting) における Josua Watt 氏の SBoM に関する講演へのリンクとなっています。

昨年 11 月に開催された Yocto Project Summit でも、 「Software Bill of Materials and Supply Chain with the Yocto Project」 というタイトルで講演を行っています(前回のよもやま話)が、FOSDEM2023 では
「Automated SBoM generation A case study of SBoM generation in meta build systems」
というタイトルで、より一般的な内容での講演となっています。

Yocto Project Base で開発を行う際のメリットの一つである、SBoM(SPDX) 生成のサポート(Yocto3.4~)を前面に打ち出しての紹介となっています。

1.2 2022, A YEAR IN REVIEW

2022,A YEAR IN REVIEW

昨年の 2021 年版 に引き続いて、 2022 年の年次報告書が掲載されています。

2 番目の LTS Yocto4.0 Kirkstone のリリース
  • コアコンポーネントの 100% バイナリ再現性の確保
  • Rust の提供開始
  • SPDX2.2 SBoM generator の提供
  • CVE チェック機能における JSON フォーマットでの出力の追加
  • レシピのライセンス名称を SPDX 準拠に変更
  • 3.4 で変更となった上書き演算子が利用可能な最初のLTS版
ドキュメントの拡充
  • SBoM 生成に関する新規ドキュメントの作成
    ※上記ドキュメントを作成する際の知見を元に、「Bitbaking SPDX SBoM」というタイトルで講演を行っています(前回のよもやま話)。
  • CVE 管理に関するドキュメントの改善
  • リリースノートのドキュメントへの組込み
    ※3.3 までの PlainText のみから、Sphinx(Yocto Project のドキュメントで採用されているフォーマット)形式の追加。
Yocto Project のドキュメントは、2019 年末まで、Scott Rifenbark 氏が担当していました。氏はプロジェクト発足時に Intel のテクニカルドキュメンテーション部門から Yocto Project に参加し、docbook フォーマットで各種ドキュメントの作成を行っていました。Intel の社内体制変更後は独立した際に、プロジェクトは引き続きドキュメントの保守を氏に業務委託していましたが、闘病の末 2020 年 1 月末逝去されました。
その後、ドキュメントは Yocto Project のコミュニティマネージャーを担当している Linaro の Nicolas Dechesne 氏のもとで、docbook 形式から sphinx 形式に移行した後、現在は bootlin 社に業務委託を行って Michael Opdenacker 氏が中心となって整備をおこなっています。
リアル会場での展示会への参加再開及び summit の開催
  • 年 2 回の virtual Yocto Project Summit の実施
    • 5 月の開催時の参加者は 273 名。
    • 11 月開催時の参加者は 308 名。
  • 2022 年 6 月にアメリカ合衆国テキサス州オースティンで開催の ELC2022 で 5 本の講演の実施
  • 2022 年 9 月にアイルランドのダブリンで開催の ELCE2022 では、5 本の講演のほか、Arm 提供の元 Booth を構えたところ、多くの来場者でにぎわったとのことで、三年ぶりの再会を果たした方々も多かったようです。
コミュニティの最新情報
  • Yocto Project は、Linux Foundation 傘下の SPDX との連携を継続し、Yocto Project のデベロッパー Joshua Watt 氏は SPDX Version3 の起草にも関わっています。
  • Project Users wiki page への登録の呼びかけ
    プロジェクトの認知度を上げるため、リストへの登録を呼びかけています。最終的な顧客や開発製品名を伏せての登録も可能です。プロジェクトに多くの利用者がいることを示しましょう。
    アドボカシーメーリングリストを通じてお知らせください。
  • Yocto Project Mastodon 現れる
    • 2022 年に起こった予測困難な出来事(ぼかして書かれていますが、SNS 大手の買収に関連する騒ぎ)の後、Mastodon 上に存在しているとのこと。
メンバー構成の更新
  • BMW がプラチナメンバーとして新規に参加し、Axis は シルバーメンバーとしてプロジェクトに復帰しました。
    ※従来 Xilinx と AMD は個別にメンバーとして参加していましたが、今期から AMD/Xilinx として、1 つの登録となりました。
まもなく登場
  • YoctoProject を用いて開発され、そろそろ市場に出荷される製品として、業務向けエスプレッソコーヒマシンを製造する Synesso 社、から、初の家庭向けのラインナップ ES.1 が紹介されています。
    ※個人的にはとても興味深い製品ですが、仕様書の電源の表示、現時点では 120V/220V 対応のみで、日本仕様がないのが残念です。

1.3 Richard Purdie が Linux.com に寄稿した記事

THE YOCTO PROJECT-FEATURED ARTICLE ON LINUX.COM

現在 Linux Foundation で管理している Linux.com に、Yocto Project の ARCHITECTのRichard Purdie が寄稿した記事へのリンクが掲載されています。

タイトルは
「Maintainer confidential: Opportunities and challenges of the ubiquitous but under-resourced Yocto Project」

いきなりリソース不足を訴える言葉から始まっています......

書き始めは自己紹介

肩書の列挙から

  • Yocto Project Architect
  • OpenEmbedded-Core 及び bitbake のメンテナー兼リードデベロッパー
  • Yocto Project Technical Steering Committee (TSC) 議長
  • OpenEmbedded の TSC メンバー
  • Linux Foundation の Fellow
    「 Linux Foundation のフェローシップは、一企業ではなく、一緒に仕事をするプロジェクトやコミュニティのために独立した立場で仕事をしたいという業界全体の要望にこたえたものです。」と、現在の立場に関する説明がおこなわれています。
Yocto Project の紹介

この中紹介されている Yocto Project の派生物

  • 世界のインターネットトラフィックの 65% は特定のメーカーのデバイスを経由しており、それらの機器には Yocto Project から派生されたソフトウェアが搭載されている。
  • Windows Subsystem for Linux も Yocto Project から派生したもの
  • 大規模サーバーの多くに搭載されているベースマネジメントコントローラー向けに提供されているOpenBMC は Yocto Project 上に構築されたもの
  • Yocto Project から派生した Automotive Grade Linux を使用する自動車
  • Comcast の RDK
  • LG の WebOS
  • 火星を周回する衛星
これまでの経緯(How we got here)

ここからいよいよ本筋に入ってきます。

原文を引用します

The biggest challenge for us now is being a victim of our success. The original company sponsorship of developers to work on Yocto understandably scaled back, and many of those developers moved on to other companies. In those companies, they're often now focused on internal projects/support, and the core community project feels starved of attention. It takes time to acquire the skillsets we need to maintain the core, as the project is complex. Everyone is hoping someone else helps the project core.

DeepL による訳文

今の私たちの最大の課題は、自分自身の成功の犠牲者になってしまうことです。
Yoctoに取り組む開発者たちの最初の企業スポンサーは、当然のことながら規模を縮小し、それらの開発者の多くは他の企業に移っていきました。そのような会社では、社内のプロジェクトやサポートに注力することが多く、コミュニティの中核となるプロジェクトは注目されていないように感じます。プロジェクトが複雑なため、コアのメンテナンスに必要なスキルセットを身につけるには時間がかかります。みんな、他の誰かがプロジェクトの中核部分を助けてくれることを望んでいるのです。

2018 年以降に起こった出来事を、簡潔に固有名詞を避けて記述しています。

Yocto Project アーキテクトとしての一日 (A day in my life as the Yocto Project architect)

日々どのような作業をおこなっているか記述されています。

最初に、現在 Yocto Project から資金を得て、プロジェクトに携わっていることを述べ、同様にプロジェクト資金提供している業務を紹介しています。

  • autobuilder インフラストラクチャーの維持
  • LTS リリースメンテナー
  • ドキュメントの作成
  • パッチテストの監視及び新しいパッチや機能の統合支援

【日々の作業を通しての課題】

適切なスキルと時間を持つ人材を見つけるのが難しいため、自身の時間を割いてしまう。Richard Purdieが管理できるリソースは、自分自身の時間のみ。
誰か出来る人が居て、その人のリソースを管理できれば、現在放置されている多くのツールの開発に時間をさけるが、リソース不足のため緊急パッチのみとなってしまっている。

プロジェクトの成長と成功のための課題(The challenges of project growth and success)

プロジェクトが抱える課題について、メンテナー不在で開発が止まっているツールが紹介されています。

  • パッチエラー検出システム
  • レイヤーインデックス
  • CRoPs のコンテナ

諸々のリソース不足に対して、自身や他の人に燃え尽きたり社会生活をあきらめさせることはすべきでは無いと考えるが、徐々に使える部品が減っているのが現状と考えている。
プロジェクトへの貢献者は、業務の空き時間を利用して作業を行っていた人主体から、業務時間中に業務として作業を行っている人の割合が増えている。

Yocto Project の目指すところ(Where the Yocto Project is going)

目指したいところを語っていますが、それを実現するために不足しているものを挙げています。

  • 機能開発に関してコストと作業時間の見積もりも含んだ「5か年計画」を作成したが、開発作業に必要な資金が足りていない。
最終的な感想:未来は?(Final thoughts: The future?)

Yocto Project でサポートされている機能の優位性を語っています。

  • 製造元がサポートを停止した後のハードウェアに関する懸念
    • デバイスに危険なコードが含まれているのか見分けられるのか?
  • Yocto Project の構築の再現性、SBoM 利用のメリット
    • ソフトウェアライセンスと SBoM の機能があり、SPDX と密接に連携。
    • 全てのコアソフトウェアコンポーネントのタイムスタンプに至るまで完全に再現可能なバイナリやイメージを箱から出してすぐに生成できる数少ない構築環境の一つである。
    • これらの技術を組み合わせることによって、デバイスのためのオープンで再現可能なソフトウェアを入手できます。
      デバイスのソースコードの出所を確認でき、再構築して実行するものが命令やマニフェストにあるものか確認でき、セキュリティ上の問題があったとしても、修正する方法があります。
Yocto Projectコミュニティの発展に貢献するために参加する(Get involved to help the Yocto Project community grow)

最後のまとめとなります。

  • プロジェクトへの支援のお願い
    • Yocto Project の採用を公言または利用例としての登録
    • 開発者への援助
    • 新たな貢献(contributions)
    • 機能追加の開発
    • バグ修正
    • メンテナーとしての参加
  • メンバー企業の増加
    • 現在の作業の継続は、メンバー企業が増えたことで実現
    • さらなるメンバー増で、重要分野への開発資金が確保できることを願う
    • プロジェクトメンバーに興味のある方は、ぜひご連絡ください

と、さらに先に進むための人的リソースの確保、資金の確保のお願いとなっています。

弊社が 2017 年に Yocto Project に参加した頃は、Project を最初にスポンサードした企業の内部プロジェクト?と思える位、積極的に支援がおこなわれていました。
2018 年から方針が変わり、人材引き上げで開発が中断してしまったToolもあります。
(Eclipse Plug-in のように)
より多くの活動資金を確保できることで、より扱いやすいツールに更に進化する未来も見えています。現状維持で終わらせないための協力、宜しくおねがいします。

次号予告

次回は「YoctoProject 始めます その 2」を予定しています。2022 年 9 月に公開した「Yocto Project 始めます その 1」の続編となります。

この記事の著者
執筆者
伊東 孝康

ウィンドウシステム X10 の時代からオープンソースに関わり、リネオでカーネル層からアプリケーション層まで幅広い組込みの開発を行う。
2020 年 10 月 Yocto Project Ambassador に就任

Yocto Project の勉強がしたい Yocto での問題を解決して欲しい お客様の Yocto 開発を支援するサービス群 Yoctoコンシェルジュ

組込みLinuxセキュリティ基礎講座
Vigiles サポート
Yocto Project よもやま話
Yocto よもやま話 第 14 回 「Yocto 4.3 Nanbield リリース」
Yocto よもやま話 第 14 回 「Yocto 4.3 Nanbield リリース」

2024 年 03 月 26 日 Yocto Project よもやま話

Yocto よもやま話 第 13 回 「Yocto Project の最新動向 2023 夏」
Yocto よもやま話 第 13 回 「Yocto Project の最新動向 2023 夏」

2023 年 07 月 25 日 Yocto Project よもやま話

Yocto よもやま話 第 12 回 「Yocto Project 始めます その 2」
Yocto よもやま話 第 12 回 「Yocto Project 始めます その 2」

2023 年 06 月 20 日 Yocto Project よもやま話

Linux 技術ネタ
RISC-Vについて学ぶ-後編
RISC-Vについて学ぶ-後編

2024 年 01 月 10 日 Linux 技術ネタ

RISC-Vについて学ぶ-前編
RISC-Vについて学ぶ-前編

2023 年 12 月 12 日 Linux 技術ネタ

イベントレポート
EdgeTech+ West 2024 出展レポート
EdgeTech+ West 2024 出展レポート

2024 年 07 月 26 日 イベントレポート

Advanced Technology Forum 2024 Summer 参加レポート
Advanced Technology Forum 2024 Summer 参加レポート

2024 年 07 月 09 日 イベントレポート

リクルート
新卒採用、絶賛募集中!
新卒採用、絶賛募集中!

2023 年 05 月 30 日 リクルート

国立大学オンライン研修レポート 2022
国立大学オンライン研修レポート 2022

2022 年 09 月 27 日 リクルート

信州リネオ便り
社内BBQを開催しました!
社内BBQを開催しました!

2024 年 09 月 25 日 信州リネオ便り

夏季休業明け、スイカを頂きました!
夏季休業明け、スイカを頂きました!

2024 年 08 月 20 日 信州リネオ便り

逃げ上手の聖地、諏訪大社上社前宮
逃げ上手の聖地、諏訪大社上社前宮

2024 年 08 月 07 日 信州リネオ便り

ソリューション統括部
シリコンバレー探検記 2019 ~番外編~
シリコンバレー探検記 2019 ~番外編~

2019 年 12 月 10 日 ソリューション統括部

シリコンバレー探検記 2019 ~後編~
シリコンバレー探検記 2019 ~後編~

2019 年 12 月 10 日 ソリューション統括部

シリコンバレー探検記 2019 ~前編~
シリコンバレー探検記 2019 ~前編~

2019 年 12 月 10 日 ソリューション統括部

マーケティング統括部
大成功決起大会!!(ET2019)
大成功決起大会!!(ET2019)

2019 年 12 月 13 日 マーケティング統括部

ESEC 2019 決起大会
ESEC 2019 決起大会

2019 年 04 月 25 日 マーケティング統括部

シリコンバレー探検記 その 2
シリコンバレー探検記 その 2

2018 年 12 月 18 日 マーケティング統括部