Windows 10 の Linux 環境 (WSL) で日本語 man を表示する (Debian/Fedra on WSL2)

# Debian
WSL に Debian を入れたけど日本語マニュアルが表示されない！ということで試行錯誤。

## パッケージデータベースのアップデート
とりあえずおまじない。

```bash:
# apt update
# apt upgrade
# uname -a
Linux H97-Pro 4.4.0-18362-Microsoft #1-Microsoft Mon Mar 18 12:02:00 PST 2019 x86_64 GNU/Linux
# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
```
OS のバージョンは Debian GNU/Linux 10 (buster) でした。

## man コマンドも less もない
まず man コマンドが無い！less コマンドもない！

```bash:
# apt install man less
```
man コマンドと less コマンドが入った。

## 英語 & 日本語マニュアルのインストール
man を叩いても manpages 自体が無い！

```bash:
# apt install manpages manpages-dev
```
manpage (英語) が入った。でも man を叩いても英語しか出ない！

```bash:
# apt install manpages-ja manpages-ja-dev
```
日本語の manpage が入った。やっぱり英語しか出ない！

```bash:
# export LANG=ja_JP.UTF-8
```
LANG が違うのか？まだ見えない！

## OS にロケールを追加
```bash:
# dpkg-reconfigure locales
....
 │    [ ] iu_CA UTF-8                                                                                            ↑   │
 │    [ ] ja_JP.EUC-JP EUC-JP                                                                                    ▒   │
 │    [*] ja_JP.UTF-8 UTF-8                                                                                      ▒   │
 │    [ ] ka_GE GEORGIAN-PS                                                                                      ▒   │
 │    [ ] ka_GE.UTF-8 UTF-8                                                                                      ▒   │
 │    [ ] kk_KZ PT154                                                                                            ▮   │
```
ja_JP.UTF-8 UTF-8 にチェックを点けて <Ok> を選択。

```bash:
# man man
MAN(1)                 マニュアルページユーティリティー                 MAN(1)

名前
       man - オンラインマニュアルのインターフェース
...
```
成功！

# Fedora on WSL2
Debian を参考にしながら。Fedira はパッケージ管理に dnf を使うんですね。手元の Fedora の dnf は dnf-3 へのリンク。

## OS のバージョンを確認
```tcsh:
[root@HINAKO ~]# uname -a
Linux HINAKO 4.19.84-microsoft-standard #1 SMP Wed Nov 13 11:44:37 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
[root@HINAKO ~]# cat /etc/os-release
NAME=Generic
VERSION="32 (Generic)"
ID=generic
ID_LIKE=fedora
VERSION_ID=32
PRETTY_NAME="Generic 32 (Generic)"
ANSI_COLOR="0;34"
LOGO=generic-logo-icon
CPE_NAME="cpe:/o:generic:generic:32"
HOME_URL="http://www.zombo.com/"
SUPPORT_URL="https://en.wikipedia.org/wiki/Help!_(album)"
BUG_REPORT_URL="https://youtu.be/CSemARaqGqE"
REDHAT_BUGZILLA_PRODUCT="Generic"
REDHAT_BUGZILLA_PRODUCT_VERSION=%{bug_version}
REDHAT_SUPPORT_PRODUCT="Generic"
REDHAT_SUPPORT_PRODUCT_VERSION=%{bug_version}
PRIVACY_POLICY_URL="http://nsa.gov"

[root@HINAKO ~]# ls -l `which dnf` `which dnf-3`
lrwxrwxrwx 1 root root    5 Jun  3 04:50 /usr/bin/dnf -> dnf-3*
-rwxr-xr-x 1 root root 1942 Jun  3 04:50 /usr/bin/dnf-3*
```
OS は Fedora 32、dnf は バージョン 3
パッケージのデータベースを最新にしつつ、古いパッケージをついでにアップデート。

