💻

Apple Silicon(M1) MacBook Airの環境構築メモ

2021/02/07に公開

M1 MacBook Airを購入したのでセットアップしました

M1 MacBook Air買ったので、Zennのスクラップ機能を使いながらセットアップしました。Zennのスクラップ機能は作業メモ的に使うの本当に便利ですね。

https://zenn.dev/karaage0703/scraps/fb3a766e6b3283

一通りセットアップできたので、やったことを記事にまとめます。

完全に自分用のメモですが、対象としては、ネットサーフィンしたり、ブログ書いたり、ちょっとPythonで機械学習・ディープラーニングするぞーってくらいのファッションエンジニアあたりです。そうです私です。

特にこだわりなく、なるべく素直にセットアップしています。フロントエンドとか、インフラとか全然分からないので、その辺りの人だとあんまり参考にならないと思います。

ハードウェア関係(周辺機器)のセットアップに関しては、以下のブログ記事参照ください。

https://karaage.hatenadiary.jp/entry/2021/02/12/073000

起動直後にやったこと

起動してまずは以下実施しました。

  • Apple IDログイン
  • Appアプリストアで1Passwordインストール
  • Google Chrome(Appleプロセッサ搭載のMacを選択インストール)
  • Chrome拡張に1Password追加(1Password XはTouch ID未対応なので注意)
  • Microsoft 「To Do」追加(ここでRosetta2も合わせてインストール)

パスワード管理アプリの1Passwordとタスク管理ソフトの「To Do」は自分にとって最重要ソフトなので真っ先にインストールします。

詳細は以下記事参照ください。

https://karaage.hatenadiary.jp/entry/2020/12/14/073000

https://karaage.hatenadiary.jp/entry/2020/01/08/073000

1Passwordさえインストールすれば、パスワード入力が楽になるので、おススメです。

armのM1 Macでx86系のアプリを動かすエミュレータ的役割を果たす「Rosetta2」は「To Do」を入れるタイミングでインストールされました。

初期設定

システム環境設定で設定する項目です。

キーボード入力

ライブ変換苦手なのでオフします。「キーボード」→「入力ソース」でチェックボックスのチェックを外します。

共有

「共有」でVNCやSSHで外からアクセスできるようにしておきます。自分にとっては基礎設定です。

ソフトウェアのインストール

Homebrewのセットアップ

ソフトウェア管理ソフトの「Homebrew」を入れます。Homebrewに関しては以下記事参照ください。

https://karaage.hatenadiary.jp/entry/2016/05/13/073000

Homebrewのセットアップに関しては、公式のサイトと以下記事を参考にしました。

https://zenn.dev/ress/articles/069baf1c305523dfca3d

HomebrewのApple Silicon対応状況は、急激にアップデート進んでいて、日々状況が変わっているようです(セットアップ途中でも、変更があったりして、Zennでコメントもらったりしました)。

また、M1対応が進んだら修正したいと思います。

Homebrewをセットアップすると、一緒にGitもインストールされます。

XCodeのコマンドラインツールインストール

この後のソフトのセットアップに必要になるのでインストールします。以下コマンド実行するだけです。

$ xcode-select --install

スクリプトで一括設定・一括インストール

色々前準備が整ったので、いよいよスクリプトで一括設定やインストールをおこないます。以下の自前のリポジトリを使います。

https://github.com/karaage0703/mac-dotfiles

使い方はREADMEに書いてありますが、以下コマンドを実行するだけです。

$ cd && git clone https://github.com/karaage0703/mac-dotfiles.git
$ cd ~/mac-dotfiles
$ ./defaults.sh
$ ./homebrew.sh

設定の内容を簡単に紹介しておきます。自分用の設定なので、私以外の人は、スクリプトの中を見ながら取捨選択して、必要なコマンドだけ実行するなり、自分用のスクリプトを作ってもらうのが良いと思います。

defaults.shで設定される内容

以下が設定されます。詳細説明は割愛しますので、詳細知りたい人は、スクリプトに記載されているコマンド名で検索してください。

  • 更新の自動チェックをOff
  • Finderの表示カスタマイズ(下のバーにカレントディレクトリを表示)
  • スクリーンショットのファイル名から日本語を削除
  • キーを押しっぱなしで連続入力(VS Code Vimモードでの連続入力対応含む)

homebrew.shでインストールされるアプリ

以下のソフトがインストールされます。

  • pyenv, pyenv-virtualenv
  • git
  • wget
  • clipy
  • imageoptim
  • raspberry-pi-imager
  • slack
  • skitch
  • iterm2
  • etc...

.zshrcファイル

まだ暫定版ですが、リポジトリに置いてあるので好きに使用ください。

ソフトウェアの設定

Gitのセットアップ

Gitをセットアップします。パスワード入力を省略するために、以下実行します。

$ git config --global credential.helper osxkeychain

これで、初回のみパスワード(2FA認証していればアクセストークン)を登録すれば、入力すればキーチェーンに登録されて、以降の入力が不要となります。

