やや旧聞となってしまったが、Microsoftが先週Windows Insider ProgramのDevチャネルで提供開始したWindows 10 Insider Preview ビルド21364では、Windows Subsystem for Linux(WSL)にLinux GUIアプリサポート機能(WSLg)の最初のプレビュー版が搭載されている(Windows Insider Blogの記事、 Windows Command Lineの記事、 Readme,md)。
Devチャネルの最近のビルドでは「Windows の機能の有効化または無効化」でWSLを有効にしていなくても「wsl」コマンドが使用できるようになっている。そのため、管理者として起動したコマンドプロンプトやWindows PowerShell上で「wsl –install -d <Linuxディストリビューション名>」のようなコマンドラインを実行すればオプション機能のWSLと仮想マシンプラットフォームが有効化され、GUIアプリ実行に必要な更新プログラムや指定したLinuxディストリビューションのインストールまで一括して実行できる。
あとはWindowsを再起動するとWSLが有効になるので、Linuxディストリビューションを起動してコマンドシェル上でGUIアプリをインストールすればいい。GUIアプリはスタートのディストリビューション名のフォルダー(サブメニュー)にショートカットが追加され、ここから直接起動するほか、コマンドシェルから起動することも可能だ。
と書いてしまえば簡単そうだが、パラメーターが間違っているなどと表示されてLinuxディストリビューションが起動できない、といった報告も出ている。これはMMIOリージョンの上限がCPUでサポートする物理アドレスを上回るときに発生するものだといい、修正が進められているとのこと。
そのため、WSLgを使用するにはHaswell世代以降のCPUが必要になるようだ。手元の実験用機はSandy Bridge世代のCPUだったため問題が発生したが、別のPCで試したところ問題なく動作した。なお、このような問題はWSLをバージョン1にダウングレードしたり、GUIアプリを無効化したりすることで解消するが、いずれの場合もGUIアプリは実行できなくなる。
Linux GUIアプリはWindows上でネイティブアプリと同様に使用できるが、Windowsアプリとの間でASCII文字以外のテキストをコピー・ペーストすると文字化けするバグが残っている。また、デフォルトでは整数倍以外のディスプレイスケーリングサポートが無効化されているため、Windows標準の倍率でスケーリングしている環境ではLinux GUIアプリのみ100%の倍率で小さく表示される。整数倍以外のスケーリングにも対応するよう設定は可能だが、スケーリング結果は美しくない。
| Linux
| ソフトウェア
| Windows
|
関連ストーリー:
ESR曰く、WindowsはそのうちLinuxカーネルになる
2020年09月30日
Microsoft、WSL 2をWindows 10バージョン1903/1909にバックポート
2020年08月24日
WindowsのInsider Preview版でパッケージマネージャ「winget」が利用可能に
2020年05月21日
Windows 10 バージョン2004 「May 2020 Update」完成
2020年04月18日
Windows 10 Insider Preview ビルド19603、エクスプローラーにLinuxアイコンが追加される
2020年04月11日
WSL 2のLinuxカーネル、Windows Update経由での配布に変更へ
2020年03月20日
Source: スラッシュドット