[2022 M2 Macbook Air (mem24GB) ] 色んな開発言語で開発してるエンジニアのゼロからの環境構築
僕は普段、色んな開発言語で開発しています。
そんな僕がこの前、2020 の macbook pro から M2 macbook air に乗り換えました。
ここ数年はずっと、環境構築についてはアシスタント使って引き継いで構築してましたが、今回初めての arm 系チップへの移行ということで今までの開発環境をすべて捨てて、ゼロから構築してみました。
長いのでやってみての結論を先に
ゼロからなのでいつもより頭も使い、時間はかかりましたが、結果として新しい開発ツールも構築もキャッチアップできてめちゃくちゃ良かったです。
定期的にオススメ!
OS アップデート
ナニハトモアレ、起動後、まずはシステム環境設定から os のアップデートをしましょう。
もしかすると、バージョンが古くなっていてセキュリティ的に脆弱なこともあるかもなので。。。
xcode
これを入れないと始まらない xcode ですね。
xcode は appstore からインストールしましょう。
homebrew
基本の homebrew を入れましょう。
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
環境も設定します。
$ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/hoge
$ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/hoge/.zprofile
zinit
今まで使っていた ohmyzsh にさよならしてこれを機に気になっていた zinit に移行しました。
ohmyzsh 。。。なんであんなに時間かけてたんだろ・・・
$ bash -c "$(curl --fail --show-error --silent --location https://raw.githubusercontent.com/zdharma-continuum/zinit/HEAD/scripts/install.sh)"
$ source ~/.zshrc
$ zinit self-update
カスタマイズ。
(この辺はお好みで)
$ zinit ice pick"async.zsh" src"pure.zsh"
$ zinit light sindresorhus/pure
starship も入れてみます。
$ brew install starship
peco も入れておきます。
$ brew install peco
rosetta
なんかの時の為に一応 rosetta も入れておきます。
(ただ、未だにあまり意味会った気がないので、お好みで)
$ sudo softwareupdate --install-rosetta
anyenv
僕は結構、いろんな言語を触る技術者なので xxxenv が大変なことになってました。
なので、これもこの機に anyenv に移行してみました。
$ brew install anyenv
$ anyenv install --init
$ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zshrc
$ echo 'eval "$(anyenv init -)"' >> ~/.zshrc
アップデート。
$ git clone https://github.com/znz/anyenv-update.git ~/.anyenv/plugins/anyenv-update
$ anyenv update
各種 env をインストールします。
これでひとまず安心(^^;
$ anyenv install nodenv
$ anyenv install pyenv
$ anyenv install rbenv
node の設定。
$ nodenv install 16.16.0
$ nodenv global 16.16.0
pyenv の設定。
$ pyenv install 3.10.6
$ pyenv global 3.10.6
rbenv の設定。
$ brew list ruby-build
$ rbenv install 3.1.2
$ rbenv global 3.1.2
node に python に ruby... 何をやってるんだ・・いったい僕は・・ww
便利な世の中ですね。
各種アプリのインストール
ほぼほぼ開発環境できてきたので、一旦この辺で必要なアプリを入れていきます。
$ brew install google-chrome --cask
$ brew install --cask visual-studio-code
$ brew install --cask deepl
$ brew install --cask macdown
$ brew install skype
$ brew install --cask docker
$ brew install docker-compose
$ brew install wget
$ brew install iterm2
$ brew install --cask android-studio
$ brew install mas
$ mas install 539883307 #line
$ mas install 425955336 #slack
flutter/dart
ウチの事業のメイン開発は flutter/dart なので当然インストールしていきます。
ウチは fvm を使っているのでインストールします。
$ brew tap dart-lang/dart
$ brew install dart
$ echo 'export PATH="$PATH:$HOME/.pub-cache/bin"' >> ~/.zshrc
$ source ~/.zshrc
$ pub global activate fvm
$ fvm install 3.0.3
$ fvm use 3.0.3
$ fvm flutter --version
Flutter 3.0.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 676cefaaff (2 months ago) • 2022-06-22 11:34:49 -0700
Engine • revision ffe7b86a1e
Tools • Dart 2.17.5 • DevTools 2.12.2
とはいえ、 fvm flutter doctor で環境が不十分なのでセットアップ。
$ fvm flutter doctor
$ fvm flutter doctor --android-licenses
$ sudo xcodebuild -license
$ sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
$ sudo xcodebuild -runFirstLaunch
あ、 cocoapods 入れないと。
$ brew install cocoapods
これで無事にウチの事業のビルドができるようになりました。
$ fvm flutter doctor
$ fvm flutter clean
$ fvm flutter pub get
$ fvm flutter packages pub run build_runner build --delete-conflicting-outputs
あとはプロジェクト配下で開いた vs code でビルド。
無事に起動しました!
rust
最近は near とかの nft 周りも実装とかしてるので solidity だけでなく rust もインストールします。
というか、 c++ 好きな僕にとって rust 超良いですよね。好きです!もっと勉強したい。
$ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
$ rustup --version
rustup 1.25.1 (bb60b1e89 2022-07-12)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: The currently active `rustc` version is `rustc 1.63.0 (4b91a6ea7 2022-08-08)`
$ cargo --version
cargo 1.63.0 (fd9c4297c 2022-07-01)
最後に!
ざっと勢いに任せて構築で行った作業を書き出してみたので、抜けもあると思うので何かしら問題あればご指摘ください。
というぐあいなので、各細かな設定などはより詳細が記載されている記事を探して参照されてください。
そして、冒頭とは別の結論を書くと、ほんとに m2 mba は最高でございます!
以上です。
誰かの助けになれば幸いです。
Discussion