Как установить пакеты программного обеспечения на Mac? (MacPorts, Fink, что-нибудь лучше?)


41

Как бы вы порекомендовали мне установить на своем компьютере Mac OS X программное обеспечение для командной строки и другие пакеты? Я использовал MacPorts, и он всегда кажется довольно медленным, предположительно потому, что он должен компилировать пакеты на лету.

Я бы предпочел систему управления пакетами с бинарными пакетами, избавляя меня от необходимости компилировать вещи каждый раз, когда я хочу загрузить что-то новое. Я думаю, что у Fink есть бинарные файлы для некоторых пакетов, но я обычно вижу MacPorts, рекомендуемый в качестве системы для использования.

Как вы думаете, что работает лучше и почему? (Или есть другая система, о которой я не слышал?)

Ответы:


27

Я использовал Macports, потому что:

  • Это вообще более актуально
  • Macports кажется более распространенным / популярным
  • Все остальные, с кем я работаю, используют это

Когда я проводил собственное исследование по этой теме, когда прошлой осенью я получил свой MBP, Macports, как мне казалось, чаще всего рекомендовали по причине № 1 выше, следовательно, по причине № 2 (и, вероятно, по причине № 3).

Компиляция каждого пакета меня не беспокоит. Обычно он достаточно быстрый, чтобы не мешать работе. Но вы можете заглянуть в бинарные файлы портов, если собираетесь использовать macports.

Однако я перестал использовать Macports.

В этом пространстве также появился новый инструмент под названием Homebrew . Я переключился с Macports на Homebrew несколько недель назад, и я доволен как удар. Мне нравиться:

  • Он не устанавливает дубликаты библиотек - он использует существующие библиотеки системы.
  • Он устанавливается в домашний каталог пользователя - sudo не требуется и выполняет резервное копирование в TimeMachine.

Homebrew работает на Leopard или Snow Leopard, хотя иногда формулы должны быть изменены на Leopard.

Я думаю, что все мои коллеги теперь перешли на Homebrew. Он также набирает обороты в сообществах Ruby и Erlang (и, возможно, других OSS?).


4
Доморощенный не дублирует библиотеки - я бы прочитал, почему Macports использует свои собственные копии. trac.macports.org/wiki/FAQ#ownlibs
user151019

Что касается Homebrew, это было также интересно: superuser.com/questions/118384/…
Jonik

Homebrew просто лучше использовать этот MacPorts или Fink. И если в нем отсутствуют какие-либо пакеты, которые вам нужны, легко добавить свою формулу, чтобы добавить ее. Серьезно, используйте Homebrew, чтобы начать - скорее всего, вы не будете искать ничего другого.
Пол Робинсон

14

Вам не нужно выбирать между двумя.

MacPorts устанавливает программное обеспечение в / opt / local. Fink устанавливает в / sw.

Оба оставляют базовую систему Дарвина нетронутой, и они могут мирно сосуществовать.

Двоичные пакеты Fink хороши, но они не всегда актуальны. Я склонен использовать Fink, когда у них есть обновленный пакет, и я собираю из MacPorts, если они этого не делают.

Некоторые пакеты находятся только на одном или другом, так что удобно иметь их наготове.


2
Но все же мой вопрос остается. Вы не предоставляете никакой рифмы или причины, по которой я должен использовать, в каких ситуациях.
Софи Алперт

1
Я предполагаю, что вы разместили этот комментарий, прежде чем я опубликовал свою ревизию.
Легион

1
@Ben: Как остается вопрос? Легион дал плюсы и минусы обоих вариантов, чтобы вы могли принять решение об образовании. Что еще он должен сделать, решать за тебя?
Джош Хант

3
Как вы справляетесь с зависимостями? Если пакет fink A и пакет MacPorts B зависят от libThing, в конечном итоге вы получаете две версии libThing (по одной от каждого менеджера пакетов)?
dmckee

1
joshhunt: Когда я разместил комментарий, там были только первые три строки его ответа; он добавил два других после того, как я прокомментировал.
Софи Альперт

4

Финк партизан здесь, потому что

  • Пакеты, представляющие интерес для физиков элементарных частиц (как и я!), Очень современны
  • Я использую Debian на своих Linux-коробках. finkКомандная строка очень много , как aptitudeи я привык к dpkgподкреплениям

4

Если вы установите только несколько программ, все (fink, macports, homebrew) будет в порядке.

Но если вы интенсивный пользователь, я думаю, что подходит только macports. Пакет Финка слишком стар. Homebrew - это слишком молодой проект.

Также недавно я слышал, как кто-то использует pkgsrc на Mac OS X. И я могу попробовать pkgsrc. (Сейчас я использую macports, и в настоящее время у меня установлено 418 портов.)


2
С «пакет Fink является слишком старый», вы имеете в виду Fink слишком старый, или пакет с обеспечивается Fink слишком стар?
Эндрю Гримм
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.