Waylandについて
Waylandについて自分なりに調べてわかったことを備忘として書きます。
Waylandとは?
WaylandというのはX11に変わると期待されている新しいディスプレイ用プロトコル。
現在これを利用したウィンドウマネージャー(以下、WM)やアプリが開発中です。Waylandで実装されたWM
Waylandで実装されたWMとして、Weston(正確にはWaylandコンポジタ)、Mutter、Gnome3などがあります。
また、Ubuntuは17.10からXorgからWaylandに変更されたようです。
僕はGentoo Linux上でWestonを試しました。従来のXアプリについて
従来のXアプリはWayland上では動きません。Firefox、Chromium、fcitxなどがそれに該当します。
それらのアプリをWayland上で実行できるようにするためにXWaylandというコンポーネントが用意されています。Gentoo上のGnome3について
僕は現在、Gentoo上でGnome3を使っています。
Waylandを調べていくうちに、Gnome3はX11とWaylandのどちらでも動くということがわかりました。
そのため、今自分が使っているGnomeはどちらで動いているのか知りたくなり、調べる方法を探しましたが、見つかりませんでした。
正確には幾つか試してみたのですが、X11、Waylandのどちらなのか判別できませんでした。
試したのは以下のものです。
・echo $XDG_SESSION_TYPE
Waylandで動いている場合「Wayland」と表示される。
結果:何も表示されず
・ps -ef | grep gnome-shell
Waylandで動いている場合「--wayland --display-server」と表示される。
結果:表示されず
・echo $DESKTOP_SESSION
Waylandで動いている場合「Wayland」と表示される。
結果:何も表示されず
・loginctl show-session 1 -p Type
Waylandで動いている場合「Type=Wayland」と表示される。
結果:「Type=tty」と表示される
・env | grep -i wayland
Waylandで動いている場合何かが表示されるという曖昧なもの
結果:何も表示されず
ちなみにWestonでは「WAYLAND_DISPLAY=wayland-0」という文字列が表示されました
という訳でX11なのかWaylandなのかわかりませんでした。
どなたかご存知の方がいらっしゃったら、教えてください。
宜しくお願い致します。- weston.iniについて
weston
weston-launch
等でWestonを起動したときに、読み込まれます。
僕は~/.config/weston.ini
としています。置く場所は自分で環境変数を使って定義することもできます。
このファイルでアイコンやモニター、スクリーンセイバーの設定ができます。
Waylandではxrandrが使えないため、モニターの設定はこのファイルで定義する必要があります。(現在、思考錯誤中)
以下のサイトに詳しいリファレンスがあります。
https://www.carta.tech/man-pages/man5/weston.ini.5.html - 最後に
まだまだWaylandについて勉強不足です。
もう少しわかるようになったら、Waylandアプリなどを作ってみたいなあと思っています。