spacelyのブログ

Spacely Engineer's Blog

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

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

では!!