以前の記事で、Windows10のWSLでUbuntuが使えるようにした。そこで、「X Server」ソフトをインストールし、Xアプリの実行を試したので備忘録を残す。
追記(2018/05/15)
「Ubuntu 18.04」でも動くことを確認。
日本語ロケールに設定
下記コマンドで、日本語ロケールに変更。
$ sudo apt install language-pack-ja
$ sudo update-locale LANG=ja_JP.UTF-8
VcXsrvのインストール
SourceForgeからWindows用の X Serverソフト「VcXsrv」をダウンロードしインストールする。
https://sourceforge.net/projects/vcxsrv/files/vcxsrv/
- 64bit版をインストールしてみた。
- インストール後、「VcXsrv」起動し常駐しておく。(タスクバーの通知領域を開く事で常駐してる事がが確認できる)
必要なパッケージのインストール
WSLから下記コマンドで関連パッケージをインストール。
$ sudo apt-get install git build-essential libssl-dev libreadline-dev zlib1g-dev x11-apps x11-utils x11-xserver-utils libsqlite3-dev nodejs fonts-ipafont libxml2-dev libxslt1-dev
- インストール済みのものもあるが、とりあえず入れておく。
X11アプリケーションの動作確認
~/.bashrc
の最後に、下記行を追加。
umask 022
export DISPLAY=localhost:0.0
Windows側でVcXsrvが常駐していることを確認したら、X11appsがインストールされてるので「xeyes」を起動してみる。
$ xeyes &
下記の目玉のGUIアプリケーション(xeyes)が起動すればOK。
VcXsrvを自動起動するようにしておく
VcXsrvを毎回起動しなくて済むように、VcXsrvを自動実行するようにする。
スタートメニュー右クリックの「ファイル名を指定して実行」から、“shell:startup
”を実行。
スタートアップのウィンドウに、VcXsrvのショートカットをコピー。
これで、Windowsへのログイン時にVcXsrvが自動起動する。
Emacs(GUI版)を試してみる
以前の記事で「Emacs 25」をインストールしてコンソール版(CUI)のEmacsは動かした。
GUI版のEmacsをWSLから使いたい。とりあえず起動してみた。
$ emacs sample.c &
一応動いた(下記画面)。
WSLコンソールからemacsclientで呼び出す
私が使っている初期設定ファイルは、GUIで起動していればServerモードを有効にしているので、下記のように、emacsclient
コマンドで呼び出す事ができる。(emacsclientは常駐しているソフトを呼び出すだけなので起動が速い)
$ emacsclient -n sample.c
.bashrc
に下記のようにalias定義して「e
」コマンドで起動できるようにする。
alias e='emacsclient -n'
パソコンのログイン時に、GUI版 Emacsを自動起動して常駐するようにしておけば、「e
」の入力だけで高速起動できるので便利。
補足
- Emacs起動時に「
GConf-WARNING **: Client failed to connect to the D-BUS daemon:
」のワーニングが出たが、gconf2
パッケージを入れておく事で消える。
$ sudo apt install gconf2
- まだ、日本語入力など調整が必要なようなので、もう少し整備できたら報告できたらと思っている。
コメント