WaylandでX sessionの環境変数を設定したり、初期起動をしたりする方法

Waylandでは~/.xprofileや~/.Xsessionが読まれないため、~/.config/environment.d/*.confで環境変数(日本語入力のuimなど)を設定する方法と、gnome-autostartでuim-toolbar-gtk3を起動する設定を紹介します。

2023年7月20日
@MATSUNAGA-Ichiro@MATSUNAGA-Ichiro

Waylandではxprofileやxsessionは読まれない。

株式会社 スペースリーでEngineering Managerをやっている いちろー です。 最近仕事で開発の事を全くやっていないので、家のlinuxの環境回りからネタを引っ張って来ました。

Wayland環境では、~/.xprofile~/.Xsessionが読まれないです。 そうすると、X sessionでの環境変数を設定したい場合に困りますよね。 例えば日本語入力の時の定番の、

export GTK_IM_MODULE='uim'
export QT_IM_MODULE='uim'
export XMODIFIERS='@im=uim'

なんかは、Xが起動する前に設定して欲しいです。

代わりの設定方法

https://wiki.gnome.org/Initiatives/Wayland/SessionStart によると、

~/.config/environment.d/*.conf が読まれるらしいです。 内容はNAME=VAL書式。

よって ~/.config/environment.d/10-uim.conf

GTK_IM_MODULE=uim
QT_IM_MODULE=uim
XMODIFIERS=@im=uim

と記載します。

ついでにuim-toolbar-gtk3の起動も

これで、X sessionの起動前に環境変数が設定されるようになったので、gnomeの自動起動で uim-toolbar-gtk3 もX session起動時に自動で起動させましょう。 ~/.config/autostart/uim.desktop

[Desktop Entry]
Type=Application
Version=1.0
Name=uim
Path=/home/vikke
Exec=/usr/bin/uim-toolbar-gtk3
Icon=
Terminal=false

これで全て解決。

最後に

spacelyでは一緒に働いてくださる方を募集中です。詳しくは採用サイトをご覧下さい。 カジュアル面談だけでも結構です。まずは弊社に興味を持っていただけたら嬉しいです。

では!!

MATSUNAGA Ichiro

著者

MATSUNAGA Ichiro

GitHubでフォロー