Linuxを日常的に使う実験ブログ

スタック型WaylandコンポジタLabwcを使ってみた

 2024-09-03

 Linux全般

スタック型のシンプルなWaylandコンポジタを使ってみたい

Void Linuxを使い始めた際にデスクトップ環境をどうしようか悩んだのですが、やはり今から新たに構築するならX11ではなくWaylandにしたいと思い、Waylandコンポジタで適当なものがないか検討しました。以前、Swayは使用したことがあり結構気に入っていたのですが、今回はタイル型ではなくスタック型のコンパクトなものにしたいと思いLabwcを採用しました。結論から言うと使ってみて非常に満足しています。

筆者がLabwcで構築したデスクトップ環境の画像です。

デスクトップ画面 SS01

アプリランチャー SS02

終了画面 SS03

Labwcを用いてデスクトップ環境を構築した記事はVoid LinuxにLabwcで軽量で実用性の高いWaylandデスクトップ環境を構築するにあります。

Waylandとは

LabwcはWaylandコンポジタの一種なのですが、ここではまずWaylandについて簡単に説明したいと思います。WaylandはX Window System (X11とも呼ばれる)の代替となるウィンドウシステムを提供するプロトコルです。とても大雑把に言うと新たに生まれたX11に代わるウィンドウを表示する仕組みとなります。Wayland自体はディスプレイサーバーとクライアントの通信方法を定めたプロトコルであり、このプロトコルに則ったディスプレイサーバーをWaylandコンポジタと呼びます。ディスプレイサーバーをコンポジタと呼ぶのはWaylandディスプレイサーバーがコンポジット型ウィンドウマネージャーの機能も有しているためです。ウィンドウマネージャー内蔵のディスプレイサーバーなのでコンポジタと呼称するのが適当ということなのだと思います。

Waylandコンポジタには様々な実装があり、リファレンス実装のWastonの他に以下のようなコンポジタがあります。

  • Sway : タイル型コンポジタ、i3ライクな操作で人気がある
  • Labwc : OpenBoxに影響を受けて作られたスタック型コンポジタ
  • Hikari : スタック型コンポジタだがタイル型の利点も取り入れたコンポジタ、BSDを中心に開発が盛ん。
  • Hyprland : 現代的な美しさを兼ね備えたタイル型コンポジタ
  • Mutter : GNOMEのXウィンドウマネージャー。Waylandコンポジタも兼ねる。
  • KWin : KDEのXウィンドウマネージャー。Waylandコンポジタも兼ねる。
  • Enlightenment : Xウィンドウマネージャーとして登場。Waylandにも対応済み

より多くのリストをみたい方はArchWikiをご覧ください。

X11のデスクトップ環境として代表格だったGNOMEとKDEもWaylandでも動作するように移行しています。主要デスクトップ環境で未だWaylandに対応していないものもありますが、時代は確実にX11からWaylandに移行しつつあると考えています。

Labwcとは

LabwcはOpenBoxの影響を受けて開発されたスタック型のコンポジタです。スタック型とはウインドウを重ねて表示して、大きさを変えたり最小化したりできるMacOSやWindowsでお馴染みのスタイルのコンポジタです。スタック型のコンポジタには他にHikari, Mutter, KWinなどがあります。MutterやKWinがGNOMEやKDE向けに開発されているのに対して、Labwcは独立した他のツールと組み合わせて自分なりのデスクトップ環境をカスタマイズできるように設計されているシンプルなコンポジタです。OpenBoxの影響を受けただけあって、メニューの作成にOpenBox用のメニュージェネレータも使用できます。メニュージェネレータに関しては公式サイトに使用可能な一覧があります。

WaylandというとSwayやHyprlandのようなタイル型が有名ですが、Labwcを使用すれば、Swayのような自由なカスタマイズを行いつつ、スタック型の便利さを享受することが可能です。ただ、GNOMEやXfce, KDEと言ったツールの整ったデスクトップ環境と比較するとシンプルすぎて、単体での使用は実用的ではないように思えます。そこで今回は筆者がLabwcと組み合わせて使っているツールも紹介します。

Labwcを便利にするツール

Labwc自体はウィンドウの表示や移動、終了といった基礎的なことしかできないため、デスクトップ環境として構築するためには様々なツールを導入して構築する必要があります。どのようなツールを導入するかはユーザーが決められますし、そこがlabwcを使う楽しみでもあります。

ここでは筆者がLabwcでデスクトップ環境を構築する際に使用したツールを簡単に紹介したいと思います。よりLabwcと他のツールの統合について知りたい方は公式サイトをご覧ください。

用途ツール名
壁紙表示swaybg
パネル表示waybar
通知機能mako
スクリーンセイバーswaylock
セッションロックswaylock
スクリーンショットgrim/slurp
ターミナルエミュレータfoot
日本語入力fcitx5
ランチャーngw-launcher

ここに示したのは一例なので、他のツールでも全く構いません。お好きなものを選びあなただけのデスクトップ環境を構築してください。

Openboxのテーマが使える

ウィンドウなどを装飾するテーマですが、なんとOpenboxのテーマがそのまま使えます。ネットからダウンロードしたOpenbox用のテーマを/usr/share/themes/もしくは~/.local/share/themes/以下に置き、~/.config/labwc/rc.xmlにテーマに関する設定を記載します。簡単な例を以下示します。

rc.xmlのへのテーマ設定例

<theme>
  <name>Fresh-Theme</name>
  <cornerRadius>8</cornerRadius>
  <font name="sans" size="10" />
</theme>

Labwcを使ってみた感想

Labwcを使ってみた感想ですが、まさにOpenboxをWaylandコンポジタとして再構築した感じです。シンプルな環境からツールを集めてカスタムしてデスクトップ環境を構築したい方にはピッタリなWaylandコンポジタだと思います。また、X11でLXDEやOpenboxを使用していた方がWaylandに移行したいという場合にも選択肢に入ると思います。Openboxのテーマがそのまま使用できる点もOpenboxユーザーには嬉しい点だと思います。

まとめ

スタック型のWaylandコンポジタLabwcでデスクトップ環境を構築してみたので、簡単なLabwcの紹介と使ってみた感想を書いてみました。X11からWaylandに移行して暫く経ちますが、今の所、致命的な不具合もなく順調に使えています。多くのデスクトップ環境がWayland対応をしており、この記事を執筆している2024年9月時点ではまだWaylandはX11を塗り替えるほどの勢いはないですが、GNOMEやKDEなどの主力デスクトップ環境が対応したことを考えると、今後はWaylandコンポジタがデスクトップ環境の主軸になっていく可能性は高い思います。LabwcでシンプルなWayland体験をしてみてはいかがでしょうか?