1 ポイント 投稿者 GN⁺ 2 시간 전 | 1件のコメント | WhatsAppで共有
  • Casuarina Linuxは Chimera Linux 派生の実験的ディストリビューションで、musl の代わりに glibc を採用し、GNU/Linux バイナリ互換性を広げる
  • 構成は LLVM ツールチェーン、Dinit init システム、GNU libc、FreeBSD 派生の主要ユーティリティ、apk パッケージマネージャーを組み合わせている
  • 初期 x86_64 ISO が公開され、現在の対応アーキテクチャは x86_64 のみで、今後 aarch64 をサポートする可能性がある
  • glibc の採用によりブートストラップがより複雑になり、binutils・gcc・glibc を先にビルドしてから LLVM と残りのパッケージをビルドする
  • musl ベースのデスクトップにおける 互換性の問題 を減らす試みとして始まり、小さく効率的なデスクトップディストリビューションを目指している

Casuarina Linux 概要

  • Casuarina LinuxChimera Linux から派生した実験的な Linux ディストリビューションであり、libc として musl ではなく glibc を使用する
  • 目標は Chimera の使用体験を大部分維持しつつ、より広い GNU/Linux エコシステムとの バイナリ互換性 を確保することにある
  • 初期 x86_64 ISO が公開されており、ダウンロードページ から入手できる
  • 主な構成要素は LLVM ツールチェーン、Dinit init システム、GNU libcFreeBSD 派生の主要ユーティリティapk パッケージマネージャー である
  • 小さく効率的でありながら機能を備えたデスクトップディストリビューションを志向しており、新しさ・機能性・互換性・理解しやすさと貢献のしやすさを求めるユーザーに合う可能性がある
  • musl ベースのデスクトップ利用では一部の非互換性のために妥協や回避策が必要で、業務用デスクトップへの移行も難しかった
  • Chimera Linux は 2023年6月からノート PC の主な OS として使われていたが、デスクトップでは musl 互換性の問題が障害となっていた
  • Casuarina は musl の代わりに glibc を入れることがどれほど難しいかを確かめる試みとして始まり、詳しい背景は about page にある

ビルド方式と現在の状態

  • ソースブートストラップ は Chimera と同じ多段階手順で行われる
  • glibc の使用は現在 gcc のビルドを必要とするため、ブートストラップをより複雑にしている
    • GNU binutilsgccglibc を先にビルドする
    • その後 LLVM をビルドし、残りのパッケージは LLVM でビルドする
    • LLVM は libgcc 実装も提供する
  • パッケージは Chimera の cbuild ツール でビルドされ、すべてのパッケージは分離されたサンドボックス内でビルドされる
  • パッケージビルドは Buildbot により自動化され、build.casuarina.org で運用されている
  • 開発は Codeberg で進められている
  • 現在サポートされているアーキテクチャは x86_64 のみ である
    • 将来的に aarch64 をサポートする可能性がある
    • それ以外のアーキテクチャには互換性を取るべき確立されたバイナリのエコシステムがないため、Chimera を使うほうが適している
  • ディストリビューションはまだ開発中の実験的な状態だが、すぐに使える水準にある
  • 4月中旬からデスクトップとノート PC で業務および個人用途のコンピューティングに日常利用されている
  • 開発は 2025年6月に始まり、中断後の 2026年2月から本格化した
  • この期間にシステムのブートストラップ、パッケージセットのビルド、インフラ構成が進められた
  • 議論用フォーラムは forum.casuarina.org にある

1件のコメント

 
GN⁺ 2 시간 전
Lobste.rs の意見
  • GNU/Linux エコシステムとのバイナリ互換性を維持するとあるが、libstdc++を使うのか気になる。
    説明を見ると、Casuarina is comprised of LLVM toolchain, ...After that LLVM is built and all other packages are built with LLVM. とあるので、そうではないようにも見える。

    • システムパッケージは LLVM の libc++ を使うが、互換性のために libstdc++ も提供される。
  • Chimera はこの分野では Void Linux の兄弟のような印象だった。
    ビルドシステムや init など、Chimera のスタックの何が xbps や daemontools より実際に違って感じられ、より魅力的なのか気になる。

    • Void を使っていた間、パッケージを最新に保つために自分で動く雑務は多少あったが、かなり良かったし、xbps-src も非常に柔軟だった。
      Void と基本パッケージ群をプラットフォームのように使い、その上に lix、linux brew、guix のような別のパッケージマネージャーを載せることもできる。
      Chimera にはしばらく興味はあったが、まだ試してはいない。
  • 最近では、glibc が互換性のある選択肢だという点が興味深い。
    登場した当初は、古い Linux libc にリンクされたバイナリパッケージが突然使えなくなり、かなり大きな騒ぎになった。
    そこに、従来の a.out を置き換える ELF 形式 への移行まで重なり、Jessica Parsons は Mastodon Linux を作った。このディストリビューションは古いバイナリ形式、古い libc、そしておそらくそのために必要だった古いカーネルバージョンまで抱え込む必要があった。
    しかも BSD ユーザーランドへの移行も試みており、そうしたことを行った初期ディストリビューションの一つでもあった。

  • 最初の段落で 何なのか、そしてなぜ必要なのか を明確かつ簡潔に説明している点が良い。