narou.rbをmacOS(Monterey)へインストールする (改造版AozoraEpub3)

:::note info
narou.rbの3.9.1への更新に伴い記載更新
:::

# 目的
1. 改造版AozoraEpub3の最新版を使用する (2024.09.25時点で 1.1.1b26Q)
1. 読書端末はKindle PaperWhiteとする
1. Javaも含めて最新版(あればLTS)を使用する
1. 無職転生　- 異世界行ったら本気だす - の変換がEPUBで完了すること
1. できる限りnarou.rbで設定しているCSSスタイルに準拠すること

## 手順として参考にしたサイト

https://qiita.com/mbotsu/items/72e2ba4deb0b183778ba

## 2024/09/25時点で採用したバージョン
* macOS Monterey ※人のPCなのでアップデートしてない
* rbenv環境を使用し3.3.5をインストール
* openjdk-21-jdk
* [AozoraEpub Wiki](https://w.atwiki.jp/hmdev/)から AozoraEpub3-1.1.1b26Q.zip 

## 実際のインストール手順

### homebrewのインストール
``` shell
% /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
※sudoしているのでアカウントのパスワードを求められる
==> Checking for `sudo` access (which may request your password)...
	Password:

インストール完了後
% brew --version
	Homebrew 4.3.24

% (echo; echo 'eval "$(/usr/local/bin/brew shellenv)"') >> ~/.zprofile
% eval "$(/usr/local/bin/brew shellenv)"
```
### wgetのインストール
``` shell
% brew install wget
==> Downloading https://formulae.brew.sh/api/formula.jws.json
...
==> Installing wget
%
```
### ruby 3.3.5のインストール

rbenv環境の構築を含めて
``` shell
% ruby -v
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.x86_64-darwin20]

※rbenvとruby-buildのインストール
% brew install rbenv ruby-build

% rbenv -v
rbenv 1.3.0
```

次にrubyのインストール
```shell
% rbenv install --list
3.1.6
3.2.5
3.3.5
3.3.0
jruby-9.4.8.0
mruby-3.3.0
picoruby-3.0.0
truffleruby-24.1.0
truffleruby+graalvm-24.1.0

% rbenv install 3.3.5
==> Installed ruby-3.3.5 to /Users/hoge/.rbenv/versions/3.3.5

NOTE: to activate this Ruby version as the new default, run: rbenv global 3.3.5

※globalを指定しPathを通す
% rbenv global 3.3.5
% echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
% echo 'export PATH="$HOME/.rbenv/shims:$PATH"' >> ~/.zshrc
```

### openjdk-21-jdk
途中でsudoのパスワード入力を求められるので入力しEnter
``` shell
% cd
% brew install --cask temurin@21
===> Installing Cask temurin@21
===> Running installer for temurin@21 with sudo; the password may be necessary.
Password: 
中略
installer: Installing at base path /
installer: The install was successful.
🍺 temurin21 was successfully installed!

% /usr/libexec/java_home -v 21
/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home

% echo `PATH=${JAVA_HOME}/bin:${PATH}` >> ~/.zshrc
% source ~/.zshrc

% java -version
openjdk version "21.0.4" 2024-07-16 LTS
OpenJDK Runtime Environment Temurin-21.0.4+7 (build 21.0.4+7-LTS)
OpenJDK 64-Bit Server VM Temurin-21.0.4+7 (build 21.0.4+7-LTS, mixed mode)
```

### 改造版AozoraEpub3のインストール
AozoraEpub3-1.1.1b23Q.zip をユーザーディレクトリ直下にAozoraEpub3として解凍する

``` shell
% cd
% wget https://github.com/kyukyunyorituryo/AozoraEpub3/releases/download/v1.1.1b26Q/AozoraEpub3-1.1.1b26Q.zip
% unzip AozoraEpub3-1.1.1b26Q.zip -d AozoraEpub3
% cd AozoraEpub3
% java -cp AozoraEpub3.jar AozoraEpub3 --help
usage: AozoraEpub3 [-options] input_files(txt,zip,cbz)
version : 1.1.1b26Q
```

### kindlegenのコピー作業
``` shell
※WEBブラウザからのダウンロードでも問題ないが、その場合はDownloadsフォルダへダウンロードされる
% cd
% wget https://d2bzeorukaqrvt.cloudfront.net/KindlePreviewerInstaller.pkg

※ダウンロードしたpkgファイルをpkgutilを使用して解凍
% pkgutil --expand-full KindlePreviewerInstaller.pkg ~/temp

※解凍されたpkgファイルからkindlegenのみをAozoraEpub3へコピー
% cp temp/KindlePreviewer.pkg/Payload/Kindle\ Previewer\ 3.app/Contents/lib/fc/bin/kindlegen AozoraEpub3/

※一応実行権限を付与
% chmod +x AozoraEpub3/kindlegen
```

### narou.rbをインストールする

``` shell
% cd
% gem install narou
% narou version
3.9.1
```

### narou.rbの初期化作業

``` shell
$ cd
$ mkdir MyNovel
$ cd MyNovel
$ narou init
... 中略
AozoraEpub3のあるフォルダを入力して下さい:
(未入力でスキップ)
>~/AozoraEpub3
... 中略
(未入力で 1.8 を採用)
>

(次のファイルを書き換えました)
/Users/hoge/AozoraEpub3/chuki_tag.txt

(次のファイルをコピーor上書きしました)
/Users/hoge/AozoraEpub3/AozoraEpub3.ini
/Users/hoge/AozoraEpub3/template/item/style_custom/font.css
AozoraEpub3の設定を終了しました
初期化が完了しました！
現在のフォルダ下で各種コマンドが使用出来るようになりました。
まずは narou help で簡単な説明を御覧ください。
```

:::note info
"MyNovel"の命名は任意で問題ないが、全角文字やスペース等が無い名称を推奨します
:::

### 無職転生のダウンロードと変換
以下のようにePUBの変換もMobiの変換もエラーがなければ完了
``` shell
$ narou download n9669bk
...
ID:0　無職転生　- 異世界行ったら本気だす - の変換を開始
小説状態の調査結果を 調査ログ.txt に出力しました（エラー：0件、警告：43件、INFO：4件）
縦書用の変換が終了しました
AozoraEpub3でEPUBに変換しています...........変換しました
[理不尽な孫の手] 無職転生　- 異世界行ったら本気だす -.epub を出力しました
EPUBファイルを出力しました
小説の保存フォルダを開きますか (y/n)?: n
```

# 結論
残課題はWindows版と同様に5.のスタイルの適用があるが、他の目的は達成したと思っている。