以前、はこべにっき# - MacPortsでステキなUNIXツールをインストールでMacPortsの紹介をしました。今回は、、MacPorts標準では用意されていないソフトウェアがインストールできるようになるPrivatePortsを今更ながら利用してみました。
MacPortsではソフトウェアをインストールするのに、ソフトウェアのソースコードの場所やインストール方法を指定したportfileというものを使っています。普通にMacPortsを使っているとデフォルトで用意されたportfileを使ってソフトウェアをインストールすることができます。
PrivatePortsというのは、MacPortsでデフォルト以外で、有志が作成したportfile達の事を指します。PrivatePortsを使えば、普通MacPortsではインストールできないソフトウェアやパッチが適応されたソフトウェアを使う事ができるようになります。ありがたやありがたや。
うちもKaoriYaパッチのvimがこの方法でつかえると知ったので、このPrivatePortfile/Vim - MacPortsWiki-JPをインストールしてみました。以下そのメモ。
まず、PrivatePortsのportfileを置くためのディレクトリを作成します。私は以下のようにしました。
$ mkdir /Users/yohei/localports
このディレクトリに、portfileを展開します。PrivatePortfile/Vim - MacPortsWiki-JPのvimを利用するには、PrivatePortfile/CMigemo - MacPortsWiki-JPにあるCMigemoも必要らしいので、それぞれのページから、最新のportfileをダウンロードして展開します。展開したファイルを/Users/yohei/localportsに置くと次のようになります。
$ ls /Users/yohei/localports
editors/ textproc/
これだけでは、portからは読み込めないらしく、インデックスを作成する必要があります。portindexコマンドでインデックスを作ります。これはportfileを追加するごとに必要だと思います、たぶん。
$ cd /Users/yohei/localports $ portindex Creating software index in /Users/yohei/localports Adding port editors/vim Adding port textproc/cmigemo Total number of ports parsed: 2 Ports successfully parsed: 2 Ports failed: 0
これで、portfileの配置はできました。しかし、このままだとportコマンドはあたらしくつくったlocalportsがどこにあるのかわかりません。そこで/opt/local/etc/ports/sources.confに次の一行を書き加えます。
file:///Users/yohei/localports
これであたらしく追加したportfileをportコマンドで使えるようになったはずです。確認すると、
$ port search vim vim editors/vim 7.1b.001 Vi workalike with many additional features vimdrop aqua/vimdrop 0.8 droplet for getting files loaded into vim vim editors/vim 7.1b.002 Vi workalike with many additional features vim-app editors/vim-app 7.0.224 Vim.app is a GUI version of the famous editor vim. p5-text-vimcolor perl/p5-text-vimcolor 0.11 syntax color text in HTML or XML using Vim. vim2html textproc/vim2html 1.46 vim2html converts any Vim-editable file into well-formed HTML
デフォルトのvim以外にも別のvimが現れるようになりました。一番上のvimがそうです。
後は依存モジュールであるcmigemoをインストールすれば、kaoriyaパッチのあたったvimがインストールできるようになります。うちは、以下のように新しくvimをインストールしました。
$ sudo port install cmigemo +utf8 $ sudo port install vim +huge +multibyte +perl +python +ruby +macvim +kaoriya +cscope +aqua
PrivatePortsはPrivatePortfile - MacPortsWiki-JPにまとめられていて、他にもいろいろなものが作成されているようです。ありがたや、ありがたや。
自分でも作れるようなので、まだMacPortsにないモジュールのportfileを作ってみるのもよいかもですね。