Brewfileを使ってMac移行時にコマンド1つで必要なアプリを全てインストールできるようにする|Homebrew Bundle

自分はHomebrew Caskを使ってアプリをインストールするようにしています。
また、インストール用のコマンドをメモしてDropbox上にまとめているので、Mac移行時はHomebrewをインストールしてコマンドを叩けば一気にインストールできます。
ただ、これだとApp Storeのアプリはインストールできなかったので別途インストールが必要です。
(そのためApp Storeのアプリは極力入れないようにしていました)
しかし、「Brewfile」を使えばApp Storeのアプリもインストールできますし、ファイル上にアプリを全部まとめてコマンドは1行で済むなど、かなりスマートになります。
ちなみに、Brewfileはファイルの名前で、機能名は「Homebrew Bundle」になります。
Brewfileの使い方
Homebrewが入っていればBrewfileは使えます。
いまの環境からBrewfileを生成する
自分の環境に入っているアプリと照らし合わせながら、1からファイルを作っていくのは面倒です。
下記コマンドを実行すれば、自動で現在の環境に合わせてBrewfileが生成されています。
brew bundle dump実行するとホームディレクトリのBrewfileが生成されています。
アルファベット順にキレイに整理されています。
Dropbox内に移動して、もとあったホームディレクトリにはシンボリックリンクを置いておくと、Macを移行しても必要なアプリがすぐにインストールできますね。
Brewfile内のルール
Brewfileにはいくつかルールがあるので、まとめます。
(自分で書く必要はないですが、どんな風に書かれているのか理解するため)
- 先頭に「
cask_args appdir: "/Applications"」という風に記述すると、インストーラを使ってインストールするアプリの保存場所を指定できる - Homebrewに登録されているコマンドラインツールは「
brew 'ツール名'」(brew installコマンドでインストールするもの) - Homebrewに登録されていないコマンドラインツールは「
tap 'ツール名'」(brew tapコマンドでインストールするもの) - 通常のアプリケーションは「
cask 'アプリ名'」(Homebrew Caskを使ってインストールするもの) - App Storeでインストールするアプリは「
mas 'アプリ名' id:○○」
ちなみにbrew caskはHomebrewをインストールすれば自動で使えるようになりますが、masに関しては別途「mas-cli」をインストールする必要があります。
Brewfileを実行する
Mac移行時はホームディレクトリにBrewfileを置いて下記コマンドを実行します。
brew bundleいままでMagnetをいちいちインストールするのが面倒だったのですが、その必要もなくなりました。
Brewfileにいまの環境を合わせる
Brewfileは言ってしまえば「いまの自分のMacにインストールされている全てのコマンドラインツール・アプリの一覧ファイル」になります。
一覧を見ていて「このアプリ使っていないな」となったら、Brewfileから該当の行を削除して、下記コマンドを実行します。
するとBrewfileに合わせて削除した行のコマンドラインツール・アプリをアンインストールしてくれます。
brew bundle cleanupいまのMac環境はとりあえずここを見ればよくなるので、これはかなり便利ですね。


BetterSnapToolでリサイズ前のウインドウサイズを復元する方法・復元しない方法
MacでYouTubeの動画再生速度を4倍速にする方法
Path Finder 9.0.4からツールバーにカスタムファイルを追加できるように!ツールバーがさらに便利になる
JavaScriptパッケージマネージャーをnpmからYarnへ移行しました
MacWinZipperでWindowsでも文字化けしないZipフォルダの作り方
Macで毎回使うアプリやフォルダを一気に開いて、すばやく作業環境を整えられる「Workspaces」
Macで画像の一括リサイズを行いたいときは、プレビュー.appを使う方法が手軽!
Alfred Workflowで、AppleScriptを使ってFinderとPath Finderの現在開いているパスを取得する方法
Path Finderでのカラム表示とリスト表示の切り替え
ショートカットキーを考える時に参考となる英単語一覧
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
WindowsでいうところのバッチファイルをMacで作成する方法
ブログに見出しを設置できるjQueryプラグイン「TOC | jQuery Table of Contents」
Visual Studio CodeをMarkdownエディターとして使用する
サイト運営には不可欠!!自分のブログ用のFacebookPage作ろう。
売れるウェブサイトは戦略を映している【CSS Nite in Kobe】
Figmaで使っている色やフォントなどを一括変更する「Batch Styler」
GUIコンパイラのPreprosを使ってSassのコンパイルを行う
知っているとちょっと便利なMacの小技 #1日1Tips – 2019年8月
ボディスキャン瞑想の入門に使える音声ガイドまとめ
Gitで最初に設定しておくユーザー名とメールアドレスのグローバル設定