Linuxデスクトップを常用してイキっているので現在の状況をまとめておく。
コンポジターとか
ここらへんの話は去年の swayでwayland で設定した内容からほとんど変わっていない。 waylandを使うことにして、コンポジターとしては sway を採用している。タイル型にも慣れてきた。
ランチャーには wofi を使っているのはそのままで、デスクトップ通知も mako で続投。タスクバーはi3blockを使ってみたかったのでwaybarからsway標準のswaybarに戻している。
swayを使っていて不便というかwaylandかwlroots、desktop-portal-wlr あたりがまだ機能足りないのがミラーリング。普段使っているときは気にならないのだが登壇のタイミングでミラーリングできないことに気づいた。あと地味に面倒なのは画面共有でウィンドウ選択ができないところ。
greetd
ディスプレイマネージャーには greetd を使うことにしている。 sidにgreetdのdebianパッケージが入ってきたので移行してみたが、wlgreeterとかgtkgreeterはまだパッケージにきていないので、そちらは自前でビルド。 wlgreeterはwlrootsを使っているようなのだが、以前ビルドしていたのがabi互換性で動かなくなっていた。ふとしたアップグレードでgreeterが立ち上がらないのはいやなんで、gtkgreeterに変更。なんとなくgtkのほうがabi互換性に強そうな気がする。
pam設定はdebianパッケージに入っていないが、デフォルトで greetd
, login
をみて存在する方を使うらしい。
/etc/pam.d/login
をコピーして /etc/pam.d/greetd
を作成。gnome-keyringを有効にする設定を追加してある。
ブラウザ
waylandで困っているのはブラウザである。どうもxwaylandだとどのウィンドウもアクティブになっている扱いらしく、chromeをxwaylandで動かすとウィンドウが複数になったときにとても重い。 ozone platformでwaylandを指定するとchromeもwaylandネイティブで動くのだが、今度は日本語入力ができない。 waylandの日本語入力はまだなんか色々やってるみたいだけど、基本的には text-input-unstable-v3 をみんな実装している流れみたいだけど chromeは話進めている途中 のようだ。
以外にもfirefoxはwaylandネイティブにしても日本語入力可能だった。多分 gtk im module
がそのまま有効になっているっぽい。環境変数で GTK_IM_MODULE=fcitx5
と設定するだけで良かった。またgtkとfcitxどちらも text-input-unstable-v3
に対応しているようで GTK_IM_MODULE
の設定なくても日本語変換自体は可能。でもこの場合は変換候補ウィンドウのポップアップの処理はコンポジターがやることになっていて、swayはまだ対応していないので変換候補を見れない。
gtk im module
を使った方法に寄せておくのが良さそう。
ターミナルエミュレーター
wezterm が機能豊富でなんかいけてるから最近導入してみた。
kittyの画像表示プロトコルにも対応しているので、後述の ranger
で画像プレビューできてしまうのもポイント高い。まだdebianのパッケージがないけどflatpakにあったのでお試し利用中。
気になる点というかあとあと対処しないといけないと思ってるのがいくつか。
- flatpakで入れたことで環境変数やネットワークアクセスで制限がかかってる
- weztermは
text-input-unstable-v3
を実装しているようで日本語変換できるけどswayの変換候補ポップアップの対応待ちということでもある - OSC133とか便利なものを設定しておきたい
ファイラー
ranger がターミナル上で結構使いやすい。ターミナルもrangerの画像プレビューが安定していた rxvt
から wezterm
に変えたが、それなりに安定している。でも偶にボーダーラインとかの描画が変。すぐに直るけど。
rangerから起動するアプリケーションは軽いものにしたいので sxiv
とか mpv
とか mupdf
とかで設定している。
マルティメディア関連のアプリケーション
適当にいれてrangerの設定に入ってるので一覧だけ。どれも軽量でさっと立ち上げてキーボード操作で扱えるもの。
- mpv マルチメディアプレイヤー
- sxiv 画像ビューアー
- mupdf PDFリーダー
ただしミュージックプレイヤーだけはmpdで設定している。(mpdについては music player daemon をどうぞ)