Vanilla OS は、不変性、クロスディストリビューション パッケージング、A/B フェイルオーバーなどの新しい実装をテストする実験的なディストリビューションです。
今週初めにVanilla OS 2 Orchidが登場しました。18ヶ月前にリリースされ、2023年1月に試用したバージョン1とは大きく異なるOSですが、全体的な目標は同じです。
Vanilla OSは、ChromeOSの設計機能の一部を共有する汎用デスクトップLinuxです。ChromeOSと同様に、変更不可能です。ルートファイルシステムは読み取り専用であるため、破損やマルウェアに対する耐性が大幅に向上しています。また、ChromeOSと同様に、2つの独立したルートパーティションがあり、相互に更新されます。そのため、更新に失敗して一方のインスタンスが起動できなくなっても、もう一方のインスタンスを起動して変更を元に戻すことができます。ただし、ChromeOSとは異なり、複数の異なるディストリビューションから独自のアプリケーションをインストールして実行できます。
Vanilla OSは他のGNOMEディストリビューションと似ており、シェルから.debパッケージを簡単にインストールできます(クリックして拡大)
バージョン2(コードネーム「Orchid」)は、バージョン1(コードネーム「Kinetic」)とは異なる基盤に基づいています。名前が示すように、Vanilla OS 1はUbuntu、具体的にはバージョン22.10「Kinetic Kudu」をベースとしていました。Orchidリリースでは、チームはUbuntuベースから離れ、Debian Sidを採用しました。Debian Sidは、開発の遅いDebian安定版の上流に位置する、ローリングテストリリースです。これは興味深い選択です。Sidは名前の通り不安定であり、その性質上、アップデートによって不具合が生じる可能性が常に存在します。
だからこそ、Debianメタディストリビューションが存在するのです。Sidから最新のコンポーネントを入手できるだけでなく、openSUSE由来のスナップショットサポートも利用できるので、何か問題が発生した場合は、正常に動作するバージョンに「ロールバック」できます。Vanilla OSにも同等の機能がありますが、よりシンプルです。多数のスナップショットを管理するのではなく、「A」と「B」のルートパーティションを持つため、不具合のあるアップデートに対しても堅牢です。
Ubuntuベースを放棄したことで、OrchidはSnapのサポートを廃止しました。理論上は、ソフトウェアの選択肢は豊富です。Vanilla OSは、Flatpakに加え、独自のパッケージ管理ラッパー「Apx」を介して、Alpine、Debian、Fedora、Arch、openSUSEパッケージのサポートも組み込んでいます。さらに、AppImage形式とWaydroidベースのAndroidランタイムもサポートしていると謳っています。
これらの異なる環境はすべて、Podmanによって管理される組み込みのOCIコンテナ経由で実行されます。しかし、テストではDebianパッケージ以外は動作しませんでした。例えば、AppImageはlibfuse
ライブラリを必要としますが、インストールされていませんでした。これはイミュータブルなディストリビューションであるため、簡単にインストールすることはできません。
Orchidはプログラムを追加するためのGNOMEソフトウェアストアを提供していますが、これはFlatpak、つまりGUIアプリを対象としており、コマンドラインツールやシステムコンポーネントは対象としていません。例えば、「fuse」を検索すると、無料のZX Spectrumエミュレータとファイル比較ユーティリティが見つかります。
リポジトリ設定用のapx-guiコマンドは、、、、、、、の設定済みエントリを表示しました が、alpine
各コンテナarch
でターミナルを開く列が空でした。シンプロビジョニングされたLVMボリュームを使用する複雑なパーティションレイアウトのため、シェルからApx GUIを呼び出す方法がわからず、rootとして実行できませんでした。fedora
opensuse
ubuntu
vanilla-dev
vanilla
Apxパッケージングシステムのグラフィカルインターフェースを見ると、裏では多くの非定型的な処理が行われていることがわかります。クリックして拡大
このプロジェクトにはヘルプとドキュメントのサイトがありますが、まだかなり不完全な部分があり、一部のセクションはVanilla OS 1からまだ更新されていないようです。例えば、パッケージのインストールに関するハンドブックに記載されているコマンド構文が拒否されました。Androidランタイムを起動しようとしましたが、セキュアブートが有効になっていると動作しないというエラーが表示されました。しかし、QEMUベースのUTM仮想マシンではセキュアブートが有効になっていませんでした。
- 「極めて高速」な圧縮アルゴリズムLZ4の最新アップデートが旧バージョンを一気に追い抜く
- Linux Mint 22「Wilma」は依然としてWindowsからの移行に最適なBedrockの選択肢
- X.orgのローンレンジャーがマルチモニターのリフレッシュレートを救う
- OpenBSD愛好家が技術に弱い人向けのガイドを作成
UTMを使用したのは、Vanilla OSがUEFI(Virtualboxではまだ実験的な機能)のみをサポートしており、システム要件がかなり高く、少なくとも50GBのディスク容量が必要だったためです。テスト用のThinkPad X220にもインストールを試みましたが、パーティションをフォーマットできないというエラーが表示され、インストールが完了しませんでした。UTMは最新のGNOME 46.1とカーネル6.9.8を搭載しているため、 The Regvar
FOSSデスクのNvidia-GPUテストキットには適していません。
Vanilla OSは、GNOMEの完璧なグラフィックデザインのおかげで見た目も素晴らしく、ディスク暗号化のデフォルト有効化、GPU切り替え、主要ディストリビューションのパッケージサポートなど、魅力的な機能を備えています。しかし、これは非常に最先端の実験的なディストリビューションであり、実際に使ってみると未完成で、完全には動作していないように感じました。
Vanilla OS は、かなり大規模な技術革新を試みているにもかかわらず、既に機能しているという点が印象的です。多くのディストリビューションが行っているような細かな UI の調整ではなく、Linux の起動、自動更新、アプリケーションの処理方法など、様々な側面を変革しています。これらの点において、Vanilla OS は Fedora の「Atomic」イミュータブル版や、私たちが注目しているもう一つのコンシューマー向けイミュータブルディストリビューションである Endless OS よりも、より革新的な取り組みをしています。
OSボリュームにはBtrfsを採用しており、これは不変OSではより安全です。このこととボリューム管理の複雑さから、ディスク使用量を推定することは困難ですが、約18GB、RAMは1.1GB使用しています。複雑ではありますが、パーティション分割はChromeOS Flexよりもシンプルで、原理的にはデュアルブートが可能です。もちろん、デュアルパーティションフェイルオーバーのコンセプトは、既に数千万台のChromebookで運用されています。
バージョン番号にもかかわらず、Vanilla OS 2はプロトタイプ、あるいはアルファテストリリースのような印象を受けます。もし、最新かつ高性能なマシンを専用に用意でき、新しい技術を試してみたいのであれば、Vanilla OS 2は大きな可能性を秘めていますが、まだ本格的な使用には至っていません。®