ラベル HomeBrew の投稿を表示しています。 すべての投稿を表示
ラベル HomeBrew の投稿を表示しています。 すべての投稿を表示
2014/12/05

Homebrew + Homebrew-caskで Mac の開発環境を構築する

Brewfile + Homebrew + Homebrew-caskで Mac の環境構築をするの更新版です。

パッケージ管理システム「Homebrew」とその拡張版「Homebrew Cask」を使って
Mac の開発環境を構築します。
Brewfile と brew bundle コマンドはサポートされなくなったので
brew-update コマンドを作成して、brew-update でインストール/アップデートを行うようにします。

Homebrew を導入する

Command Line Tools for Xcode をインストールする

Xcode をインストールする
まずは AppStore から Xcode をインストールして下さい。
Command Line Tools for Xcode をインストールする
[ Xcode > Open Developer Tool > More Developer Tools... ] をクリックすると
Downloads for Apple Developer ページが開くので
Command Line Tools for Xcode をダウンロードしてインストールします。
参考: MavericksでCommand Line Tools for Xcodeをインストールする - Qiita

Homebrew をインストールする

Terminal で以下のコマンドを実行します。
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
参考: Homebrew — The missing package manager for OS X
Homebrew が正常にインストールできたか確認する
以下のコマンドを実行してエラーがあれば対処、再度実行します。
brew doctor

Homebrew-cask を導入する

Homebrew-cask をフォーミュラに追加する

Formula(フォーミュラ)は Homebrew で管理されているパッケージのことです。
Homebrew-cask は Homebrew では管理されていないので自分で追加する必要があります。
以下のコマンドで Homebrew-cask を Formula に追加することができます。
brew tap caskroom/cask
参考: これは便利!Homebrewに追加されたtapコマンドはリポジトリを追加して簡単にフォーミュラを増やせる | Macとかの雑記帳

Homebrew-cask をインストールする

Homebrew-cask を追加したら Homebrew の以下のコマンドでインストールします。
brew install brew-cask

おまけ: Homebrew-cask の使い方

アプリケーションを検索する
brew cask search chrome
google-chrome
アプリケーションをインストールする
brew cask install google-chrome
アプリケーションの実体は /opt/homebrew-cask/Caskroom に入り、
~/Applications にシンボリックリンクが作成されます。
それぞれのパスは以下のコマンドオプションで変更することができます。
--caskroom=/my/path, --appdir=/my/path
参考: homebrew-caskが良さそうなので導入してみた - About Digital
アプリケーションをアンインストールする
brew cask uninstall google-chrome
アプリケーションを更新する
brew cask update
古いアプリケーションを削除する
brew cask cleanup
その他の使い方
homebrew-cask/USAGE.md at master · caskroom/homebrew-cask

brew-update コマンドを作成して Homebrew パッケージを管理する

Brewfile を作成する

以下のようなファイルを作成します。
Install Packages と Install Applications の欄は自由にインストールしたいものを記述して下さい。
#!

# Update Homebrew
brew update

# Upgrade Formulas
brew upgrade

# Install HomebrewCask
brew tap caskroom/cask
brew install brew-cask

####################
# Install Packages #
####################

brew install zsh

########################
# Install Applications #
########################

brew cask install google-chrome

# Remove outdated versions
brew cleanup
brew cask cleanup
参考までに僕の brew-update にリンクをはっておきます。
dotfiles/brew-update at master · wada811/dotfiles

brew-update でインストール/アップデートする

パスの通った場所に brew-update を置いて、実行します。
brew bundle

さいごに

これで brew-update コマンドで Homebrew パッケージをインストール/アップデートできるようになりました。
2014/09/20

Mac を Marvericks にアップデートした時にやったこと

App Store から Marvericks にアップデート


一時停止になったままアップデートされない。
LaunchPad から一時停止しているやつを削除する。
バージョンアップできた。

Marvericks で問題が起きてないかチェック

Terminal を開いたらすぐに閉じてしまうので設定をいじったら以下の問題が…。
Homebrew-Cask がもしかしたら状態が良くなさそうだけど確認できないので一旦放置。

