Homebrewな人がMercurialインストール時にカッとなった場合の対処方法
2連投、いい調子のy_echoです。こんばんは。
プライベートのとあるリポジトリを触るために必要なMercurial。MacPortsやめたので、こいつも再インストールです。
brew install hg...あれ??
brew install mercurial · Issue #3825 · Homebrew/legacy-homebrew · GitHubとのことです。
ググるといくつか解決策が見つかるんですが、
- もろもろを~/homebrewで管理するべく心に決めたばかり
- Perlはperlbrewで~/perl5に気持ちよく管理中
なので、何の考えもなしに普通にインストールはしたくありません。よもや禿コマンドなんぞ...
ここらへんでカッとなったわけです。
pythonbrewでPython環境を管理すればよさそう
UTAHTAさん、素晴らしすぎます。
Pythonistaな方々はすでにご存知のツールかもしれませんが、ぼくはPython疎いので知りませんでした...perlbrewと同じ感覚で管理できるのであれば、学習コスト分もお得なので、今回はこいつで解決することにします。
pythonbrewをインストール
詳細なインストール手順は作者UTAHTAさんの記事など参考にしてもらうとして、ここではざっとログるのみとします。
[y_echo@MacBook ~]% curl -kLO https://github.com/utahta/pythonbrew/raw/master/pythonbrew-install [y_echo@MacBook ~]% chmod +x ./pythonbrew-install [y_echo@MacBook ~]% mkdir -p ~/python/pythonbrew # perlbrewのdir構成と同じにする [y_echo@MacBook ~]% export PYTHONBREW_ROOT=~/python/pythonbrew [y_echo@MacBook ~]% ./pythonbrew-install
これで~/python/pythonbrew/配下にごっそりインストールされたのを確認した後、.zshrcに以下を追記しておきます。
### .zshrc ... ## perlbrew source $HOME/perl5/perlbrew/etc/bashrc # 元からあるperlbrew用の設定 ## pythonbrew source $HOME/python/pythonbrew/etc/bashrc # 今回新しく追加したpythonbrew用の設定
設定をzshに反映して確認してみます。
[y_echo@MacBook ~]% source ~/.zshrc [y_echo@MacBook ~]% which pythonbrew pythonbrew () { __pythonbrew_find_command "$@" case $command_name in (use) __pythonbrew_use "$@" ;; (switch) __pythonbrew_switch "$@" ;; (off) __pythonbrew_off "$@" ;; (update) __pythonbrew_update "$@" ;; (*) command pythonbrew "$@" ;; esac builtin hash -r }
よさそうです。
PythonとMercurialをインストール
とりあえずPythonは2.7.1にしました。
[y_echo@MacBook ~]% pythonbrew install 2.7.1 [y_echo@MacBook ~]% pythonbrew switch Python-2.7.1 [y_echo@MacBook ~]% which python /Users/y_echo/python/pythonbrew/pythons/Python-2.7.1/bin/python
今更ながらですが、インストール時perlbrewみたいにas指定できるのであれば、適宜しておいた方が良さそうですね。switch時のタイプ量減りますし、「pythonbrew switch Python-x.x.x」って何か許せない...
追記です。githubのマニュアル読むと、switchするときはバージョン指定(つまり数字のみ)だけでもいけるみたいですね。ごめんなさいです。
最後にMercurialをインストールします。
[y_echo@MacBook ~]% which pip /Users/y_echo/python/pythonbrew/pythons/Python-2.7.1/bin/pip [y_echo@MacBook ~]% pip install Mercurial [y_echo@MacBook ~]% which hg /Users/y_echo/python/pythonbrew/pythons/Python-2.7.1/bin/hg
ということで、だいぶ寄り道した感がありますが、気持ちよく管理したいという目的は達成することができました。
補足
Pythonistaな方々はこの後virtualenvで仮想環境を構築するようです。