M1 MacBook Proの初期設定

# 概要

久しぶりにMacを買ったので作業ログを残しておく。

## 基本設定

### スタックを使用

- `デスクトップで右クリック` => `スタックを使用`

### ロック画面

- `設定` => `ロック画面`
    - `使用していない場合はスクリーンセーバーを開始` => `しない`

![スクリーンショット 2023-01-20 20.10.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/ff6dcb2b-765b-47f9-8cf2-78062e5b51a6.png)


### キーボード

- `設定` => `キーボード`
    - `キーのリピート速度` => `速い`
    - `リピート入力認識までの時間` => `短い`

![スクリーンショット 2023-01-20 20.14.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/c81fe63b-26e6-8ad7-8d77-a3024da8f3d3.png)

### ホットコーナー

マウスを角に持っていった際にデスクトップが表示されるので地味に便利。

- `設定` => `デスクトップとDock`
    - `ホットコーナー` => `左上と右上をデスクトップ`

![スクリーンショット 2023-01-20 20.18.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/e19ab7fd-640f-1b5f-7b9e-69e131df2b6e.png)

### マウス

- `設定` => `マウス` => `軌跡の速さ`

![スクリーンショット 2023-01-20 20.21.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/70282ac1-d5df-5d94-bcf9-1fa34be082f1.png)

### Night Shift

日の出から日の入りまでほのかに赤みがかる設定にしている。

- `設定` => `ディスプレイ` => `Night Shift`

![スクリーンショット 2023-04-26 0.41.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/e2960112-ffa6-3ab5-b08e-fff76926caa9.png)
![スクリーンショット 2023-04-26 0.41.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/3ffb80e8-b28c-9410-3353-da73a05d64c3.png)


### Karabiner-Elements

- [Karabiner-Elements](https://karabiner-elements.pqrs.org/) をインストール
- 私はMicrosoftのErgonomicキーボードを使っているのでこんな感じ
- Macデフォルトのキー置き換えは利用しないようにしている

![スクリーンショット 2023-04-26 0.16.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/26a4e9e7-937b-df67-81ea-014f6586794b.png)

### Chrome

デフォルトブラウザをChromeに変更
https://www.google.com/intl/ja/chrome/gsem/download/

## 少し専門的な設定

### Rosetta

Astahで必要

### Command Line Developer Tools

iTerm2で必要

### iTerm2

- フルディスクアクセスを許可
- icebergテーマを適用

```
curl -O https://raw.githubusercontent.com/Arc0re/Iceberg-iTerm2/master/iceberg.itermcolors
```

### Oh-My-Zsh

```sh
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
```

- autosuggestions

私の場合は、fzfとasdfも設定しているが、これはcoreに含まれているため特にライブラリの取得は不要。
(fzfのみbrewでインストールが必要だが、この後に出てくる)

```shell-session
$ git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
$ vim .zshrc
```

```~/.zshrc
...
plugins=(git fzf asdf zsh-autosuggestions)
...
```

### astah* professional

UMLの各種図を書くために利用する。
https://astah.change-vision.com/ja/product/astah-professional.html

### 1Password

これがないと生きていけないくらい最高のツール。
https://1password.com/jp/

sshのキーまで管理してくれるので、commitからpushまでスピーディー。

### Slack

なんだかんだで利用している。
https://slack.com/intl/ja-jp/downloads/mac

### Discord

ゲーム関連の友人たちと利用している。
https://discord.com/download

### AppCleaner

言わずと知れた老舗ソフト。
App Store以外からインストールしたソフトをアンインストールする際はこれの利用をお薦めるする。
関連するディレクトリまで検索して一緒に削除してくれる。

https://freemacsoft.net/appcleaner/

### Raycast

多機能なランチャーアプリ。
だが、個人としては clip board history としてのみ利用している。Alt２連打で呼び出しの設定で利用。

### Homebrew

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

### Docker Desktop

https://www.docker.com/products/docker-desktop/

== ここから　解決済みっぽいので無視でOK ==
~~2023.1.22のタイミングではDocker Desktop起動時に毎回認証が必要になる問題が発生しており、一手間必要~~
~~see: https://github.com/docker/for-mac/issues/6634~~

```sh
$ vim ~/Library/Group\ Containers/group.com.docker/settings.json
"authDeclinedInstallSettings": true
```
== ここまで 解決済みっぽいので無視でOK ==

### asdf

言語のバージョン管理ソフトウェア、anyenvと似たようなもの。最近はasdfがナウイらしい。

```sh
$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.11.1
$ vim ~/.zshrc
```

```~/.zshrc
plugins=(git fzf asdf zsh-autosuggestions)
```

### Ruby

asdfを使って入れておく、ruby使いなので。

```sh
$ asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby.git
$ asdf install ruby latest
```

### fzf

Terminalでコマンドの検索履歴をもっと手軽に実行できる。

```sh
$ brew install fzf
$ vim ~/.zshrc
$ vim ~/.zprofile
```

```~/.zshrc
plugins=(git zsh-autosuggestions asdf fzf)
```

```~/.zprofile
...
# fzf options
export FZF_DEFAULT_OPTS='--height 100% --reverse'
```

### Visual Studio Code

Devcontainer使いたいのでとりあえずインストール。

https://code.visualstudio.com/

### ghq

リポジトリ管理ツール

```shell-session
$ brew install ghq
```

下記のようなディレクトリ構造でcloneしてくれる、forkしたら自分のディレクトリ配下になるのでわかりやすい。

```shell-session
$ ghq get git@github.com:rails/rails.git
$ ls /Users/yourname/ghq/github.com/rails/
```

### Sequel Ace

DBの中身をGUIで表示したい人向け、Sequel ProがMySQL8系に対応しないのでこちらへ乗り換え。

### Miro

オンラインホワイトボードはMiroが最高、iPad版はApple Pencil対応しているかつWebとの同時ログイン問題なし。

https://miro.com/

家のネットワーク構成図もこちらを利用して記載した、こんな感じの図がサクッと作れる。
![スクリーンショット 2023-04-26 0.38.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/395131/d4684340-7818-7a41-66ba-6fe9163cf401.png)

### IntelliJ IDEA

最近、Javaを書く機会が増えたので利用中、コンパイ〜デバッグまでほとんど無設定で完了できる優れもの。
RubyMineはよく利用していた。

https://www.jetbrains.com/ja-jp/idea/

## 参考リンク

https://zenn.dev/toono_f/articles/fa4d68857b7d36