Macbook Air 2018にEndeavour OSをインストールした

### はじめに
ペイと名の付くQR決済サービス出始めの頃に購入したMacbookAir2018を使っています。持ち運び用にとても重宝してますが、最近はもっさりしてきたなと感じています。ハードウェア的には全くヘタれてないと信じ、Linuxを入れて延命してみるのも面白いかと思いました。

#### 前提条件
Macbook Air2018(キーボードはjp106)
Arch系ディストリビューションを入れる
MacOSは消去しない(Wi-fiファームウェアのコピーのため)
LinuxのGUI上でインターネットに接続できるところがひとまずのゴール

##### 弊Linux略歴
CentOSで入門後、Debian系統でサーバ作ったりした程度です。
今回は別のディストリを試したいなぁと思いArch系を選択しました。

## MacbookAir 2018ならではの制約
MacbookAir 2018にはT2セキュリティチップが搭載されています。
[Apple T2 セキュリティチップ搭載モデルの Mac](https://support.apple.com/ja-jp/103265)

[Arch Linux公式](https://www.archlinux.jp/)の出しているisoをUSBブートしてLive環境を立ち上げてもキーボードが効かない等困った事になります。なりました。
検索の果てにたどり着いた[t2linux Wiki](https://wiki.t2linux.org/)のisoを活用しました。真剣感謝。
また、Linux上で使うWi-fiのファームウェアはMacOSのものを流用しますので、MacOSに関しては消去せずに残しておきます。
こういったT2セキュリティチップ搭載のmac特化のアドバイスがt2Linux Wikiには多数記載されています。

## Mac側の準備
### パーティションを切る
[t2linux wiki](https://wiki.t2linux.org/guides/preinstall/)のプリインストールのページに従います。

まず、ディスクユーティリティでLinux用のパーティションを切ります。
弊環境の場合50GBをLinux用に切りました。

### isoファイルのダウンロード・USBメモリへの書き込み
次にプリインストールのページにはT2セキュリティチップ対応のisoがリストで並んでいます。
~~Arch Linux Install Battleには3日かけて無事諦めたので、~~ 今回はEndeavourOSをダウンロードします。

Install Battleは目的ではない(遠吠え)のでGUIのインストーラに甘えます。
本当はManjaroOSを入れたかったのですがT2対応版は古くなっているようで、EndeavourOSをオススメする旨が記載されていました。
そんなわけで、記事執筆時点で最新版だったEndeavourOS Galileo-T2のisoをダウンロードしました。

ダウンロード後、USBメモリを挿しターミナルを開きます。
`diskutil list`でUSBの場所を調べます。弊環境ではdisk2がUSBメモリでした。

isoをUSBにコピーします。
以下t2Linux wikiからコピー・改変したコマンドです。
ddコマンドについて、 `/path/to/linux.iso`はターミナルにダウンロードしたisoファイルをドラッグ&ドロップすると良いでしょう。ddコマンドについては`/dev/disk2` でなく `/dev/rdisk2` なのでご注意を。
```
sudo diskutil unmountDisk /dev/disk2
sudo dd if=path/to/linux.iso of=/dev/rdisk2 bs=1m
```
計測してませんがコマンド走らせて食事して戻ったら終わってました。
「利用できないUSBが刺さっている」みたいな警告が出ましたが「無視」を押下でOK。

### wi-fiファームウェアのコピー(前半)
続いてLinux環境でWi-fiを使うための作業として、MacOSのWi-fiファームウェアをコピーします。
[t2Linux wikiのWi-Fi and Bluetoothページ](https://wiki.t2linux.org/guides/wifi-bluetooth/#on-macos)に従います。
スクリプトをダウンロードし実行したらMacOSを終了。Linux環境で続きのフローに入りたいところですが…。
MacOSのセキュアブートに引っかかりLinuxを起動出来ない事象が発生します。しました。
ので、EndeavourOSのLive環境が起動出来るようセキュアブートを無効化します。

### セキュアブートの無効化
`command + R`キーを押しながら起動ボタンを押すと、MacOSのリカバリ画面が出ます。
画面上部から`ユーティリティ`→`起動セキュリティユーティリティ`を起動。

オプションをそれぞれ
* セキュリティなし
* 外部メディアまたはリムーバブルメディアからの起動を許可
に設定しシステムを終了します。

## Linux側の準備
### Wi-fiファームウェアのコピー(後半)
USBが刺さっている状態で改めてOptionキーを押しながら電源ボタンを押し、オレンジ色の方(USB)を選択することでEndeavourOSのLive環境が立ち上がりました。

ターミナル上で以下コマンドを実行。
t2Linux wikiに記載されているもので、弊環境ではコピペで大丈夫でした。
```
sudo umount /dev/nvme0n1p1
sudo mkdir -p /tmp/apple-wifi-efi
sudo mount /dev/nvme0n1p1 /tmp/apple-wifi-efi
bash /tmp/apple-wifi-efi/firmware.sh
```

### EndeavourOSのインストール
無事にネットに繋いだらいよいよEndeavourOSのインストール。
通常版をOnline環境でインストールを進めました。
地域やキーボードマップは日本ですが、システムはen_USを指定しました。
システムを日本語でインストールすると`/ダウンロード` とかカタカナのディレクトリ作られるイメージがあったので…。実際どうなるかは分かりません。
デスクトップ環境はplasmaを選びました。
パーティション設定画面で`nvme0n1p1`をefi, OSのインストール先はMacでパーティションを切ったところ、`nvme0n1p3`を選択することになるかと。弊環境だと色々汚れて結果`~p4`になりました。
swap領域はまぁ、いらないかな…と思ったので設定しませんでした。

##### 余談
なお、バージョンが1つ古いCassini Nova R1-T2のisoだとPacmanがコケてインストール出来なかったのですが、Redditニキ曰く、このコマンドで治るよという[投稿](https://forum.endeavouros.com/t/i3wm-installation-problems-endeavouros-skel-i3wm-is-unknown-trust/29246#:~:text=update%20your%20keyring%3A-,pacman%20%2DSy%20archlinux%2Dkeyring%20%26%26%20pacman%20%2DSu,-https%3A//discovery.endeavouros)がありました。
```
pacman -Sy archlinux-keyring && pacman -Su
```
Galileo-T2のLive環境でも必要かはわかりませんがとりあえず実行しました。
実行後、Rebootとか推奨されたけど無視してOSのインストーラを走らせます。
単に必要そうなものインストール・アップデートしてるだけのようだし、また失敗するより良いか…。と早く終わらせたかったので雑になってたと反省。

#### インストール後
とにかく、上記でEndeavourOS Galileo-T2のインストールに成功しました。
インストールが終了したらUSB抜いて再起動。systemd-boot経由でEndeavourOSが起動します。
MacOSを起動したくなったときはOptionキーを押して起動することで選択出来ますのでいざというときも安心。

##### セットアップ後
システムを日本語に変更、Mozcをインストール、日本語入力を可能にしました。（[参照](http://note.kurodigi.com/archlinux-fcitx5/)）
ChromeやVSCodeをインストールしたので最低限のコーディングには困らないかと。
フォントを変更したり見た目の大きさを変えたり等など、まだまだ設定したいことはありますが、
T2 Linux Wiki, Arch Wikiを始め先人の知恵を借りながら進めていきたいと思います。

![EndeavourOS on MacBook Air 2018.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159423/14334eae-81bc-6743-ac71-33a482dcd03d.png)

### リファレンス
[Apple T2 セキュリティチップ搭載モデルの Mac](https://support.apple.com/ja-jp/103265)
[Arch Linux公式](https://www.archlinux.jp/)
[t2linux Wiki](https://wiki.t2linux.org/)
[forum.endeavouros.com](https://forum.endeavouros.com/t/i3wm-installation-problems-endeavouros-skel-i3wm-is-unknown-trust/29246#:~:text=update%20your%20keyring%3A-,pacman%20%2DSy%20archlinux%2Dkeyring%20%26%26%20pacman%20%2DSu,-https%3A//discovery.endeavouros)
[クロの思考ノート](http://note.kurodigi.com/)