Введение

Управляющий пакетами для macOS

MacPorts, ранее DarwinPorts, — это менеджер пакетов для macOS и Darwin. Это проект с открытым исходным кодом, целью которого является упрощение установки другого программного обеспечения с открытым исходным кодом. Он функционально схож с Fink и коллекциями портов BSD. MacPorts поддерживает универсальные двоичные файлы для версий macOS на PowerPC, Intel и Apple silicon, однако для перехода с установки MacPorts на PowerPC на версию для Intel Mac требуется переустановка всех установленных портов.

Передние части

[[Файл:Сайт MacPorts Ports.png|thumb|214x214px|Домашняя страница сайта MacPorts Ports с существенными улучшениями пользовательского интерфейса, внесёнными в программу в 2020 году. На ней отображается информация об отдельных портах, такая как статистика установки и история сборки. Пользователи могут при желании войти в систему, чтобы получать уведомления об обновлениях портов.]

История

thumb|Джордан Хаббард, один из основных создателей MacPorts, возглавлявший UNIX-команду Apple.|143x143px|left
MacPorts был запущен в 2002 году при участии ряда сотрудников Apple Inc., включая Лэндона Фуллера, Кевина Ван Вехтена и Джордана Хаббарда. OpenDarwin был закрыт в 2006 году. DarwinPorts затем был размещен на Mac OS Forge, сервисе хостинга проектов с открытым исходным кодом, созданном и поддерживаемом Apple Inc. для сторонних проектов, не поддерживаемых Apple. Чтобы подчеркнуть ориентацию проекта на macOS, его название было изменено на MacPorts. В рамках этого изменения git был использован в качестве новой системы контроля версий, хотя Trac по-прежнему предпочтительнее для управления задачами, чем GitHub issues. Версия 1.0 была выпущена 28 апреля 2005 года. В декабре 2005 года проект достиг важной вехи, превысив 3000 портов. В то время установка пакетов подразумевала загрузку исходного кода и его компиляцию на компьютере пользователя. Версия 2.0, выпущенная в 2011 году, представила поддержку предварительно скомпилированных бинарных архивов; по умолчанию порты устанавливаются с использованием предварительно скомпилированного бинарного архива, если он доступен, в противном случае они собираются из исходного кода. По состоянию на 2023 год MacPorts насчитывает более 33 600 портов, а поддержка на основе усилий сообщества доступна.

Реализация

MacPorts устанавливает программное обеспечение поверх операционной системы, предоставляя более новые версии предустановленных пакетов или программного обеспечения, отсутствующего в macOS. Это отличается от других систем управления пакетами, таких как APT и DNF, которые являются частью операционной системы. По этой причине MacPorts иногда называют системой наложения (overlay distribution). Другие примеры включают Fink и Homebrew. В отличие от FreeBSD Ports Collection, которая устанавливает программное обеспечение в /usr/local, MacPorts по умолчанию хранит свои данные в /opt/local, хотя это можно изменить при компиляции MacPorts из исходного кода. Причина этого изменения заключается в том, что другие системы управления пакетами могут перезаписать установленное MacPorts программное обеспечение, или наоборот. Выделенный каталог помогает избежать этой проблемы. Fink придерживается аналогичного подхода, устанавливая свои данные по умолчанию в /sw.

Разработка

thumb|Беджи встречи MacPorts 2018.|185x185px|слеваthumb|Разработчики MacPorts на встрече 2019 года в Scout Center Bohinj, Словения.|221x221pxПакеты находятся в ответственности отдельных сопровождающих, которые указаны в portfile. Ожидается, что они будут обновлять порт и применять исправления ошибок при необходимости. Любой, кто хочет изменить portfile, должен уведомить сопровождающего перед применением изменений, хотя это не всегда требуется для незначительных изменений. Любой желающий может внести вклад в MacPorts, как правило, через pull requests, а участники могут подать заявку на права коммита после демонстрации хорошей работы в качестве сопровождающего. Команда членов MacPorts, известная как руководители проекта, помогает вести и координировать проект. Начиная с 2016 года, встречи проводятся периодически, примерно раз в год. Обычно они проходят в Словении и позволяют членам MacPorts работать над будущим развитием. Пользователи могут просматривать аналитические данные на веб-сайте MacPorts.