おわり

2014/06/11

Git 2.0 で pull の Fast-Forward を有効にして Homebrew で update したいじゃん?でも今までの git merge --no-ff でマージコミットしてるせいで失敗するじゃん?困るじゃん?

Homebrew の更新の度にマージコミットで中断されてめんどくさかったので
マージコミットしないようにして中断されないようにしました。
Git 2.0 がリリースされて pull が Fast-Forward にできるようになったおかげで
Homebrew の更新を監視する作業がなくなります。やったー。
[Git]GitのpullをFast-Forward onlyにする | DevAchieve で書いたように
git config --global pull.ff only で設定を変更しました。

merge の Fast-Forward は無効で、pull の Fast-Forward は強制にしました。
[merge]
    ff = false
[pull]
    ff = only

これで Homebrew の更新 brew bundle ~/Brewfile の内部の git pull でマージコミットのために
Homebrew の更新が中断されなくなるはずです。

よーし、更新するぞー!と以下のコマンドを実行!
brew bundle ~/Brewfile
fatal: Not possible to fast-forward, aborting.
Error: Failure while executing: git pull -q origin refs/heads/master:refs/remotes/origin/master
Error: Command failed: L2:brew update
はい、明らかに git pull でエラーになりました。
今までマージコミットしていたから Fast-Forward で pull できなくなっているんですね。

Homebrew をアンインストールしてイントールし直すしかないかなぁと思ったけど
Homebrew で入れていたものまでアンインストールされそうです。
参考: いつか見た惑星: Homebrewをアンインストールする

他にも見ていると .git を削除していたのを見つけて解決しました。
参考: Homebrew をアンインストールする方法 - present
Git の問題なので .git を削除するだけでなんとかなりそうだと。

cd `brew --prefix`
rm -rf .git
brew bundle ~/Brewfile
ということで Homebrew の履歴もスッキリして動くようになりました。

Homebrew-cask をインストールしていて Homebrew-cask のコミットもマージコミットしていたら
以下の様なエラーが出ているかもしれません。
fatal: Not possible to fast-forward, aborting.
Error: Failed to update tap: caskroom/cask
fatal: Not possible to fast-forward, aborting.
Error: Failed to update tap: caskroom/versions
以下のコマンドを実行して再インストールしてあげれば履歴が綺麗になって動きます。
brew uninstall brew-cask
brew untap caskroom/cask
brew untap caskroom/versions
brew tap caskroom/cask
brew tap caskroom/versions
brew install brew-cask
tap/untap のくだりはいらないかもしれませんが確認していないので一応記載。

追記

brew uninstall brew-cask
brew untap caskroom/cask
brew untap caskroom/versions
上記のコマンドを実行すると
brew bundle ~/Brewfile を実行した際に Homebrew-cask でインストールしたアプリケーションが
すでにインストールされていてエラーになります。

以下のコマンドで .git だけ削除したほうがいいかもしれません。
rm -rf /usr/local/Library/Taps/caskroom/homebrew-cask/.git
rm -rf /usr/local/Library/Taps/caskroom/homebrew-versions/.git
試してないので誰か同じ境遇の人で試した人がいたら結果を教えて下さい。

追記2

.git だけ削除するのはダメなようです。
あと、最新版の Homebrew で brew bundle が使えなくなったので
仕方ないのでシェルスクリプトにしました。
dotfiles/brew-update at master · wada811/dotfiles
2014/05/12

Brewfile + Homebrew + Homebrew-caskで Mac の環境構築をする

パッケージ管理システム「Homebrew」とその拡張版「Homebrew Cask」を使って
手に入れた iMac に環境を移行/構築してみました。
また、Homebrew で管理されているパッケージや、
Homebrew-cask で管理されているアプリケーションを
コマンド一発でインストールできる Brewfile も使ってみました。
この Brewfile + Homebrew + Homebrew-cask という構成で
環境構築/環境統一の手間が大幅に省くことができます。

追記(2014/12/05):更新しました

Homebrew + Homebrew-caskで Mac の開発環境を構築する | DevAchieve

