MacではHomebrew
で大概のものがインストール出来る様になって来ましたが、
Pythonのpip
コマンドで手動で入れてるものがまだあったので
それもHomebrewで管理できる様にしました。
入れたいもの
それ程入れてるものは無く、
現状pip
で手動で入れてるものは
asciinema
だけです。
Vim内で使うPython補完のjediなんかは、 今の所Vimでしか使わないので jedi-vim のプラグイン内で(サブモジュールとして)インストールしてもらう 様にしています。
brew-pip
で、pip
をHomebrewからも使えないかな、と思っていたら
brew-pip
というものを見つけました。
オリジナルはjoshバージョン:
josh/brew-pip: https://github.com/josh/brew-pip
これが
ここでフォークされてさらに
にフォークされてます。
このhanxueバージョンのものがHomebrew内に
brew-pip: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/brew-pip.rb
の名前でFormulaが用意されています。
FormulaがHomebrew内にもともと入っているので、
$ brew install brew-pip
としてあげればbrew-pipがインストールされます。
インストール後、Pythonのモジュールが
$(brew --prefix)/lib/python2.7/site-packages
にインストールされるので、これをPYTHONPATHに指定しておく必要があります。
さらにbrew-pipでインストールすると、asciinema
コマンド等の実行ファイルは
$(brew --prefix)/share/python
にインストールされます。
これらを有効にするために
1 2 3 4 5 6 7 |
|
こんな感じの設定を.bashrcに書いておくなりして 設定しておく必要があります。
brew-pipの使い方は、
$ brew pip asciinema
の様に、brew
の後にpip
コマンドを入れ、後はパッケージ名を入れるだけ。
brew-pipでは
Homebrew-cask
の様にFormulaとかを用意するのではなく、
通常のpip
でインストール出来る物をそのままインストールできます。
brew pip
でインストールすると、パッケージ名は
pip-asciinema見たいにpip-を頭に付けた形で登録されます。
アンインストールするときはbrew pip
は使わずに直接
$ brw uninstall pip-asciinema
とします。
brew-pipの README.md を見ると pip-なしでそのままの名前でアンインストール出来る様になってますが 1、 それだとアンインストール出来ませんでした。 (書かれてるのが昔の仕様でREAMDEがアップデートされてないだけ?)
ただし、このbrew-pip自体がもう古いのか、
PATHに$(brew –prefix)/share/pythonが入っていると
brew doctor
とかすると
$ brew doctor
Warning: /usr/local/share/python is not needed in PATH.
Formerly homebrew put Python scripts you installed via `pip` or `pip3`
(or `easy_install`) into that directory above but now it can be removed
from your PATH variable.
Python scripts will now install into /usr/local/bin.
You can delete anything, except 'Extras', from the /usr/local/share/python
(and /usr/local/share/python3) dir and install affected Python packages
anew with `pip install --upgrade`.
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!
の様に、昔はそっちに入れてたけどい今は/usr/local/bin/に インストールされる様になった、との注意書きが出てきます。
なので、brew-pipは避けて他の方法を探したほうが良さ気。
asciinemaのFormula
Homebrewでasciinema
を探してみると
$ brew search asciinema
No formula found for "asciinema".
Searching pull requests...
Closed pull requests:
Include formula for asciinema (http://asciinema.org/) (https://github.com/Homebrew/homebrew/pull/26011)
asciinema 0.9.5 (https://github.com/Homebrew/homebrew/pull/23053)
$
と、Pullリクエストが出てきたので見てみると 下の所で途中まで作ろうとしているものが有ります。
もともと、asciinema本家でもHomebrew用のFormulaを作っていて
asciinema/packaging/homebrew/asciinema.rb: https://github.com/sickill/asciinema/blob/master/packaging/homebrew/asciinema.rb
ここにあるのですが、これはv0.9.5用で、最新版はv0.9.8なんですが、
どうもv0.9.6からMakefileを書き換えた様で
上のFormulaにあるようなmake install
が使えなくなっています。
そこで、上のPullリクエストの中では最初にmake install
バージョンで
v0.9.7用に作って動かない、と言っていて、
最後の方ではpython setup.py install
を使ってインストールする物を作っています。
最後にはこれを見なおして改めて、って話で終わってますが今のところ 新しい動きは見えず。
ので、取り敢えず上のプルリクエスト中の物を参考に
こんな感じで作って
$ brew tap rcmdnk/rcmdnkpac
$ brew install asciinema
でインストール出来ました。
追記
現在はasciinemaのFormulaが元から入っているので上のtapをする必要はありません。 (逆に現在はrcmdnkpacにasciinemaのFormulaは入ってません。)
追記ここまで
上のFormulaを見ても分かる通り、setup.pyを使ったインストールならば 簡単に実装できるので、 他のPythonモジュールとかでもインストールにsetup.py を使ってインストールする様なものなら同じ様に作れると思います。
pip
を使ったインストールでは無いですが、
割りとsetup.pyを用意してくれてるものは多いので
取り敢えずはこれで代用可能。
その他
HomebrewでPython周りを整える場合には色々と注意点があるので HomebrewのPythonページを参考に。
また、直接Homebrewは関係ないですが、 PythonのアップデートとともにVimが使えなくなることもあるので その際はVim自体の再インストールが必要になります。
READMEでは
rm
つかってますがuninstall
と一緒です。 ↩