設定消したい場合は、以下コマンドを実行して、設定されているファイルのパスを探して書き換えると確実です。参照:Macでgitのcredential.helper=osxkeychainにアアアアアッてなって削除した話

$ git config --show-origin --get credential.helper

もしくは、少しセキュア度合いでは劣りますが、パスワード省略するための手軽な方法として~/.netrcというファイルに以下のように記載する方法もあります。usernameaccesstokenには、自分のGitHubのユーザー名とアクセストークンを入れてください。

machine github.com
login username
password accesstoken

続いて、ユーザー名とメールアドレスを設定します(ユーザー名とメールアドレスは自分のものを入力してくださいね(はぁと)。

$ git config --global user.name "karaage umauma"
$ git config --global user.email "karaage@umauma.com"

設定を確認したいときは以下コマンドを実行しましょう。

$ git config --list

複数のGitアカウントを切り替えたい場合は以下記事が参考になります。
https://qiita.com/shungo_m/items/7d8e67391eea89afc896

ブランチ名の補完は、以下を参考にセットアップします。

https://qiita.com/mikan3rd/items/d41a8ca26523f950ea9d

https://qiita.com/ayihis@github/items/88f627b2566d6341a741

その他のGit/GitHubのTIPSは以下記事参照ください。

https://karaage.hatenadiary.jp/entry/2016/09/05/073000

VS Codeエディタと拡張機能のインストール

現状は、Insider版がArm対応となるので、Homebrewでは入れずに、手動でサイトからダウンロードします。ラズパイと同じですね。以下のZennの本にセットアップ方法追記しました。

https://zenn.dev/karaage0703/books/80b6999d429abc8051bb

上記本を参考に、VS Codeエディタをインストールして、拡張機能をスクリプトで一括インストールします。そのうち正式対応したら、Homebrewでインストールできるようになると思います。

Python/ディープラーニング関係

TensorFlow for macOS

ディープラーニング(TensorFlow)を使いたい人は、以下記事参照ください。
https://zenn.dev/karaage0703/articles/0ab9e654cfb0ec

現状は、M1対応したTensorFlowを使いたい場合、pyenvなどは入れない方が良いです。

Python仮想環境

pyenv, pyenv-virtualenvに関しては、基本的に以下の記事の通りインストールできました。

https://karaage.hatenadiary.jp/entry/2016/04/04/073000

ただ、現状x86でRosetta2経由で動かすのが無難です。具体的にはターミナルで以下実行してRosetta2経由でシェルを動かした上で、Pythonをインストールしたり動かしたりします。

$ arch -x86_64 zsh

Pythonは3.8.7でscipy, numpy, matplotlib, sklearnあたりは動いています。

Arduinoインストール

M5Stackなどを使うためにインストールします。以下あたりの記事を参照ください。

https://karaage.hatenadiary.jp/entry/2018/04/16/073000

https://intellectualcuriosity.hatenablog.com/entry/2021/01/04/223523

https://qiita.com/karaage0703/items/5c1a1d87ff7452ba3d9a

日本語変換がめちゃくちゃ遅いとき

こちらを参考にしてください。画面はめちゃくちゃダサくなりますが、速くなります。

https://kiririmode.hatenablog.jp/entry/20150907/1441551600

まとめ

M1 MacBook Airセットアップ記事でした。M1 MacBook良いですね!Armということで、環境構築手間取りそうと心配してましたが、なんとか1日でセットアップすることができました。

今のところ、自分が必須と思うアプリが動かなくて困るとかはないですし、速いし、バッテリーも持つしといいことづくめですね。セットアップ方法で、もっとこうした方がよいとか、間違っているところあればコメントいただけましたら幸いです。

参考リンク

https://oku.edu.mie-u.ac.jp/~okumura/macosx/m1.html

https://tech.tabechoku.com/entry/2021/01/15/150103

https://qiita.com/tatsuyai713/items/04c069d0389cfd7bee59

https://qiita.com/tatsuyai713/items/aca7b67ac0092a58ccd3

https://zenn.dev/hinastory/articles/71983c4ac8aa2d

https://note.com/npaka/n/n9df664263308

https://zenn.dev/ress/articles/069baf1c305523dfca3d

https://zenn.dev/nakaatsu/articles/7133e16a0f787c

https://qiita.com/Y_uuu/items/db274e2d3eba3cd5c0dd

https://zenn.dev/miyasic/articles/81f5fe3e3b060c

関連記事

https://karaage.hatenadiary.jp/entry/2017/08/18/073000

https://qiita.com/karaage0703/items/705f1b750c486f00d554

変更履歴

  • 2024/09/26 Gitに関して追記
  • 2024/02/02 変換が遅くなったときに関して追記
  • 2021/03/14 TensorFlow関係のセットアップに関してリンク追記・Gitのブランチ名補完に関して追記
  • 2021/02/12 ハードウェアのセットアップに関して追記・微修正
  • 2021/02/08 Gitの設定に関して追記

Discussion