ありがたいことに会社から新しく Mac M1 を支給いただけることになったので、古いPCから新しいPCへ開発環境を移行してみました。
ここではバイナリなどのデータは対象外として、開発ツールのみに焦点を当てて話していきます。
Terminalのテーマ
実は Export, Inport が可能です。
なので今のPCでお気に入りのテーマを書き出し、新しいPCでお気に入りのテーマを読み込めばいけます。
ただしフォント周りについては注意です(自分は yuru7/HackGen: Hack と源柔ゴシックを合成したプログラミングフォント 白源 (はくげん/HackGen) をよく使っているので、初手で必ず入れるようにしています)
Brewでインストールしたもの
こちらの記事を参考にしました。
Brewfile で Homebrew のライブラリを管理しよう! - kakakakakku blog
まず今のPCで brew bundle dump
を実行し、 Brewfile
を生成します。
その後、何らかの方法で Brewfile
を新しいPCに移行し、 Brewfile
が配置されたパスで brew bundle
を実行します。
そうすると Brewfile
をもとに新しいPCに開発用ツールがダウンロードされます
各種設定値
gitのコンフィグなどの移行についてです。
こちらは会社で使っている GitHub Enterprise の個人プライベートリポジトリで元々管理していたので、新しいPCでそのリポジトリだけ持ってきたところ、楽にできました。
鍵の移行は難しそうな感じだったので、鍵は再生成して GitHub Enterprise に登録して ghq get 対象リポジトリ
しています(ssh, gpg共に)。
管理対象としていたのは下記でした。
- .zshrc
- .vimrc
- .tool-versions
- asdf 用のファイル
- .tmux.conf
- .p10k.zsh
- romkatv/powerlevel10k: A Zsh theme を使っているため
- .config/gh 配下
- .config/git 配下
- config, ignore, .commit_template など
git の config については gpg キーの再発行を行なったので、 config ファイル中のキーの差し替えを行いました。
VSCode extention
How can you export the Visual Studio Code extension list? - Stack Overflow
を参考に下記の手順としました。
- 今のPCで
code --list-extensions > extensions.list
を実行し、拡張のリストを作成する - 何らかの方法で
extensions.list
を新しいPCに入れる - 新しいPCで
cat vscode-extensions.list | xargs -L 1 code --install-extension
を実行する
これによってリストベースで VSCode extention がインストールされます。
なお、何かエラーになったものもあった記憶なので、念のため全て入ったかどうかは確認したほうがいいかもしれません。
(メモだけ残してたのでスクショ撮ってませんでした)
通信系でうまくいかない場合は下記設定も有効かもしれません。
proxy - unable to get local issuer certificate vscode - Stack Overflow
他、手作業系
- .zshrc の一部スクリプトがおかしい問題
- パスがおかしくなっていたなど
-
ghq
で必要なリポジトリを引っ張ってくる- (必要でないものもいくつか混じっていたのでついでに整理)
- tmuxプラグインをインストールする
- 必要なファイルをいろいろ持ってくる
- DockerなどGUIで提供されているツールのインストール
- 仕方なし
これらをやって1日ちょっとで開発しているプロダクトが動き、開発できる状態となりました。
まとめ
PCや開発環境の移行は何度かやっているのですが、毎回苦労するのでまとめてみました。
特にVSCode extentionの移行ってこんなに楽にできるんですね(なんか同期するとかもあった気がするんですが、調べていないので活用できていません)。
本当は ansible みたいなもので apply するだけで使えるとかも理想的だなーとは思っていますが、毎回面倒になって完遂できていません。
次回 Mac を移行するタイミングがあれば検討してみようと思います。