hamakou108 blog

macOS の環境構築(2023年版)

Cover Image for macOS の環境構築(2023年版)

最近 Apple Silicon の MacBook の環境構築を行う機会があった。諸々の都合で Time Machine を利用することができなかったので、一から環境構築を行った。2019年に一度似たような内容の記事を書いているが、幾つか変更が必要な箇所もあったので改めて環境構築の手順について書く。

構築手順

前提として、移行前の環境のデータのコピーは既に完了しているものとする。ホームディレクトリに配置している隠しファイルやディレクトリ (~/.ssh~/.aws など) は見落としがちなので、コピーのし忘れに注意する。

アプリのインストール

自分はアプリのインストールを可能な限り Homebrew 経由で行っている。こうしておくと brew bundle dump コマンドによってインストールされたアプリの一覧を Brewfile として出力することができ、移行先の環境で brew bundle を実行してアプリをインストールできる。自分は GitHub の dotfiles リポジトリ上に Brewfile をアップロードして各環境から参照できるようにしている。

dotfiles/Brewfile at master · hamakou108/dotfiles - GitHub

なお Intel と Apple Silicon で $HOMEBREW_PREFIX のパスが異なっており、シェル起動時に /opt/homebrew/bin$PATH に追加する必要があった (上記リポジトリでは対応済み) 。

操作性に関係するアプリの設定

Mac の操作性を大きく左右するアプリの設定を済ませておくと後続の設定が捗る。 特に設定しておいた方が良いアプリについて優先度順に書く。

Karabiner-Elements

Karabiner-Elements

設定の Complex Modifications を編集する。日本語環境向けの 設定 をインストールして必要なルールを追加する。

Raycast

Raycast

設定の Raycast Hotkey を編集する。

Spotlight のショートカットキー ⌘ + Space を上書きする場合は System Settings から Keyboard メニューの Keyboard Shortcuts を開き、 Spotlight にある Show Spotlight search のチェックを外す。

AltTab

AltTab

設定の Controls からショートカットキーを編集する。同一アプリケーション上のウィンドウ切り替えは macOS のデフォルトより AltTab の方が個人的には使いやすいので、 Shortcut 2 に ⌘ + ` を割り当てている。

Bartender

Bartender

設定の License からライセンス情報を入力する。移行前の Mac を今後使わない場合は Remove License からライセンスを削除しておく。

開発環境の構築

iTerm

iTerm

配色の設定を行う。 Profiles で適当なプロファイルの Colors タブを開き、 Colors Presets を選択する。デフォルトで入っているプリセットでも良いし、 iTerm Color Schemes からインポートしても良い。

dotfiles の配置

前述した dotfiles リポジトリには Fish や Vim などの各種設定ファイルのシンボリックリンクをホームディレクトリに作成するコマンドを用意しているので、これを実行する。

$ /bin/bash ./bin/link.sh

Fish

fish shell

シェルを Fish に変更する。

$ which fish | sudo tee -a /etc/shells
$ chsh -s /usr/local/bin/fish

その後 Fisher をインストールする。

$ curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher

このとき一度 .config/fish/fish_plugins から fisher 以外のリストが消えてしまう。 そのため一度 dotfiles リポジトリ上でリストを復活させた上で残りのプラグインのインストールを行う。

$ git restore config/fish/fish_plugins
$ fisher update

また tide で利用している Nerd Fonts (Homebrew でインストール済み) が iTerm から認識されるように、設定の Profiles で適当なプロファイルの Text タブを開き、 Font から Hack Nerd Font (または Hack Nerd Font Mono) を選択する。

Tmux

Tmux

tpm のリポジトリをクローンする。

$ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

その後 Tmux を起動し、 <Prefix> + I でプラグインをインストールする。

asdf

asdf

必要な言語のランタイムをインストールする。今回はランタイムの整理も行いたかったので手動でインストールを行ったが、そのままの内容で良ければホームディレクトリの .asdf ディレクトリをそのままコピーすれば良い (たぶん) 。

$ asdf plugin add nodejs
$ asdf install nodejs 18.13.0

最後に

移行にはそれなりに時間が掛かったが、ファイルやアプリを棚卸ししてスッキリさせることができたので良かった。