```tcsh:
[root@HINAKO ~]# dnf update
...snip
[root@HINAKO ~]# locale -a | grep ja
[root@HINAKO ~]#
```
どうも、Fedora のデフォルトでは日本語対応ロケールには入っていないらしい。

## ロケールを追加
何か日本語っぽいやつは無いのか？

```tcsh:
[root@HINAKO ~]# dnf search japanese
...
langpacks-core-font-ja.noarch : Japanese core font meta-package
langpacks-core-ja.noarch : Japanese langpacks core meta-package
langpacks-ja.noarch : Japanese langpacks meta-package
...
```
あるじゃないですか。font は今は要らないから、下のを入れたら -core の方も一緒に入ってくれないかな？という期待と共に

```tcsh:
[root@HINAKO ~]# dnf install langpacks-ja.noarch                                                   2020-10-10 18:44:43
Last metadata expiration check: 0:49:41 ago on Sat Oct 10 17:57:16 2020.
Dependencies resolved.
========================================================================================================================
 Package                                     Architecture       Version                       Repository           Size
========================================================================================================================
Installing:
 langpacks-ja                                noarch             3.0-3.fc32                    fedora              9.5 k
Installing dependencies:
 google-noto-cjk-fonts-common                noarch             20190416-6.fc32               fedora               20 k
 google-noto-sans-cjk-ttc-fonts              noarch             20190416-6.fc32               fedora               86 M
 langpacks-core-font-ja                      noarch             3.0-3.fc32                    fedora              9.4 k
 langpacks-core-ja                           noarch             3.0-3.fc32                    fedora              9.5 k
Installing weak dependencies:
 glibc-langpack-ja                           x86_64             2.31-4.fc32                   updates             409 k
 google-noto-serif-cjk-ttc-fonts             noarch             20190416-6.fc32               fedora              108 M

Transaction Summary
========================================================================================================================
Install  7 Packages

Total download size: 194 M
Installed size: 297 M
Is this ok [y/N]:Y
```
ほら -core も来た！でも、フォントも来たねぇ。ま、入れますか。

```tcsh:
[root@HINAKO ~]# locale -a | grep ja
ja_JP.eucjp
ja_JP.utf8
```
ロケール来た！

## 日本語マニュアルをインストール
そして、日本語のマニュアルのパッケージを探す。

```tcsh:
[root@HINAKO ~]# dnf search manual
...
man-pages-es-extra.noarch : Extra manual pages - Spanish versions
man-pages-it.noarch : Italian man (manual) pages from the Linux Documentation Project
man-pages-ja.noarch : Japanese man (manual) pages from the Japanese Manual Project
man-pages-ko.noarch : Korean(Hangul) Man(manual) Pages from the Korean Manpage Project
...
```
それっぽい物を発見。英語版はぱっと見、見付からなかったけど -ja が無いやつだろうと

```tcsh:
# dnf install man-pages.noarch man-pages-ja.noarch
Last metadata expiration check: 0:21:05 ago on Sat 10 Oct 2020 05:57:16 PM JST.
Dependencies resolved.
========================================================================================================================
 Package                       Architecture            Version                           Repository                Size
========================================================================================================================
Installing:
 man-pages                     noarch                  5.04-4.fc32                       updates                  5.9 M
 man-pages-ja                  noarch                  20190815-2.fc32                   fedora                   5.5 M

Transaction Summary
========================================================================================================================
Install  2 Packages

Total download size: 11 M
Installed size: 11 M
Is this ok [y/N]: Y
```
当たり！ということでインストール。

## 動作確認
ロケールを設定して、いざ

```tcsh:
[root@HINAKO ~]# setenv LANG ja_JP.utf8
[root@HINAKO ~]# man test
TEST(1)                                            ユーザーコマンド                                           TEST(1)

名前
       test - ファイル種別の確認や値の比較を行う

書式
       test EXPRESSION
       test

       [ EXPRESSION ]
       [ ]
       [ OPTION

説明
       終了ステータスは EXPRESSION によって決まります

       --help この使い方を表示して終了する
...
```
成功！