671 文字
3 分
brew caskに登録されていないアプリを追加する
brew caskに登録されていないアプリをbrew caskで管理したいと思って調べました。
インストールしたいアプリの情報を記載したrubyファイルを作り、brew caskのライブラリに入れておくだけです。
今回の例では「cooViewer.app」を管理してみようと思います。
ファイル名規則を確認する
brew caskにはアプリ名からファイル名規則を提案してくれるgenerate_cask_token
コマンドが用意されています。
"$(brew --repository)/Library/Taps/homebrew/homebrew-cask/developer/bin/generate_cask_token" 'cooViewer' Proposed token: cooviewer Proposed file name: cooviewer.rb Cask Header Line: cask 'cooviewer' do
コマンドからファイルを作る
同様にファイルを作成するcreate
コマンドもあります。
brew cask create cooviewer
そうするとファイルが自動的に作成されvimで開かれます。
cask 'cooviewer' do version '' sha256 '' url "https://" name '' homepage '' app '' end
埋まっていない情報を埋めていきます。
cask 'cooviewer' do version '1.2b25' sha256 'b085124c540ce6e7cf2f8dbf1c2a0dc7ae47133d9afbc73357ac98ea168cf09e' url "https://github.com/coo-ona/cooViewer/releases/download/#{version}/cooViewer.zip" name 'cooViewer' homepage 'https://coo-ona.github.io/cooViewer/' app 'cooViewer/cooViewer.app' end
zipやdmgを展開した時にアプリが入っているだけならばapp
の欄にアプリ名を書くだけで済みますが、今回の例ではフォルダの中に入っていたので上記のような書き方になりました。
SHA-256(ハッシュ関数)を確認
sha256
部分はダウンロードするファイルのハッシュ値を記述します。
以下のようなコマンドで取得可能。
shasum -a 256 ファイル名
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/Casks/cooviewer.rb
にファイルが作られました。
あとは普段と同じようにbrew cask install
するだけ。
ここまででインストールはできます。
以下は新しい環境に移行したときなどでも使えるようにするための設定。
新しい環境に移行しても使えるようにしておく
方法は大きく分けて二つある。
- 公式にPull RequestしてMergeして貰う(王道)
- 自分専用のtapを作り、githubにあげて自分だけで運用する(邪道)
今回は邪道を選びます。
githubに適当な名前のレポジトリを作る=自分専用のTAP
- レポジトリの先頭が
homebrew-
で始まらなければならない homebrew-hogecask
とかがいいんじゃないか- できたレポジトリ内にCasksフォルダを作ってrubyファイルを入れる
- こうして準備しておけば
brew tap hoge/homebrew-hogecask
とかで設定を引き継げる
参考にしたサイト
brew cask にアプリがなかったら追加しよう - Qiita
公式リポジトリのアプリが増えるとうれしいので、かんたんな追加方法をまとめました。下記のアプリを実際に登録申請してみました。ACTPrinter: Virtual Printerお気づきの点など…

Homebrew Caskのアップデート等
先日書いたとおり1 ちょっと前に新しいMacに移行したのですが、 その際にアプリをHomebrew Caskで出来るだけ管理できるように移行しました。 その際、ちょこちょこ前と変わってる部分もあったのでその辺のまとめ。

brew caskに登録されていないアプリを追加する
https://oiteiku.netlify.app/posts/make-own-brewcask/