[macOS General] brew cask で異なるバージョンをインストールする、もしくはアプリを追加する
異なるバージョンを cask install する。
例えば、Sublime Text 3 など。
βや古いバージョン、各国語バージョンをインストールしたい場合に利用します。
brew cask については、下記を参照ください。
Contents
インストール
tap homebrew/versions
するように、cask のレポジトリを追加します。
% brew tap caskroom/versions
Cloning into '/usr/local/Library/Taps/caskroom-versions'...
remote: Reusing existing pack: 1062, done.
remote: Total 1062 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (1062/1062), 143.55 KiB | 171.00 KiB/s, done.
Resolving deltas: 100% (561/561), done.
Checking connectivity... done.
Tapped 0 formula
つかいかた
例えば、thunderbird を cask install
すると英語版となるが、日本語版が追加できます。
% brew cask search thunderbird
==> Exact match
thunderbird
==> Partial matches
thunderbird-ja
% brew cask info thunderbird-ja
thunderbird-ja: 24.2.0
http://www.mozilla.jp/thunderbird/
Not installed
https://github.com/caskroom/homebrew-versions/commits/master/Casks/thunderbird-ja.rb
インストールします。
% brew cask install thunderbird-ja
==> Downloading http://download-installer.cdn.mozilla.net/pub/thunderbird/releas
######################################################################## 100.0%
==> Symlinking App 'Thunderbird.app' to '/Users/****/Applications/Thunderbir
thunderbird-ja installed to '/opt/homebrew-cask/Caskroom/thunderbird-ja/24.2.0' (132 files, 109M)
Cask にないアプリを追加する
方法は2つ。
brew cask create
コマンドでローカル用の Cask を作成する- 本家を Fork して Cask を作成する
brew cask create
で作成・実行して、本家へ pull request
するのがよさそう。
Note
アプリの追加手順を、Qiita にまとめ直しました。
homebrew-cask – brew cask にアプリがなかったら追加しよう – Qiita
Cask の仕様
追記:2014/04/02
作成にあたってつまづいた点を追記する。
命名ルール
基本は brew cask create
で。
元アプリの .app をのぞいた名称がベースとなるよう。
checksum
下記はアプリの公式サイトに情報がなかった。
.dmg ファイルから checksum を作成することでよいとのこと。
% shasum -a 256 ~/Downloads/OmniGrafflePro-5.4.4.dmg
396a4adaadb82d651ea6ec8b141c9e5f5b0b5f53c6edee5e7806a896783892c9 /Users/****/Downloads/OmniGrafflePro-5.4.4.dmg
sha256 が仕様。
brew cask create する場合
以下のコマンドを実行する。
% brew cask create my-cask
エディタが起動し、ひな形ファイルを編集できるようになる。
既存の Cask を参考にファイルを作成する。
例えば、ドイツ語版を参考に Firefox の日本語版を作成。
class FirefoxJa < Cask
url 'https://download.mozilla.org/?product=firefox-latest&os=osx&lang=ja-JP-mac'
homepage 'http://www.mozilla.jp/firefox/'
version 'latest'
no_checksum
link 'Firefox.app'
end
ファイルを保存すると、以下のように扱うことができるようになる。
ファイルは /usr/local/Library/Taps/phinze-cask/Casks/my-cask.rb
に保存されている。
% brew cask search my-cask
==> Exact match
my-cask
リポジトリを Fork する場合
作成した Cask を pull request する場合に利用する。
caskroom/homebrew-versions を Fork して、利用したいパッケージの cask(?) を作成する。
Cask を作成する方法は前述と同じ。
homebrew-versions/Casks/firefox-ja.rb
に保存する。
Fork したリポジトリを追加して、扱うこともできる。
% brew tap
caskroom/versions
phinze/cask
sanemat/font
% brew tap DriftwoodJP/homebrew-versions
Cloning into '/usr/local/Library/Taps/driftwoodjp-versions'...
remote: Reusing existing pack: 1062, done.
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 1066 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (1066/1066), 146.40 KiB | 169.00 KiB/s, done.
Resolving deltas: 100% (561/561), done.
Checking connectivity... done.
Tapped 0 formula
% brew tap
caskroom/versions
driftwoodjp/versions
phinze/cask
sanemat/font
ちなみに重複するとこんな表示になる。
% brew cask search firefox
==> Exact match
firefox
==> Partial matches
caskroom-versions/firefox-aurora driftwoodjp-versions/firefox-beta
caskroom-versions/firefox-beta driftwoodjp-versions/firefox-beta-de
caskroom-versions/firefox-beta-de driftwoodjp-versions/firefox-beta-gb
caskroom-versions/firefox-beta-gb driftwoodjp-versions/firefox-de
caskroom-versions/firefox-de driftwoodjp-versions/firefox-nightly
caskroom-versions/firefox-nightly driftwoodjp-versions/firefox-ux
caskroom-versions/firefox-ux firefox-ja
driftwoodjp-versions/firefox-aurora multifirefox
Fork したリポジトリに push すると、前述の通り cask コマンドで扱えるようになる。
% git push origin master
作成した cask は、pull request すると良い。