WSL 経由で Wi​​ndows 10 上で GUI を備えた Linux アプリを実行できるようになりました

Microsoft による WSL (Windows Subsystem for Linux) への最新の変更のおかげで、Windows 10 上で GUI Linux アプリを実行できるようになりました。

Windows は最も人気のあるデスクトップ OS かもしれませんが、それは何でもできるという意味ではありません。 次のようなことをしたい場合 JetBrains プロジェクターサーバーを実行するたとえば、Linux などの Unix ベースのシステムが必要になります。 Microsoft は少し前に Windows Subsystem for Linux (WSL) を導入し、Windows インストールから直接 Linux アプリを実行できるようにしました。

ただし、WSL にはいくつかの制限がありました。 バージョン 1 では完全な Linux カーネルさえ使用されていなかったため、多くのアプリケーションは依然として動作しませんでした。 バージョン 2 では多くの改善が加えられましたが、GUI アプリケーションのサポートというものがまだ欠けていました。

確かに、Windows に X サーバーをインストールしてポートをいじるというハックなソリューションをいつでもセットアップできます。 転送し、WSL で自動環境変数を設定しますが、これは面倒な作業であり、常に機能するとは限りません 非常によく。

WSLgを入力します。

WSLg: Windows 10 上で GUI を使用して Linux アプリを実行する

WSLg は Linux GUI の問題に対する Microsoft の答えですが、正直言ってちょっと奇妙です。 これがどのように機能するかを示す楽しい図です (Microsoft の厚意)。

ここでは多くのことが行われていますが、基本的な考え方は、実際には、独自の X サーバーをセットアップする古い手動方法とかなり似ています。 ただし、代わりに、X サーバーはユーザーには見えない並列 WSL インスタンス上で実行されます。 次に、Windows はリモート デスクトップ プロトコルを使用して、その目に見えないインスタンスから Windows 側にビデオとオーディオをパイプします。 おそらく複雑に聞こえるかもしれませんが、実際はそうなのですが、うまくいきます。

Microsoft はまた、これらすべてのレイヤーを介しても、Linux アプリは OpenGL パススルーなどを使用して GPU を活用できるはずだと述べています。 現在、この動作には AMD、Intel、または NVIDIA の特別なドライバーが必要ですが、将来的にはデフォルトでバンドルされる予定です。

その未来はおそらく、Windows 21H2 によって今年後半に到来するでしょう。 UIの大規模な見直しと並行して. Windows Developer Platform のプログラム マネージャーである Craig Loewen 氏は、Windows の次のメジャー リリースで Linux アプリの GUI サポートがすべてのユーザーに提供されることを Twitter で認めました。

特徴

現時点では、WSLg は機能がかなり充実しているようです。 Linux GUI アプリのビデオとオーディオを完全にサポートし、3D アクセラレーションも利用できるという主張です。 そしてそれはかなりシームレスです。 新しい GUI アプリが WSL インスタンスにインストールされると、スタート メニューにも追加されるため、直接起動できます。 アプリは、対応する WSL インスタンスと同じ名前のフォルダーの下に表示されます。

バグ

もちろん、これは初期リリースなので、いくつかのバグがあります。 個人的には、ラップトップの 1 台にセットアップしたとき、アプリを実行することさえできませんでした。 また、アプリのスタート メニュー エントリも取得できませんでした。 ただし、これを支えているチームは信じられないほど迅速に対応しており、少なくとも最初の問題は次のリリースですでに修正されています。

他にも、コピー&ペーストや音声の破損に関する問題があるようです。 問題の完全なリストは、 WSLg GitHub リポジトリ.

はじめる

では、WSLg を入手するにはどうすればよいでしょうか? 現在、最も簡単な方法は、Windows 10 Insider の最新の Developer Ring バージョン (ビルド 21364 以降) に更新することです。 それが完了したら、単に実行できます wsl --update 管理者特権のコマンド プロンプトまたは PowerShell ウィンドウで、続いて wsl --シャットダウン.

次に、WSL インスタンスを開いて、GUI を使用して Linux アプリを実行するだけです。 すべてがうまくいったと仮定すると、アプリはネイティブ Windows アプリとほぼ同じように表示されることがわかります。 それ以外の場合は、GitHub の問題を確認するか、必要に応じて独自の問題を提出してください。

リソース

GUI を備えた Linux アプリがどのように実行されるかについて詳しくは、次のリソースを必ず確認してください。

  • WSLg の GitHub リポジトリ.
  • Windows Insider 21364 の発表.
  • Craig Loewen の詳細な記事.

または、Craig Loewen のウォークスルーとサンプル ビデオをご覧ください。