Продолжу увлекательную эпопею установки Midnight Commander под Mac OS X. На этот раз с применением системы Homebrew, которую мы поставили в прошлый раз.

Штатный Midnight Commander в Homebrew достаточно старый – версия 4.6.1 против 4.7.1. Обновление не помогло:

$ brew update
...
Initialized empty Git repository in /usr/local/.git/
From git://github.com/mxcl/homebrew
 * branch            master     -> FETCH_HEAD
Updated Homebrew from TAIL to 87869622.
No formulae were updated.

Решаю сделать свой пакет (формулу установки). Для этого воспользовался документацией “Formula Cookbook“.

Иду на сайт Midnight Commander в раздел Downloads. Ищем последнюю версию в формате tar.bz2:

34 mc-4.7.1.tar.bz2 Midnight Commander v4.7.1 (latest)

Создаю формулу, она откроется в TextMate:

$ brew create http://www.midnight-commander.org/downloads/34
Formula name [34]: mc
Warning: Formula midnight-commander is aliased to mc.
Please check if you are creating a duplicate.

md5-сумму я получил командой md5, предварительно списав исходники:

$ md5 ~/Downloads/mc-4.7.1.tar.bz2
MD5 (/Users/ctrld/Downloads/mc-4.7.1.tar.bz2) = 5bd69a47b4a0bd6904623a50863b1eeb

Сначала я экспериментировал с mc.rb, а потом его удалил и заменил файл /usr/local/Library/Formula/midnight-commander.rb, чтобы не было дублей (кстати, для вставки кода я решил попробовать сервис gist.github):

Попробовал поставить с включенными опциями отладки:

$ brew install -vd mc

Поставилось:

$ mc -V
GNU Midnight Commander 4.7.1
Virtual File System: tarfs, extfs, cpiofs, ftpfs, fish
With builtin Editor
Using the ncurses library
With subshell support as default
With support for background operations
With mouse support on xterm
With internationalization support
With multiple codepages support
Data types: char 8 int 32 long 64 void * 64 off_t 64 ecs_char 8

С русскими буквами проблем нет:

Если нужно пакет удалить, то это делается просто и быстро:

$ brew uninstall mc
Uninstalling /usr/local/Cellar/mc/4.7.1...

В общем на примере установки Midnight Commander я для себя понял, что если нравится копаться с ./configure и не ставить всяческий хлам, то Homebrew очень даже неплохой пакет. К сожалению, готовых формул для установки приложений пока по сравнению с MacPorts и Fink маловато – например, того же php нет.