Automotive Grade Linux
From Wikipedia, the free encyclopedia
Automotive Grade Linux(オートモーティブグレードリナックス、AGL)は、コネクテッドカー向けのオープンプラットフォームを開発する Linux Foundation傘下のプロジェクトである。
| 開発者 | Automotive Grade Linux Community |
|---|---|
| ソースモデル | オープンソース |
| 初版 | 2016年1月4日 |
| 最新安定版 | 18.0.3 (Royal Ricefish) / 2024年12月17日 |
| 最新開発版 | 18.92.0 (Super Salmon) / 2024年12月17日 |
| リポジトリ |
git |
| プラットフォーム | arm64, RISC-V, x86-64 |
| ウェブサイト |
www |
概要
開発方針
AGLは、プロジェクトの最終成果物として年2回AGL ディストリビューションをリリースを行っている。AGL ディストリビューションは、glibcやWaylandといった既存のOSS、agl-compositorのような車載ユースケースをカバーするためにAGLで開発しているOSS、これらのOSSを実際に使用する実例を示すためのデモソフトウェアで構成される。このように、単独のOSSを開発するのではなく、インテグレーションまで行う点に特徴がある。
AGLのスローガンである「Code First」は、ソフトウェアの仕様の議論をしつくしてからソフトウェアを開発するのではなく、ソースコードを書いて実験し、良いものを継続的に使っていこうという考え方である。 イノベーションのインキュベータになることがAGLの大きな目標となっており、AGL ディストリビューションには様々な実験的なソフトウェアがCode Firstで開発して取り込まれている。そのため、AGL ディストリビューションに含まれるようになったものの、短期間でメンテナンスが停止され削除されるソフトウェアも存在する。このような取捨選択を繰り返すことで、イノベーションのための実験を継続的に行うことを可能にしている。
AGLは、プロジェクトのリリース物をそのまま製品化するのではなく、最終製品を組み立てるための部品を提供することを目的としている。そのため、Android等にみられる認証制度を設けていない。
Automotive Grade Linux Unified Code Base(AGL UCB)[2]
AGLディストリビューションは、ソースコードをダウンロードしてビルドする形で提供される。ソースコードをダウンロードしてビルドするツールキットとコアOSS部分はYocto Projectの成果物を使用している。ソフトウェアのダウンロード元やビルド方法は、レシピファイルに記述される。AGLディストリビューションは、Yoctoこ独自のレシピファイルを追加して構築される。
AGLで開発・メンテナンスするレシピは、AGLで独自に開発したOSSだけではなく、他のOSSプロジェクトをAGLディストリビューションに組み込むためのものもある。UCBに対する変更は、AGLのJira[3]で管理され、レビューシステムにはgerrit[4]が使用されている。
AGL UCBは、AGLディストリビューションを構築するためのレシピの参照情報とレシピ本体、AGLで独自に開発したOSSのソースコードのすべてを指した名称である。UCBに含まれるレシピやOSSには、それぞれのOSSライセンスを守る以上の制限はなく、自由に取捨選択して使用することができる。UCBとAGLディストリビューションは一対のものであるため、同じタイミングでリリースされる。
UCBのコードネームは、魚の名前が採用されている。最初のリリースであるUCB 1.0はAgile Albacore、2.0はBrilliant Blowfishとなっており、最新リリースの19.0はSuper Salmonである。[5]