Homebrew を導入する

Command Line Tools for Xcode をインストールする

Xcode をインストールする
まずは AppStore から Xcode をインストールして下さい。
Command Line Tools for Xcode をインストールする
[ Xcode > Open Developer Tool > More Developer Tools... ] をクリックすると
Downloads for Apple Developer ページが開くので
Command Line Tools for Xcode をダウンロードしてインストールします。
参考: MavericksでCommand Line Tools for Xcodeをインストールする - Qiita

Homebrew をインストールする

Terminal で以下のコマンドを実行します。
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
参考: Homebrew — The missing package manager for OS X
Homebrew が正常にインストールできたか確認する
以下のコマンドを実行してエラーがあれば対処、再度実行します。
brew doctor

Homebrew-cask を導入する

Homebrew-cask をフォーミュラに追加する

Formula(フォーミュラ)は Homebrew で管理されているパッケージのことです。
Homebrew-cask は Homebrew では管理されていないので自分で追加する必要があります。
以下のコマンドで Homebrew-cask を Formula に追加することができます。
brew tap caskroom/cask
参考: これは便利!Homebrewに追加されたtapコマンドはリポジトリを追加して簡単にフォーミュラを増やせる | Macとかの雑記帳

Homebrew-cask をインストールする

Homebrew-cask を追加したら Homebrew の以下のコマンドでインストールします。
brew install brew-cask

おまけ: Homebrew-cask の使い方

アプリケーションを検索する
brew cask search chrome
google-chrome
アプリケーションをインストールする
brew cask install google-chrome
アプリケーションの実体は /opt/homebrew-cask/Caskroom に入り、
~/Applications にシンボリックリンクが作成されます。
それぞれのパスは以下のコマンドオプションで変更することができます。
--caskroom=/my/path, --appdir=/my/path
参考: homebrew-caskが良さそうなので導入してみた - About Digital
アプリケーションをアンインストールする
brew cask uninstall google-chrome
アプリケーションを更新する
brew cask update
古いアプリケーションを削除する
brew cask cleanup
その他の使い方
homebrew-cask/USAGE.md at master · caskroom/homebrew-cask

Brewfile で Homebrew パッケージを管理する

Brewfile を作成する

以下のようなファイルを作成します。
Install Packages と Install Applications の欄は自由にインストールしたいものを記述して下さい。
# Update Homebrew
update

# Upgrade Formulas
upgrade

# Install HomebrewCask
tap caskroom/cask
install brew-cask

####################
# Install Packages #
####################

install zsh

########################
# Install Applications #
########################

cask install google-chrome

# Remove outdated versions
cleanup
cask cleanup
参考までに僕の Brewfile にリンクをはっておきます。
dotfiles/Brewfile at master · wada811/dotfiles

Brewfile でインストールする

Brewfile のある場所で以下のコマンドを実行します。
brew bundle

参考:
BrewfileでHomebrewパッケージを管理する | SOTA
「BrewfileでHomebrewパッケージを管理する」をやってみた - sonots:blog

Brewfile を dotfiles と一緒に GitHub で管理する

環境移行/環境統一するためには他の Mac からアクセスできる場所に Brewfile を置いておかなければなりません。
ということで設定ファイルの dotfiles と一緒に GitHub で管理してしまいましょう。
手順は dotfilesをGitHubで管理する方法 | DevAchieve に書いています。

最後に

全部コマンドで環境構築しちゃう感じ、イケてるエンジニアっぽくて良いと思います。
2013/11/28

[HomeBrew]gitのバージョンアップをするためにやったこと

Git の diff を美しく表示するために必要なたった 1 つの設定 #gitという記事を見て、
やってみたくなったので設定してみたら diff-highlight が見つからないと言われました。

git のバージョンも古かったので git 環境のアップデートを行おうと思いました。
git は HomeBrew で入れていたので、まずは HomeBrew のアップデートを行います。

brew doctor を実行すると
You may wish to `brew unlink` these brews:

    openssl
のように言われたのですがいらないのがいくつかあったので
brew remove openssl などのように色々削除しました。

