2013年製のMacを初期化して再設定した

ここ最近、ずっと使ってきているMacの調子が悪いので思い切って初期化してみることにした。多分というか絶対に今までインストールしたものの残骸とかが積もり積もっている気がするんだよね。それらを除去してスッキリすれば多少は動作も改善すると思う。

今使っているMacは2014年に買ったLate 2013モデル。具体的なスペックは下記。

$ system_profiler SPHardwareDataType
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro11,2
      Processor Name: Quad-Core Intel Core i7
      Processor Speed: 2 GHz
      Number of Processors: 1
      Total Number of Cores: 4
      L2 Cache (per Core): 256 KB
      L3 Cache: 6 MB
      Hyper-Threading Technology: Enabled
      Memory: 8 GB
      System Firmware Version: 430.0.0.0.0
      SMC Version (system): 2.18f15

せっかくなので初期化と最低限使える状態にするまでの手順をメモとして纏めていこうと思う。

@Contents

フォーマットする手順

公式サイトを参考にした。別に売却したりする訳ではないので、サインアウト系はスルーした。

  1. バックアップの作成
  2. NVRAMのリセット

NVRAMをリセットした方がいいのかは迷ったが普段することはないのでついでにリセットしておいた。普通はカーネルパニックが起きた時にするものなので特にしなくても問題ないと思う。

次に内蔵ディスクをフォーマットする。

初期化したらmacOSをインストールしないといけないがまさかのmacOS Xからしかなくて仕方なく入れた。待ち時間が結構かかるので放置。後からOSをアップデートすることにした。

諸々のセットアップ

いきなりこの画面が現れて懐かしさを感じた。

見た目的には問題ないのだけど、これからインストールするものは最低でもCatalina以上が要求されることが多いのでBig Surをインストールする。初期化する前は敢えて入れなかったけど、おそらく容量的に余裕があるので思い切って入れてみることにした。これも当然だが時間が掛かるので待機。途中でファンが回り始めて焦ったが無事にインストール完了。動作も問題なくホッとした。

先ずはパスワード管理ソフトのBitwardenをインストールする。私は基本的にパスワードを100文字以上の乱数にしているのでこれがないとログインすらできない。パスワード管理ソフトは色んな種類があるけど、断然Bitwardenがオススメ。

次にブラウザを入れる。Apple製のSafariではなくChromeをチョイス。

同期すれば拡張機能やブックマークが同期されるのでとても便利だね。

ここまではMacbookのキーボードを使ってきたが普段はHHKBを使っているので違和感がすごい。なので、使える状態にする。

私が使っているキーボード -> HHKB Professional HYBRID Type-S 無刻印/墨(英語配列)

Bluetoothで使える状態にしたがデフォルトではUSと日本語入力がしにくいのでKarabiner-Elementsを入れてキーマッピングを変更する。詳しくは別の記事に書こうと思う。自由度が高いが故にあまりマッピングは弄らないようにしている。

あとはシステム環境設定を好みに合わせて変えたりすればPCで一般的な楽しみ方をする人にとってのセットアップは終了。しかし、開発をするのであれば他にもすることはたくさんある。

  • メニューバー
  • キーボードでユーザ辞書登録
  • ファンクションキーを使えるようにする
  • 共有でコンピュータ名の変更
  • バッテリーでディスプレイをオフにしないようにする

開発の準備

Mac用のパッケージ管理ソフトHomebrewがないと始まらないのでいの一番にインストール。しようとしたらシェルがBashなことに気づいたのでZshに変更する。

# 使用中のシェルを確認
$ echo $SHELL
/bin/dash

# 使用可能なシェルを確認
$ cat /etc/shells
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

# Zshにシェルを変更
$ chsh -s /bin/zsh

# 再起動

# 使用中のシェルを確認
% echo $SHELL
/bin/zsh

変更されたらHomebrewをインストールする。

% /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

% brew -v
Homebrew 3.0.0
Homebrew/homebrew-core (git revision f4b1e; last commit 2021-02-07)

基本的にHomebrewを利用して開発環境を構築する。これを使うことでアンインストールやアップグレードもコマンドひとつで出来るので使わない手はない。

ここまでMacに標準で入っているターミナルを使ってきたが見た目がダサいのでiTerm2を入れる。これは見た目以外にも様々なコマンドを使えるので便利。Homebrewはbrew caskというコマンドを使えばGUIもインストール出来るので早速入れてみる。

