ふと気づいたら年が終わりそうですね。今年はどこもかしこも大体コロナのせい、という感じになりましたが。
前回PCを新調した話をしましたが、中身も1x年ぶりに新調しました。いろいろ変えたので、その話を書いてみます。
どう変えたのか?
前のPCは、最初から数えて10年くらい前に入れたGentooを、自作するたびに移し替えながら使ってきました。しかし、さすがに10年も使っていると、使っていないパッケージとかがうろ覚えになり、いろいろ試行錯誤した設定ファイルが転がっていたり・・・。
NASを導入したので、データ移行自体は難しくなくなったのもありましたが、ちょうどいいタイミングということで、もう一回Gentooを入れてみることにしました。と、いうのが前回の終わりでした。
とはいえ、大きく変わったところは少ないです。dotfilesを使えるようにもしたいし。
X -> Wayland nativeに
今回のPC構成で最も大きな違いは、NVidiaのビデオカードではない、という点です。Waylandにするにあたって最大の問題となります。
https://wiki.archlinux.jp/index.php/Wayland
安定と信頼のArch Wikiにあるとおり、NVidia以外のドライバは、全て GBM というAPIを実装しているのですが、NVidiaだけはこれとは違うAPIを実装しています(そしてGBMを実装する気はサラサラ無いらしい)。Gnome/KDE Plasmaという、Desktop Environmentの二大巨塔はこれを使うような実装もしています。が、それ以外のコンポジターは、リソースの問題もあり、これを使うことができません。
NVidia以外の ということは、AMDのドライバは対応しています。(そしてRyzenの売上で余裕が出たのか、ドライバの出来もかなり良くなってきたというはなしです)
と、いうことで、前々からやってみたかったWayland nativeになってみました。なお、KDE Plasma(Gnomeは個人的に好みじゃない)ではなく、 swayを使っています。理由?i3とほぼ互換だからですよ・・・。
Wayland nativeになってみて、いろいろと良かったところ、悪かったところがありますので、いろいろと書いていこうと思います。
Pros: 120fpsとかが普通に使える
Xは、その設計された歴史的経緯のようなものがあって、60hzより高いFrame rateを利用できません。また、今はなきXineramaとかを使っても、完全なデュアルディスプレイは不可能でした(全体として大きな一枚のディスプレイとしてしか扱えないらしい)。
Waylandは、そういう事情も含めて設計されたプロトコルなので、完全な複数ディスプレイ環境や、120hzなどの高いframe rateを利用できます。実際、現在120hzで設定していますが、全く問題なく表示できてます。
Pros: 動画などもド安定する
Xのときは、動画を再生したりすると、X server自体がかなりのCPUを食ってしまい、60fpsとかをちゃんと出すのが難しかったです。しかし、Waylandは最初からGPUを使い倒すことを念頭に置いているので、描画周りは圧倒的になめらかです。
Youtubeの詳細などを見ていても、drop frameがほとんど発生しなくなりました。
Pros: フォントがきれい
UI上のフォントも、基本的にすべてきれいなアンチエイリアスがかかっています。個人的にはmacOSより見やすいかなと。
Cons: 日本語入力が使えない
いいことばかりではなく、Xと比較して新しいので、いろいろ問題があります。日本人で一番問題なのは、Wayland nativeなアプリケーションに対して日本語入力する方法がない、という点です。
これは、WaylandのprotocolにあるIMの実装がいろいろバラバラ・・・という話があるようです。一例だと、swayではversion 2を実装しているが、ibusではversion 1を実装している・・・といった具合です。(fcitx5ではversion 3を実装?しているらしいです)
例外としては、XwaylandというWayland上でXアプリケーションを動作させるためのレイヤーをかました場合です。この場合、アプリケーションとしてはX serverで動いているのと同じなので、fcitx/ibusといったような、XでのIMを使えます。なので、
- Emacsなど非Wayland nativeなアプリケーションで日本語入力
- コピる
- Wayland nativeなアプリケーションに貼り付ける
・・・という、なんだかなぁ、という状況になります。この点は、CJKなユーザーがWaylandを使う上での障壁になっていると思います。
Cons: System trayがうまく使えない
swayにはsystemtrayが実装されていますが、いろいろ制約が強いです。
- Dropboxとかは表示できない
- fcitxは表示できるが、操作ができない
いろいろあるけど、Waylandはだいぶ使えます
日本語入力をするアプリケーションをWaylandで使うのは無理ですが、そういうのはXのアプリケーションとして使えば大体なんとかなる、というところまで来ていると思います。
Chromium/FirefoxなどもWayland nativeで動作するようになっており、かなりスムースな動作をしますし、swayは非常に良くできていて、i3から移行しても特に問題ありません。
いきなり自分のデスクトップで試すのは怖い・・・という場合は、sddmとかlightdmとかを入れていれば切り替えられるので、NVidia以外のGPUを使っている方は、年末年始に籠もっている間に試してみちゃーいかがでしょうか。