もう一度 brew doctor を実行すると
You should `brew install` the missing dependencies:

    brew install readline
のように言われたので brew install readline を実行しました。

更に再び brew doctor を実行すると
Error: Homebrew doesn't know what compiler versions ship with your version of
Xcode. Please file an issue with the output of `brew --config`:
  https://github.com/mxcl/homebrew/issues

Thanks!
のように言われていたので Xcode と Command Line Tools をアップデートしました。

ダメ押しで brew doctor を実行しましたが状況は変わらず絶望しつつも
brew update を実行すると成功したので
brew upgrade で git を含め全てバージョンアップしました。
git version 1.8.4.3

ところで目的の diff-highlight はというとパスの通ってないところにいたので
以下のコマンドでシンボリックリンクを作成して実行できるようにしました。
ln -s /usr/local/opt/git/share/git-core/contrib/diff-highlight/diff-highlight /usr/local/bin
~/.gitconfig に以下を追加しました。
[pager]
 log = diff-highlight | less
 show = diff-highlight | less
 diff = diff-highlight | less
文字列単位の差分がある場合は差分にハイライトされたように背景がつきます。
2013/08/16

[HomeBrew]正規表現でファイル名を置換するrenameコマンド

Android Asset Studioでランチャーアイコンを生成するのだけど
ファイル構成が以下のようになっていて毎度ファイル名を修正するのが面倒だったので
rename コマンドをインストールしてみた。
rename // plasmasturm.org

res
├── drawable-hdpi
│   └── ic_launcher.png
├── drawable-mdpi
│   └── ic_launcher.png
├── drawable-xhdpi
│   └── ic_launcher.png
└── drawable-xxhdpi
    └── ic_launcher.png
brew install renameでやってみると何故か失敗するので調べてみると以下のようになっていたので
require 'formula'

class Rename < Formula
  url 'http://plasmasturm.org/code/rename/rename', :using => :nounzip
  version '0.1.3'
  homepage 'http://plasmasturm.org/code/rename'
  sha1 'a2235a402d18495513edf690445e0030f31c9ab3'

  def install
    system 'pod2man', 'rename', 'rename.1'
    bin.install 'rename'
    man1.install 'rename.1'
  end
end
以下のように修正したら成功しました。
require 'formula'

class Rename < Formula
  homepage 'http://plasmasturm.org/code/rename'
  url 'https://github.com/ap/rename/archive/v1.600.tar.gz'
  sha1 'a7946ce3602e3810aaa70300674ccb26832634ed'

  def install
    system 'pod2man', 'rename', 'rename.1'
    bin.install 'rename'
    man1.install 'rename.1'
  end
end
これで rename コマンドが使えるようになったけど再帰的にリネームはできなっぽいので
以下のようなコマンドで対応しました。
find res -type f -name 'ic_launcher.png' | xargs rename 's/launcher/orientation_landscape/'
res
├── drawable-hdpi
│   └── ic_orientation_landscape.png
├── drawable-mdpi
│   └── ic_orientation_landscape.png
├── drawable-xhdpi
│   └── ic_orientation_landscape.png
└── drawable-xxhdpi
    └── ic_orientation_landscape.png
正規表現使ってないけど rename コマンドが便利な時が来るはず。

きっかけ


これよりは便利。@gabuさんありがとうございます。
2013/07/13

Mac OSX10.8でrbenvを使ってRuby1.9とRails4.0をインストールする

ついに僕も Ruby on Rails での開発デビューしてみることになったので
Ruby on Rails 環境構築のメモを残しておきます。

HomeBrew を使用するので MacPorts の人は読み替えてください。
また、僕は zsh を使っているので bash の人も読み替えてください。
HomeBrew や zsh をインストールしようという人は以下の事が参考になるかと思います。
MacにHomeBrewとzshを導入してみた | DevAchieve

rbenv と ruby-build のインストール

brew install rbenv

brew install ruby-build

vi .zshrc
# rbenv の初期化
eval "$(rbenv init -)"
source .zshrc
eval "$(rbenv init -)" で rbenv へのパスを通すのとコマンドの補完や引数の処理、rehash をしている。
echo "$(rbenv init -)" で処理内容を確認できる。

