- 追加された行はこの色です。
- 削除された行はこの色です。
* wslbridge [#f29247cf]
** wslbridgeとは? [#pafb2cd0]
- WSL Bashのターミナルソフトを標準のWindowsコンソール(コマンドプロンプト)でなく、MinTTYにする。
- WSL(Bash on Windows)のターミナルソフトを標準のWindowsコンソール(コマンドプロンプト)でなく、MinTTYにする。
- MinTTYとはPuTTYから派生したCygwinの標準ターミナルソフト。
- Windowsコンソールは、表示のくずれ、フォントの選択など日本語対応に制限があり、BEEP音制御出来ないなど、欠点がある。
- Linux互換環境で使用するだけならMinTTYの方が優れるが、MinTTYはCygwin(MSYS)で使用するものであり、WSLでは使用できない。
- これを解決するのがwslbridge。
- wslbridgeを使うと、MinTTYを使ってWSLにアクセスできるようになる。
** ソースコード取得・コンパイル [#a276e4a8]
- Cygwin(Msys2)とBash On Windowsでそれぞれフロントエンドとバックエンドをコンパイルする。
*** Cygwin - frontend [#ec67aaca]
cd /tmp/
git clone https://github.com/rprichard/wslbridge.git
cd wslbridge/
cd frontend/
make
*** Bash On Windows - backend [#zee650d4]
*** WSL(Bash on Windows) - backend [#zee650d4]
sudo apt-get install build-essential # ビルドツールがインストールされてなければインストールしておく
cd /tmp/
cd wslbridge/
cd backend/
make
** インストール [#b202d60d]
cd /tmp/wslbridge/out/
cp wslbridge.exe wslbridge-backend /c/cygwin/
- コンパイル後にoutディレクトリ以下に、wslbridge.exeとwslbridge-backendができる。
- この2つのファイルを適当なフォルダへコピーする。(CygwinやMsys2のフォルダー直下など)
** 起動 [#x7ad024a]
mintty.exe -e "C:\cygwin\wslbridge.exe"
*** Cygwin(MSYS2)から [#a0947ec2]
Cygwin Bash> mintty.exe -e "C:\cygwin\wslbridge.exe"
- 上のようにMinTTYを起動する。
- 起動用のBATファイルを作るか、mintty.exeのショートカットを作って、プロパティを上のようにすると良い。
*** MSYS2-launcherから [#l5e0b931]
- MSYS2でMSYS2-launcherを導入していることとする。
- msys2.exeをコピーしてショートカットを作成する。
- ショートカットのプロパティを開き、リンク先を以下のようにする。
- C:\msys\msys2.exe "C:\msys\wslbridge.exe" -C~
** Cygwin(MSYS2)本体をインストールしたくない場合 [#m2bd1e38]
*** mintty.exe + cygwin1.dll(msys-2.0.dll) [#c7658176]
- 以下のファイルを集めて、1か所にまとめる。
- mintty.exe
- cygwin1.dll (msys-2.0.dll)
- cygwin-console-helper.exe
- wslbridge.exe
- wslbridge-backend
- 参考 https://superuser.com/questions/1110045/windows-10-bash-and-mintty
*** WSLtty [#r11c8d1b]
- https://github.com/mintty/wsltty
- Cygwinプロジェクトがメンテナンスしてるので、オススメ。
** 参考 [#z6b16e98]
https://github.com/rprichard/wslbridge