% brew install brew-cask
==> Tapping homebrew/cask
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask'...
remote: Enumerating objects: 48, done.
remote: Counting objects: 100% (48/48), done.
remote: Compressing objects: 100% (34/34), done.
remote: Total 548634 (delta 24), reused 27 (delta 14), pack-reused 548586
Receiving objects: 100% (548634/548634), 241.57 MiB | 304.00 KiB/s, done.
Resolving deltas: 100% (387451/387451), done.
Tapped 3808 casks (3,929 files, 259.2MB).
==> Searching for similarly named formulae...
This similarly named formula was found:
brew-cask-completion
To install it, run:
  brew install brew-cask-completion
Error: No available formula or cask with the name "brew-cask".
==> Searching for a previously deleted formula (in the last month)...
Error: No previously deleted formula found.
==> Searching taps on GitHub...
Error: No formulae found in taps.

が、エラーが発生。おかしいなと思ってたら参照していた記事が古いコマンドを使っていたようだ。今はこれ。

% brew install cask

これでようやくiTerm2をインストールできる。

% brew install --cask iterm2
==> Downloading https://iterm2.com/downloads/stable/iTerm2-3_4_3.zip
######################################################################## 100.0%
==> Installing Cask iterm2
==> Moving App 'iTerm.app' to '/Applications/iTerm.app'
🍺  iterm2 was successfully installed!

次はIntelliJ IDEAを入れてみる。基本的にIDEやエディタ合わせてもこれしか使ってない。めっちゃ便利なやつ。

% brew install --cask intellij-idea
==> Downloading https://download.jetbrains.com/idea/ideaIU-2020.3.2.dmg
==> Downloading from https://download-cf.jetbrains.com/idea/ideaIU-2020.3.2.dmg
######################################################################## 100.0%
==> Installing Cask intellij-idea
==> Moving App 'IntelliJ IDEA.app' to '/Applications/IntelliJ IDEA.app'
🍺  intellij-idea was successfully installed!

ここまできて今更だけどChromeとKarabiner-Elementsはbrew install --caskでインストールできるんだね……。アンインストールするのは面倒だし、あんまり更新する機会ないから放置しよう。これからはまずbrew searchで調べてみないといけないな。

一応、メモ。

% brew install --cask bitwarden
% brew install --cask google-chrome
% brew install --cask karabiner-elements

IntelliJ IDEAのついでに便利なToolboxもインストールした。

% brew install --cask jetbrains-toolbox
==> Downloading https://download.jetbrains.com/toolbox/jetbrains-toolbox-1.20.7940.dmg
==> Downloading from https://download-cf.jetbrains.com/toolbox/jetbrains-toolbox-1.20.7940.dmg
######################################################################## 100.0%
==> Installing Cask jetbrains-toolbox
==> Moving App 'JetBrains Toolbox.app' to '/Applications/JetBrains Toolbox.app'
🍺  jetbrains-toolbox was successfully installed!

あとは細々したものを入れてひとまず終わり。

Git

% brew install git
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/pcre2-10.36.big_sur.bottle.tar.gz
==> Downloading from https://d29vzk4ow07wi7.cloudfront.net/b2edbffaf229fc490843e83b43c4e12feab906fc34270d928c59cac74c6f4536?response-content-disposition=attachment%3Bfilename%3D%22pcre2-10.36.big_sur.bott
######################################################################## 100.0%
==> Downloading https://homebrew.bintray.com/bottles/git-2.30.0.big_sur.bottle.tar.gz
==> Downloading from https://d29vzk4ow07wi7.cloudfront.net/bd4dd57a4740df3c596377954d45fcf2b08db83f7d8853f5361db1d158a6bdb8?response-content-disposition=attachment%3Bfilename%3D%22git-2.30.0.big_sur.bottl
######################################################################## 100.0%
==> Installing dependencies for git: pcre2
==> Installing git dependency: pcre2
==> Pouring pcre2-10.36.big_sur.bottle.tar.gz
🍺  /usr/local/Cellar/pcre2/10.36: 230 files, 6.2MB
==> Installing git
==> Pouring git-2.30.0.big_sur.bottle.tar.gz
==> Caveats
The Tcl/Tk GUIs (e.g. gitk, git-gui) are now in the `git-gui` formula.

