概要
Windows10環境のWSLでLinux GUIアプリが利用可能になったとのことです。
これまでも WSLg を導入すれば使えることは知っていたのですが、少しハードルが高そうでしたのでチャレンジしていませんでした。
最初に行ったこと
現在の環境は Windows 10 Pro/バージョン 21H2/ビルド 19044.2364 なので前提条件は満たしています。
WSLをバージョンアップします。
wsl --update wsl --shutdown
まずは xclock を実行してみます。
sudo apt install x11-apps -y
動作しませんでした。
~$ xclock Error: Can't open display:
調査
WSLがバージョンアップできていないようです。
バージョンアップされているかを確認する方法としては、wsl –version を実行してバージョン表示されるかどうかがわかりやすいようです。
PS C:\Windows\system32> wsl --version コマンド ライン オプションが無効です: --version
下記を参考に Microsoft Update カタログ の KB5020030 のパッチを適用しました。
wsl –version を実行してバージョン表示されるようになりました。
PS C:\Windows\system32> wsl --version WSL バージョン: 1.0.3.0 カーネル バージョン: 5.15.79.1 WSLg バージョン: 1.0.47 MSRDC バージョン: 1.2.3575 Direct3D バージョン: 1.606.4 DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp Windowsバージョン: 10.0.19044.2364 PS C:\Windows\system32>
ストア版WSLのインストール
ストア版のWSLをインストールします。
Microsoft Store を起動し、”wsl” を検索してインストールしました。微妙なデザインのペンギンが目印です(笑)。
ストア版WSLのインストール(Microsoft Store が実行できない環境)の場合
なお、Microsoft Store が実行できない環境では、KB5020030 を適用後、一般ユーザ権限で起動した Windows PowerShell で “wsl –update” を実行することでインストールできました。 インストールの最後の方で管理者権限を使用する情報入力が必要になります。 私の環境では、管理者権限で起動した Windows PowerShell で実行した場合、「致命的なエラーです。」と表示され、インストールできませんでした。
確認
xclockが立ち上がるようになりました。
また、Emacs が立ち上がることが確認できました!
GPU関連
前述の Microsoft Learn の記事では、WSL用 GPU ドライバーの導入が必要とのことで、私が使用している NVIDIA 向けのドライバーの最新を導入し、WSLで動作しているUbuntuのCUDAのドライバも更新しました。
527.56-desktop-win10-win11-64bit-international-dch-whql.exe をインストール
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda-repo-wsl-ubuntu-12-0-local_12.0.0-1_amd64.deb sudo dpkg -i cuda-repo-wsl-ubuntu-12-0-local_12.0.0-1_amd64.deb sudo cp /var/cuda-repo-wsl-ubuntu-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -y install cuda