rehashとは、
rbenv -h で確認すると以下のように書かれている。
rehash: Rehash rbenv shims (run this after installing binaries)
gem とか入れたらやれってことでいいのだろうか。
gem を入れまくると重くなる?のか rehash が重くなることがあるらしい。
猫好きモバイルアプリケーション開発者記録 rbenv init が重い問題に対する対処法
gem を(アン)インストールしたら自動で rehash してくれる gem があるのでこれを入れておくと良いかも。
ryansouza/rbenv-rehash - github

依存パッケージのインストール

brew install readline

brew link readline

brew install openssl

brew link openssl

Ruby をインストールする

CONFIGURE_OPTS="--with-readline-dir=/usr/local --with-openssl-dir=/usr/local" rbenv install 1.9.3-p194
CONFIGURE_OPTS="--with-readline-dir=/usr/local --with-openssl-dir=/usr/local" rbenv install まで
入力して Tab で補完すればバージョンを指定できる。
とりあえず Ruby1.9 の最新版のパッチが当てられた(p の後の数字が大きい)バージョンをインストールした。
Ruby2.0 も候補に出たけど 2.0.0-dev しか表示されなかったのでインストールはやめておいた。
MacにRuby2.0とRails4をインストール - Qiita [キータ]

rehash して使用するバージョンを指定する

rbenv rehash
rbenv global 1.9.3-p194

バージョンを確認する

rbenv version
1.9.3-p194 (set by /Users/wada/.rbenv/version)
ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin12.4.0]

Rails をインストールする

gem list -r --all rails
*** REMOTE GEMS ***

rails (4.0.0, 3.2.13, 3.2.12, 3.2.11, 3.2.10, 3.2.9, 3.2.8, 3.2.7, 3.2.6, 3.2.5, 3.2.4, 3.2.3, 3.2.2, 3.2.1, 3.2.0, 3.1.12, 3.1.11, 3.1.10, 3.1.9, 3.1.8, 3.1.7, 3.1.6, 3.1.5, 3.1.4, 3.1.3, 3.1.2, 3.1.1, 3.1.0, 3.0.20, 3.0.19, 3.0.18, 3.0.17, 3.0.16, 3.0.15, 3.0.14, 3.0.13, 3.0.12, 3.0.11, 3.0.10, 3.0.9, 3.0.8, 3.0.7, 3.0.6, 3.0.5, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 2.3.18, 2.3.17, 2.3.16, 2.3.15, 2.3.14, 2.3.12, 2.3.11, 2.3.10, 2.3.9, 2.3.8, 2.3.7, 2.3.6, 2.3.5, 2.3.4, 2.3.3, 2.3.2, 2.2.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.4, 2.0.2, 2.0.1, 2.0.0, 1.2.6, 1.2.5, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.6, 1.1.5, 1.1.4, 1.1.3, 1.1.2, 1.1.1, 1.1.0, 1.0.0, 0.14.4, 0.14.3, 0.14.2, 0.14.1, 0.13.1, 0.13.0, 0.12.1, 0.12.0, 0.11.1, 0.11.0, 0.10.1, 0.10.0, 0.9.5, 0.9.4.1, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.5, 0.8.0)

...etc
Rials のバージョンを確認する。他にも色々表示されたが省略。
最近、 Rails4.0 が公開された。
rbenv exec gem install rails
rbenv exec gem install rails -v 3.2.13 等でバージョンを指定してインストールできる。たぶん。
指定しないと最新の 4.0.0 がインストールされる。

インストールしたので rehash する

rbenv rehash

バージョンを確認する

rails -v
Rails 4.0.0

Rails プロジェクトを作成する

rails new proj
cd proj

開発を開始する

俺達の開発はまだまだこれからだ!