zsh completions and functions have been installed to:
  /usr/local/share/zsh/site-functions

Emacs Lisp files have been installed to:
  /usr/local/share/emacs/site-lisp/git
==> Summary
🍺  /usr/local/Cellar/git/2.30.0: 1,486 files, 40.5MB
==> Caveats
==> git
The Tcl/Tk GUIs (e.g. gitk, git-gui) are now in the `git-gui` formula.

zsh completions and functions have been installed to:
  /usr/local/share/zsh/site-functions

Emacs Lisp files have been installed to:
  /usr/local/share/emacs/site-lisp/git

zsh-syntax-highlighting

% brew install zsh-syntax-highlighting
==> Downloading https://homebrew.bintray.com/bottles/zsh-syntax-highlighting-0.7.1.big_sur.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring zsh-syntax-highlighting-0.7.1.big_sur.bottle.1.tar.gz
==> Caveats
To activate the syntax highlighting, add the following at the end of your .zshrc:
  source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

If you receive "highlighters directory not found" error message,
you may need to add the following to your .zshenv:
  export ZSH_HIGHLIGHT_HIGHLIGHTERS_DIR=/usr/local/share/zsh-syntax-highlighting/highlighters
==> Summary
🍺  /usr/local/Cellar/zsh-syntax-highlighting/0.7.1: 27 files, 164.6KB

% echo 'source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh' >> ~/.zshrc

zsh-autosuggestions

% brew install zsh-autosuggestions
==> Downloading https://github.com/zsh-users/zsh-autosuggestions/archive/v0.6.4.tar.gz
==> Downloading from https://codeload.github.com/zsh-users/zsh-autosuggestions/tar.gz/v0.6.4
######################################################################## 100.0%
==> Caveats
To activate the autosuggestions, add the following at the end of your .zshrc:

  source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh

You will also need to force reload of your .zshrc:

  source ~/.zshrc
==> Summary
🍺  /usr/local/Cellar/zsh-autosuggestions/0.6.4: 6 files, 43.7KB, built in 3 seconds

% echo 'source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh' >> ~/.zshrc

zsh-completions

brew install zsh-completions
Updating Homebrew...
==> Downloading https://github.com/zsh-users/zsh-completions/archive/0.32.0.tar.gz
==> Downloading from https://codeload.github.com/zsh-users/zsh-completions/tar.gz/0.32.0
            -=#=-   #    #     #
==> Caveats
To activate these completions, add the following to your .zshrc:

  if type brew &>/dev/null; then
    FPATH=$(brew --prefix)/share/zsh-completions:$FPATH

    autoload -Uz compinit
    compinit
  fi

You may also need to force rebuild `zcompdump`:

  rm -f ~/.zcompdump; compinit

Additionally, if you receive "zsh compinit: insecure directories" warnings when attempting
to load these completions, you may need to run this:

  chmod -R go-w '/usr/local/share/zsh'
==> Summary
🍺  /usr/local/Cellar/zsh-completions/0.32.0: 142 files, 1.1MB, built in 3 seconds

% cat << EOT >> ~/.zshrc
  if type brew &>/dev/null; then
    FPATH=$(brew --prefix)/share/zsh-completions:$FPATH

    autoload -Uz compinit
    compinit
  fi
EOT

% chmod 0755 /usr/local/share/zsh/site-functions
% chmod 0755 /usr/local/share
% chmod 0755 /usr/local/share/zsh

あとはnode.jsとかJVM系言語のパッケージマネージャを入れたいところだけど、このパソコンのパフォーマンスを考えた時に容易く鈍くなることが予想されるから必要に応じて入れていこうと思う。特にDockerを動かすのは厳しいかもしれない。本当はローカルを汚さずに開発したいのだけれどな。今のところ、もう一台M1チップ搭載のMacがあるけどそれは仕事用だから一緒に使うことは憚られる。かといって現時点でM1のMacを買おうとは思わないな。買うなら次のモデル、それよりも今のところ自作PCを作ることに興味がある。

本当であればシェルスクリプトやBrewfileでパッケージを管理するのが理想だけど今は余裕がない。次の環境構築では自動化できるように工夫しようと思う。

To comment

@Contents
閉じる