🐥

WSL2で(Linux版の)intellij ideaを使う方法

2021/02/05に公開

※ほぼ、ここ[1]の内容です。

Windows側作業

XサーバをWindowsにインストールする

VcXsrvなどをインストールします。
割愛。

WSL2のファイアウォール設定を変更する

一番簡単な方法はファイアウォール無効化ですが、さすがにアレなので、
以下のようにpowershellで設定します。

New-NetFirewallRule -DisplayName "WSL" -Direction Inbound  -InterfaceAlias "vEthernet (WSL)"  -Action Allow

上記は管理者ウィンドウで。

VcXsrvをアクセスコントロールしない、パブリック公開で起動します。
※なぜこれでうまくいくか深く調査はしていません。

アクセスコントロールしない

↑同様に私は選択で自動でコピペする設定が嫌だったので切りました。

設定を保存してくるか聞いてくるので保存しておきます。

パブリックアクセスで設定

Explorerに shell:startup を入れて出てきた場所に上記のファイルを格納するとスタートアップ時に自動起動してくれます。

Ubuntu側(WSL2内)作業

XWindow関連のモジュールをインストールします

私の場合は以下の感じです(不要なものも混ざっているかも)

sudo apt install -yq --no-install-recommends libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 libnss3 fonts-ipafont fonts-ipaexfont

WSL2上のUbuntuでDISPLAY変数をホスト側に向ける

こちら[2]の内容です。

export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0
export LIBGL_ALWAYS_INDIRECT=1

↑下記などに追加する
~/.bashrc

※ここ[3]によると LIBGL_ALWAYS_INDIRECT=1 はハードウェアへの直接命令で速いとのこと。

JetBrainToolBoxダウンロード

割愛

JetBrainToolBox起動

jetbrains-toolbox

立ち上がれば後はGUIでインストールできます。

うまくいきました。

と思いましたが、日本語入力の設定が必要ですね。

脚注
  1. https://stackoverflow.com/questions/61110603/how-to-set-up-working-x11-forwarding-on-wsl2 ↩︎

  2. https://stackoverflow.com/questions/61110603/how-to-set-up-working-x11-forwarding-on-wsl2#answer-61110604 ↩︎

  3. https://unix.stackexchange.com/questions/1437/what-does-libgl-always-indirect-1-actually-do ↩︎

Discussion