IT用語集 › プログラミング › wlroots

wlroots

プログラミング Svenska → 更新: 2026-10-20
詳細情報
作者
Drew DeVault
公開年
種類
ライブラリ
ライセンス
MIT
ソース
gitlab.freedesktop.org/wlroots/wlroots

Waylandコンポジタの開発を6万行の仕事から千行の仕事に変えたライブラリ。2017年にSway用に作られ、MutterとKWin以外の大半のコンポジタの土台になった。

Waylandはプロトコルなので、コンポジタを作る側はXサーバがやっていたことをすべて書かねばならない。DRM/KMSとの通信、libinputによる入力、OpenGLやVulkanでの描画、xdg-shellなど十数のプロトコルの実装、レガシークライアント用のXWaylandの起動。Drew DeVaultは、Swayが前身のwlcライブラリの限界を超えた2017年にwlrootsを始めた。READMEには「どうせ書くことになる6万行のコード」とある。モジュール同士の結合は意図的に緩く、コンポジタは欲しい部品だけを選び、ウィンドウやフォーカスに関する判断はすべて自分で握る。

DRM、libinput、X11や別のWaylandセッション内への入れ子、ヘッドレス動作のバックエンド、3種類のレンダラ、ダメージ追跡と再描画を担うシーングラフ(wlr_scene、2021年)、約千行のCで書かれたサンプルコンポジタtinywlを備える。Sway、river、labwc、Wayfire、Cage、dwlがこの上にあり、Hyprlandも2024年に独自のAquamarineへ移るまではそうだった。DeVaultが身を引いた後はSimon Serが主なメンテナとなり、コードはfreedesktop.orgのGitLabに移った。バージョンは1.0に達したことがなく、0.xが上がるたびにAPIが壊れる。コンポジタ側はそれに慣れた。

← 用語集に戻る