2017年2月15日水曜日

macOS Sierra に Homebrew と Cask をクリーンインストールする

概要

Marvericks から Sierra にアップグレードしたので、心機一転 Homebrew も入れ直してみます。Cask や Homebrew-versions の設定も行います。

ハードウェア

  • マシン: Macbook Pro Early 2011
  • OS: macOS 10.12 Sierra
  • メモリ: 16 GB
  • ストレージ: SSD 512 GB

ソフトウェア

  • Homebrew 1.0.5
  • Cask 0.60.0
  • Homebrew-versions

手順

  1. 作業の前に
  2. 古い Homebrew 削除
  3. Homebrew インストール
  4. Cask 設定
  5. Homebrew-versions 設定

作業の前に

ブリューとかタップの出所

Homebrew を使うときに、brew とか tap とかのコマンドが登場します。 これらの単語の出所はビールだろうなあと想像がついたので、Google で検索するとそれっぽい記事がありました。

http://y.sapporobeer.jp/learn/1386/

上記サイトによれば、brew は以下です。
「brew」とは「ビールなどを醸造する」という意味の英語で、日本ではブルー、ブリューと発音するのが一般的です
また、tap については次のような説明がありました。
一歩先行く雰囲気を醸し出したければ、ぜひ「tap(タップ)」という言葉を使ってみて下さい。このタップとは、ビールサーバーの注ぎ口が本来の意味ですが、ビールパブの性質を説明する際、「タップ数は10」などと表現されることがあります。これは、樽生ビールが10種類飲めるお店、という意味になります。

Homebrew とは

ひとことでいうと、macOS 用パッケージマネージャー。

http://brew.sh/index_ja.html

上記サイトに書いてあるように、
Homebrew は、Apple が用意していないあなたの必要なものをインストールします
というのが大きな特徴です。

Tap とは

ひとことでいうと、非公式パッケージのリポジトリを登録できるコマンド。

Cask とは

ひとことでいえば、Homebrew 拡張。Homebrew 本体にない非公式パッケージを豊富に揃えているのが Cask の特徴。

https://caskroom.github.io/

詳しくは後述しますが、Cask に登録されているパッケージをインストールするには、まず Homebrew に Cask のリポジトリを tap します。
ビールで例えるなら、サッポロエビスのビアホールで、キリン専用ビールサーバーの注ぎ口( tap )を持ち込むイメージでしょうか。
で、一番搾りのビールサーバー(パッケージ)を、注ぎ口に接続し飲んじゃう(インストールする)みたいな。

古い Homebrew 削除

まずは、古いものをアンインストールします。
以下のコマンドをターミルに打ち込んでください。

% ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

Homebrew インストール

インストール

次に新規インストール。
以下のコマンドをターミルに打ち込んでください。

% ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

すると次のように表示がされます。
==> This script will install:
/usr/local/bin/brew
/usr/local/share/doc/homebrew
/usr/local/share/man/man1/brew.1
/usr/local/share/zsh/site-functions/_brew
/usr/local/etc/bash_completion.d/brew
/usr/local/Homebrew
==> The following new directories will be created:
/usr/local/Cellar
/usr/local/Homebrew
/usr/local/Frameworks
/usr/local/include
/usr/local/lib
/usr/local/opt
/usr/local/sbin

Press RETURN to continue or any other key to abort
return キーを押してインストール続行

確認

% brew -v
Homebrew 1.0.5
Homebrew/homebrew-core (git revision cbb0; last commit 2016-09-28)

Cask 設定

インストール

以前は brew install caskroom/cask/brew-cask というコマンドでインストールしていましたが、現バージョンは以下でよいようです。(念のためインストールの有無を確認しようとバージョンオプションを打ったところ、そのままインストール開始となりました。)
% brew cask --version
==> Tapping caskroom/cask
Cloning into '/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask'...
remote: Counting objects: 3434, done.
remote: Compressing objects: 100% (3415/3415), done.
remote: Total 3434 (delta 37), reused 457 (delta 13), pack-reused 0
Receiving objects: 100% (3434/3434), 1.16 MiB | 222.00 KiB/s, done.
Resolving deltas: 100% (37/37), done.
Checking connectivity... done.
Checking out files: 100% (3418/3418), done.
Tapped 0 formulae (3,441 files, 3.6M)
0.60.0 (git revision b661; last commit 2 hours ago)

