個人的 M1 mac 開発環境状況 2021/12/02 更新
昨日 M1 mac が届いたので早速仕事に使える状況までセットアップしました。
できるだけ Intel アーキテクチャで動くものは入れたくない
開発系
開発環境とかエディタとか
Visual Studio Code
Electron が一応対応したっぽいので VScode insider のダウンロードページに Experimental 版としてdarwin arm native で動くバージョンが配布されています。
https://code.visualstudio.com/insiders/
しかし設定の同期で拡張機能を入れたらクラッシュ、必要最低限にしてもちょいちょいクラッシュするので stable の VScode を Rosetta 2 を通して使っています。
さすがに起動時の遅さが気になるのでやっぱ Experimental 版をメインに使ってます。クラッシュ頻度がなぜか減ったのでたまのクラッシュと付き合っていく
2020/11/28 追記: 2回くらい更新が入ってクラッシュはなくなったイメージ
2021/12 追記: 対応完了
Android Studio
~~Rosetta 2 で普通にインストール。エミュレーターが動かないので実行は実機
対応待ち
JBR support for new Apple ARM chips
ちなみに日本語化プラグインも大丈夫だった。
ただ既に対応は進んでおり、JetBtains によるとほぼすべての製品をユニバーサルバイナリに再コンパイルする作業を終え、今月中にアップデートをリリースする予定とのこと
モバイルエンジニアとしては Android emulator がどうなるか気になるところですね。
すでに Qemu が動いてるのでそのうち? ~~
2021/12 追記:対応完了 普通にAndroid Studioをダウンロードするとx86版になるのでDownload options をクリックして Arm 版を落とそう。
download
Flutter
stable channel で普通に動く。助かる。
cocoapods に問題があったが下記コマンドを実行すれば普通に動くようになる。(pod install がちょっと長いかな?)
arch -x86_64 sudo gem install ffi
詳しくは
Developing with Flutter on Apple Silicon
シミュレーターで動かせないみたいに書いてあるがビルドできた。simulator も x86 から arm になってパフォーマンス上がったっぽい
2021/12月 追記:Dart SDKはARMサポート完了。Flutterに統合されるのはまだ先
Homebrew
/opt/homebrew にインストールしろって書いてあるのでそうした。
https://docs.brew.sh/Installation
arm 版 Nodejs が brew 経由だとインストールできなかったので使ってない。
Node.js
上記の通り Rosetta 2 を使わずインストールした brew ではダメだったので
nvm (Node Version Manager)をインストール、nvm ならビルド済みのバイナリがない場合ソースをダウンロードしてきてコンパイルしてくれる。
https://github.com/nvm-sh/nvm
Macports が必要
https://www.macports.org/install.php
sudo port install git curl openssl automake
してから
nvm install v15
する。
コンパイルが始まり。正常にビルドできたらしいので Angular の環境構築してみた。
node が Apple アーキテクチャで実行されているのがわかる。
Version 15 以下は M1 未対応
Golang
Go 詳しくないので darwin-amd64.pkg をダウンロードしてインストールした。
https://golang.org/dl/
Rosetta 2 実行なので普通に動いてる
2021/12 追記: darwin-arm64.pkg がダウンロードできるようになっている
Google Cloud Platform
Firebase Cli も gcloud も動いてGCFやHostingにデプロイできた。
Docker
対応した
https://docs.docker.com/desktop/mac/apple-silicon/
ツールとか
Chrome
Chrome は正式に M1 対応版がダウンロードできる。特に問題はない。
Slack
ベータ版をインストールしたら Apple アーキテクチャで動いてた。
https://slack.com/intl/ja-jp/beta/mac
Discord
うまく動かなかったのでパブリックβテスト版をインストールしたら動いた。
けど Rosetta 2 で実行されている。
2021/12 追記: @tweet
Karabiner-Elements
動く。darwin arm ネイティブ対応。
Alfred
Rosetta 2 で実行。問題なし
universal ビルド版が配布されていたので入れ替えた
https://www.alfredapp.com/universal/
Synergy
Mac ホストで動作確認、Intel アーキテクチャ
Google 日本語入力
開発版を入れてみたが Intel アーキテクチャで動いている
なぜか TweetDeck 上で日本語に切り替わらなかったので使うのをやめた。
Display Menu
App Store からのインストールだが Intel アーキテクチャで動いている。
解像度の変更は問題なし。ドットバイドット表示も問題なし。
なぜ macOS は標準でネイティブ解像度表示ができないのか
TweetDeck
AppStore版、Apple アーキテクチャ、なんでかはわからない。
EOS Webcam Utility
カメラが認識されない。
カメラの問題だったようで色々抜き差ししてたら動きました!!!
Run Cat
動いた。けどCPU使用率を数字で表示したら落ちた。
おまけ、Dinplaylinkを使用した2画面出力
よろしければTwitterのフォローお願いします。
Discussion
情報助かります!
M1の購入を考えてるので情報助かります.dockerさえ来てくれれば..