シェアする

  • このエントリーをはてなブックマークに追加

[mac]MacPortsからHomebrewに移行する

medium_11643497735

最近macの環境設定の記事などをググるとHomebrewの記事がヒットすることが多く、よくわからず使っていたMacPortsのデメリットやHomebrewのメリットを目にするので、今更ながら移行してみます。

参考にさせていただいたのはパッケージ環境の移行?MacPorts のアンインストールと Homebrew のインストール – TMD45INC!!!こちら。

MacPortsでインストールしたパッケージをすべて削除するので、以下のコマンドの意味がわかるかたのみ実行してください。

MacPortsのアンインストール

# port でインストールしていたパッケージ一覧をメモ
$ port installed > port_installed.txt

# MacPorts のアンインストールと関連ディレクトリの削除
$ sudo port -f uninstall installed
$ sudo rm -rf /opt/local/

# MacPorts 関連の環境変数(PATH など)の削除
$ vi ~/.bash_profile とか適宜
$ source ~/.bash_profile

Homebrewのインストール

Homebrew ? MacPortsは酒でも飲みたくなるでしょ?じゃあHomebrewを使おう!
こちらでインストール方法を確認。20140316時点では以下のコマンドでインストール。

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
==> Installation successful!

と表示されればOK。

便利設定

Homebrewを快適に使うために設定してる4つのこと | Macとかの雑記帳
こちらを参考に先回りして便利な設定を行います。

$PATHの読込順

まず、Homebrewでインストールしたパッケージが優先されるように、$PATHの設定を行います。
Macをサーバとして利用していたり、ログインユーザごとにPATHの設定を変えたい場合は.bash_profileや.bashrcで設定しても構いませんが、私は/etc/pathsで以下のように設定しました。

sudo vi /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin

上から順に読まれるため、/usr/local/binにパッケージがあれば優先されます。

env | grep "PATH"

/usr/local/bin/usr/local/sbin/usr/bin,/bin/usr/sbin,/sbinより前に表示されていればOKです。

参考サイトに記載されている、aliasやリポジトリの追加、Homebrewの設定は使ってみないと必要になるかわからなかったので、行いませんでした。

MacPortsでインストールしていた必要なパッケージをインストール

初めに書きだしたport_installed.txtを参照して必要なパッケージをHomebrewからインストールしてみます。

私の場合はbash-completionくらいで、あとはMac標準のパッケージで問題無さそうでした。
必要なパッケージがあれば適時ブログにメモしたいと思います。

bash-completionのインストール

brew install bash-completion

でbash-completionをインストール。

以前のMacPortsでインストールしていた時は.bash_profileに

# bash-completion
if [ -f /opt/local/etc/profile.d/bash_completion.sh ]; then
    . /opt/local/etc/profile.d/bash_completion.sh
fi

こう書いていたのを↓のように修正

if [ -f $(brew --prefix)/etc/bash_completion ]; then
  . $(brew --prefix)/etc/bash_completion
fi

git-completion.bashの導入

/usr/local/etc/bash_completion.d/git-completion.bashを入れるだけ。
git-completion.bashが無ければ、git/contrib/completion/git-completion.bash at master ? git/gitを入れればOK。

おまけ

$ brew help
Example usage:
  brew [info | home | options ] [FORMULA...]
  brew install FORMULA...
  brew uninstall FORMULA...
  brew search [foo]
  brew list [FORMULA...]
  brew update
  brew upgrade [FORMULA...]
  brew pin/unpin [FORMULA...]

Troubleshooting:
  brew doctor
  brew install -vd FORMULA
  brew [--env | --config]

Brewing:
  brew create [URL [--no-fetch]]
  brew edit [FORMULA...]
  open https://github.com/Homebrew/homebrew/wiki/Formula-Cookbook

Further help:
  man brew
  brew home

シェアする

  • このエントリーをはてなブックマークに追加

フォローする