M1 MacBook Air で .NET 5 を使う
本記事執筆時点で .NET 5 は Apple Silicon に対応していない*1ので、利用する場合は x64 版を Rosetta2 で変換した上で使うことになります。
インストール方法
手動で導入したい場合はバイナリを配置してPATHの指定、になるのかな。
自分は Linux 系に疎いのでとりあえずインストーラーで雑にインストール。バージョンは現時点で最新の5.0.101。
動かしてみる
まずインストールできていることを確認するためにターミナルを起動して dotnet コマンドを叩いてみる
% dotnet --version 5.0.101
正常にインストールできてそう。
後は Apple Silicon 上で動くかどうかを軽く確認したいのでコンソールアプリケーションを作ってみる。
% dotnet new console -n test なんやかんや出力 % dotnet run Hello World!
問題なく動きました。
ビルド結果に対して Rosetta2 の変換がかまされるんで実行結果が表示されるまでには流石に多少時間がかかりますね。
そこそこのプロジェクトサイズになった時にどうなるかもみてみたいので今度別途試してみましょうか。
Windows ユーザーの私が M1 MacBook Air を買って最初にしたこと
Big Sur になって起動音が復活したのが邪魔なのでとりあえず排除。
システム環境設定 > サウンド 起動時にサウンドを再生のチェックを外す
普段Windowsを使用していてキー長押し時の挙動に違和感しかないので調整
システム環境設定 > キーボード キーのリピートとリピート入力開始までの時間を調整。 ファンクションキー押下時の挙動を変更。
<
トラックパッドをタップしたらクリック扱いになるよう変更
システム環境設定 > トラックパッド タップでクリックにチェックを入れる
Xcode をインストール
ARM 版 Google Chrome をインストール & Dock に追加
Safari を Dock から削除*1
とりあえず時間がないのでこれだけやった。
後は .NET 5 入れたりとかしたいけど .NET 5 の ARM 版ってあるんだったっけ?ってところから。
追記
外観モードは最初ダークモードにしてたけど標準外のツールで文字が読めなくなったりしたのでライトモードにした。
変える機構を用意してくれるだけでいいのになんで勝手にOS側で独善的に変えてしまうのか。
*1:async/await が使えないレガシーブラウザなので
M1 MacBook Air(2020) に homebrew をインストールする
公式サイトを見に行くと M1 Mac でのインストール方法が書かれている。
これによると ARM な Mac では /opt/homebrew
にインストールすることが推奨されている。
そこで以下のコマンドを実行してインストールを行なった
cd /opt sudo mkdir homebrew sudo chown ${USER}:staff homebrew curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew
これだけだとPATHが通っておらず使えないのでPATHを通す。
echo /opt/homebrew/bin > /etc/paths.d/homebrew