タップ確認

% ls /usr/local/Homebrew/Library/Taps
caskroom    homebrew

確認(もう一度バージョン確認オプションを実行)

% brew cask --version
0.60.0 (git revision d8c2; last commit 11 hours ago)

Homebrew-versions 設定

どういうときに Homebrew-versions が役に立つのか

Cask に複数バージョンが登録されているパッケージをインストールするときに、Homebrew-versions をタップしておくと便利です。例えば、Homebrew-versions を設定しないで、Java が Cask に存在するかどうが確認すると、以下のようになります。
% brew search java
app-engine-java     javarepl            jslint4java         libreadline-java  
homebrew/emacs/javaimp
Caskroom/cask/eclipse-java
Caskroom/cask/java
Caskroom/cask/yourkit-java-profiler
Caskroom/cask/java が いわゆる Java だと想像がつくので、以下のコマンドで、これをインストールすると今なら Java8 が入ります。
% brew cask install java
Homebrew-versions を設定しておくと Java7 が欲しいときに、助かります。Homebrew-versions を設定した状態で、再びJava が Cask に存在するかどうが確認すると以下のようになります。
% brew search java
app-engine-java     javarepl            jslint4java         libreadline-java  
homebrew/emacs/javaimp
Caskroom/cask/eclipse-java
Caskroom/cask/java
Caskroom/cask/yourkit-java-profiler
Caskroom/versions/charles-applejava
Caskroom/versions/charles-beta-applejava
Caskroom/versions/java-beta
Caskroom/versions/java6
Caskroom/versions/java7
Caskroom/versions/java9-beta
Caskroom/versions/java7 を選択すれば、めでたく Java7 をインストールできるというわけです。

タップ

では、設定してみましょう。
% brew tap caskroom/versions
error: unknown option `sort=-version:refname'
usage: git tag [-a|-s|-u <key-id>] [-f] [-m <msg>|-F <file>] <tagname> [<head>]
   or: git tag -d <tagname>...
   or: git tag -l [-n[<num>]] [--contains <commit>] [--points-at <object>]
        [<pattern>...]
   or: git tag -v <tagname>...

    -l, --list            list tag names
    -n[<n>]               print <n> lines of each tag message
    -d, --delete          delete tags
    -v, --verify          verify tags

Tag creation options
    -a, --annotate        annotated tag, needs a message
    -m, --message <message>
                          tag message
    -F, --file <file>     read message from file
    -s, --sign            annotated and GPG-signed tag
    --cleanup <mode>      how to strip spaces and #comments from message
    -u, --local-user <key id>
                          use another key to sign the tag
    -f, --force           replace the tag if exists
    --column[=<style>]    show tag list in columns

Tag listing options
    --contains <commit>   print only tags that contain the commit
    --points-at <object>  print only tags of the object

==> Auto-updated Homebrew!
Updated Homebrew from bc52932 to 759ee58.
No changes to formulae.

==> Tapping caskroom/versions
Cloning into '/usr/local/Homebrew/Library/Taps/caskroom/homebrew-versions'...
remote: Counting objects: 255, done.
remote: Compressing objects: 100% (244/244), done.
remote: Total 255 (delta 51), reused 52 (delta 9), pack-reused 0
Receiving objects: 100% (255/255), 86.50 KiB | 0 bytes/s, done.
Resolving deltas: 100% (51/51), done.
Checking connectivity... done.
Tapped 0 formulae (272 files, 317.5K)

タップ確認

以下のコマンドで、Homebrew-versions が登録されたかどうか確認する。
% ls /usr/local/Homebrew/Library/Taps/caskroom
homebrew-cask       homebrew-versions
以上です。

0 件のコメント:

コメントを投稿