windows10で快適なCUI環境を構築する(2020)


はじめに

  • WSL2環境を構築する

    • 3年前の記事の時点で Bash on Ubuntu on Windows と呼ばれていたものは Windows Subsystem for Linux (WSL) へと名称変更された
    • 本質的には同じものではあるものの、導入方法が大きく変更されている
    • WSL1からWSL2へ更新することで機能・パフォーマンスが向上する
    • WSL 1 と WSL 2 の比較
  • Windows Insider Programへの参加が必要な時期があったが、正式版となった現在は不要

  • ターミナルはWSLのデフォルトのものでも十分実用に耐えられるようになった

    • より快適に使うにはwsl-terminalWindows Terminalの利用をおすすめ
    • この記事ではwsl-terminalを使う

WSLの有効化

PowerShellを管理者として開き、以下を実行

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

PC再起動

WSL2への更新

Windowsのバージョンの確認

Win+R -> winverでOSバージョンが以下を満たしていることを確認する。

x64 システムの場合:バージョン 1903 以降、ビルド 18362 以上。
ARM64 システムの場合:バージョン 2004 以降、ビルド 19041 以上。

このバージョン未満だった場合はWindows Updateで最新のバージョンに更新する。

仮想マシンプラットフォームを有効にする

PowerShellを管理者として開き、以下を実行

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

PC再起動

WSL2 Linuxカーネルの更新

https://aka.ms/wsl2kernel に従って、 wsl_update_x64.msi をダウンロードして実行する。

WSL2を既定のバージョンとして設定

PowerShellを管理者として開き、以下を実行

wsl --set-default-version 2

Microsoft Storeから任意のディストリビューションを入手

例: Ubuntu 20.04 LTS
https://www.microsoft.com/store/apps/9n6svws3rx71

wsl-terminalを使う

https://github.com/mskyaxl/wsl-terminal/releases から最新版を入手して適当なディレクトリに展開するのみ。

通常のwsl-terminalの他、v0.8.11からタブが使えるwsl-terminal-tabbedもリリースされているので、好みで選択。

以下では c:\wsl-terminalに展開したものとする。

使い方

c:\wsl-terminal\open-wsl.exeを実行するのみ。

ただし、起動後のカレントディレクトリがexeのあるディレクトリになってしまうため、以下のように-lで起動するショートカットかバッチファイルを作ると便利。

c:\wsl-terminal\open-wsl.exe -l

ログインシェルをzshに変更

c:\wsl-terminal\etc\wsl-terminal.conf

[config]
title="        "
shell=/usr/bin/zsh
use_tmux=0
keep_wsl_running=0

事前に一旦bashでログインしてからLinux側にzshを入れておく必要あり

フォントを変更

wsl-terminalを起動してから、コンテキストメニューのOptions -> Text -> Fontで好みのフォントに変更できる。

ConsolasやMirycaが視認性がよく、おすすめ。