参考:
Ruby on Rails 3.2 を Mac OS X にインストールする手順をかなり丁寧に説明してみました - Rails 雑感 - Ruby on Rails with OIAX
【初心者向け】Mac OSX10.8(Mountain Lion)で Ruby on Railsを動かすための5ステップ « pplog.org
Rails開発環境の構築(rbenvでRuby導入からBundler、Rails導入まで) - Qiita [キータ]
MacにRubyをインストールする時のメモ - Qiita [キータ]
2013/03/23

HomeBrew を zsh で使えるようにする。ついでに hub コマンドも。

HomeBrew を zsh で使えるようにする

MacにHomeBrewとzshを導入してみた | DevAchieveでログインシェルを zsh に
変更したは良いけど brew コマンドが使えなくなっていた…。
よくわからないが zsh-completions をインストールすれば良いらしい。

とりあえずシェルを bash に変更する。
chsh -s /usr/local/bin/bash
HomeBrew で zsh-completions をインストールする。
brew install zsh-completions
.zshrc に以下の記述を追加する。
vi .zshrc
# zsh補完を有効化
fpath=(/usr/local/share/zsh-completions $fpath)
変更した .zshrc の設定を有効にする。
source .zshrc

ついでに hub コマンドも

むしろメインの目的だった hub コマンドを使えるようにする。
hub コマンドで GitHub がもっと便利になるらしい。
hub コマンドについては以下の記事がわかりやすい。
GitHubをさらに便利に使う、hubコマンドを活用しよう! | Act as Professional - hiroki.jp

とりあえず上記で HomeBrew を zsh で使えるようにしたので以下のコマンドでインストールする。
brew install hub
インストールできたか確認する。
hub --version
git version 1.7.9.6 (Apple Git-31.1)
hub version 1.10.2
こんな感じに出ればOK!

更についでに GitHub のリポジトリを作る

すでに Git で管理されていることが条件で、まだの場合は適当に作る。
mkdir Sample
cd Sample
git init
hub create
初回はID/PWを尋ねられるので答えたらリポジトリが作られる。
そうしてできたリポジトリこちら。wada811/Sample
以下のコマンドで GitHub のリポジトリのページを開けるのでリポジトリが作成されているか確認できる。
hub browse

おわり。
2012/09/23

MacにHomeBrewとzshを導入してみた

Macのパッケージ管理ならHomeBrewでしょ、と誰かが言うのでインストールしてみた。
Homebrew — MacPorts driving you to drink? Try Homebrew!の最下部の
Install HomeBrew のコマンドをターミナルで入力すればインストールできるみたい。
よくわからず色々グチャグチャやってたら入ったからよくわからないけどたぶんそう。
たぶんコレ↓が役に立つと思う。
[Mac] Mountain Lionへパッケージ管理「Homebrew」をインストールする手順のメモ

zsh とは … なんかすげー便利なコマンドシェル、らしい。zsh - Wikipedia
zsh は インストールした HomeBrew を使えば
ターミナル上で以下のコマンドだけでインストールできる。
brew install zsh
このままではインストールしてもターミナルを起動するとデフォルトの bash が起動してしまうので
sudo vi /etc/shells/usr/local/bin/zshを追記する。
バージョン名付きのがあったらソッチのほうがいいかも。
chpass -s /usr/local/bin/zshでデフォルトを zsh に変更する。
chpassコマンドを入力してパスワードを入力したら変更が確認できる。
Shell:部分が /usr/local/bin/zsh になっているはず。
システム環境設定 > ユーザーとグループ から鍵を開いて編集できるようにして
ユーザー名の上で右クリックで詳細オプションをクリックし、開いた画面でログインシェルを変更しても良い。

使えるようになったかどうかの確認としてzsh --versionと入力してみるといいかも。
参考
Mac (Lion) にzshをインストール | CAPH TECH
MacのログインシェルをHomebrew等で入れたzshやbashに変更する方法 | Macとかの雑記帳

zsh の設定をするために一旦ターミナルを終了し、再起動する。
何やら色々聞かれるのでよくわからないまま設定するも良い。
とりあえず 0 をタイプして保存すると/Users/[ユーザー名]/.zshrcが生成されると思う。
巷で流れる .zshrc の設定はココに記述すれば良さそうだ。

タグ(RSS)