stringtranslate.com

Порты FreeBSD

Коллекция портов FreeBSD — это система управления пакетами для операционной системы FreeBSD . По состоянию на февраль 2020 года в коллекции доступно более 38 487 портов [1] . Он также был принят NetBSD в качестве основы своей системы pkgsrc .

Установка из исходников

В коллекции портов используются файлы Makefile, расположенные в иерархии каталогов , поэтому программное обеспечение можно собирать , устанавливать и удалять с помощью команды make . При установке приложения требуется очень незначительное (если вообще требуется) вмешательство пользователя после ввода начальной команды, такой как make install или make install clean, в каталоге портов нужного приложения . В большинстве случаев программное обеспечение автоматически загружается из Интернета , при необходимости исправляется и настраивается , затем компилируется , устанавливается и регистрируется в базе данных пакета. Если новый порт имеет необходимые зависимости от других приложений или библиотек, они устанавливаются заранее автоматически.

Для большинства портов уже настроены параметры по умолчанию , которые в целом считаются подходящими для большинства пользователей. Однако эти параметры конфигурации (называемые ручками ) иногда можно изменить перед установкой с помощью команды make config , которая вызывает текстовый интерфейс, позволяющий пользователю выбирать нужные параметры.

Исторически сложилось так, что каждый порт (или пакет программного обеспечения) обслуживался отдельным специалистом по сопровождению порта , который отвечает за обеспечение актуальности порта и обеспечение общей поддержки. Сегодня многие порты обслуживаются специальными целевыми группами или подпроектами, каждый из которых имеет специальный список рассылки (например, [email protected], [email protected] и т. д.), а необслуживаемые порты относятся к общей группеports@. FreeBSD.org. В общем, любой может стать сопровождающим портов, внеся в коллекцию свое любимое программное обеспечение. Можно также выбрать сохранение существующего порта без активного сопровождающего. [2]

Пакеты

Предварительно скомпилированные (двоичные) порты называются пакетами . Пакет можно создать из соответствующего порта с помощью команды make package ; предварительно собранные пакеты также доступны для загрузки из репозиториев пакетов, размещенных на FreeBSD. Пользователь может установить пакет, передав имя пакета команде установки pkg . При этом загружается соответствующий пакет для установленной версии FreeBSD , а затем устанавливается приложение, включая все возможные программные зависимости. По умолчанию пакеты загружаются из основного репозитория пакетов FreeBSD (pkg.freebsd.org), но если после обновления пакетов возникают какие-либо проблемы, предыдущая версия пакетов не может быть установлена, поскольку репозиторий запрещает индексирование подпапок. В этом случае пользователю необходимо обновить версию ОС до последней версии и установить последние пакеты.

FreeBSD поддерживает ферму сборки , называемую кластером Pointyhat , в которой собираются все пакеты для всех поддерживаемых архитектур и основных выпусков . Журналы сборки и известные ошибки для всех портов, встроенных в пакеты через кластер pointyhat, доступны в базе данных [3] , а журналы еженедельных сборок также доступны в архивах списков рассылки. [4]

Эти предварительно скомпилированные пакеты разделены на категории в зависимости от архитектуры, для которой они доступны. Пакеты далее разделяются на несколько каталогов «релизов», по одному для каждого текущего производственного выпуска, созданного из коллекции портов и поставляемого вместе с выпуском. Эти каталоги производственных выпусков никогда не обновляются.

Существуют также стабильные и текущие каталоги для нескольких основных веток выпусков. Они обновляются более или менее еженедельно. В большинстве случаев пакет, созданный для более старой версии FreeBSD, можно без труда установить и использовать в более новой системе, поскольку по умолчанию включена обратная двоичная совместимость между основными выпусками.

Названная система упаковки для бинарных пакетов [5]pkg заменила систему управления пакетами во FreeBSD 10. [6]

История

Джордан Хаббард передал свои макросы make порта в репозиторий FreeBSD CVS 21 августа 1994 года. [7] Его набор Makefile для установки пакета был передан годом ранее (26 августа 1993 года). [8] Структура основных портов сначала поддерживалась Хаббардом вместе с Сатоши Асами в течение нескольких лет. Позже для решения этой задачи была сформирована Группа управления портами.

Коллекция портов NetBSD pkgsrc и OpenBSD уходит своими корнями в FreeBSD.

DПорты

С момента своего выпуска проект 3.6 DragonFly BSD использует порты FreeBSD в качестве основы для собственной коллекции портов DPorts . Джон Марино из проекта DragonFly BSD создал репозиторий DeltaPorts — набор патчей и файлов, которые накладываются и изменяют порты FreeBSD для создания DPorts. [9] [10]

Смотрите также

Рекомендации

  1. ^ «О портах FreeBSD». freebsd.org . Проверено 8 декабря 2019 г.
  2. ^ "Справочник Портера". Проект FreeBSD.
  3. ^ «Журналы и ошибки сборки пакетов FreeBSD (кластер pointyhat)» . freebsd.org . Проверено 26 марта 2010 г.
  4. ^ «Списки рассылки FreeBSD: подписка на freebsd-pkg-fallout» .
  5. ^ «Глава 4. Установка приложений: пакеты и порты | Портал документации FreeBSD» .
  6. ^ «Примечания к выпуску FreeBSD 10.0-RELEASE | Проект FreeBSD» .
  7. ^ "Журнал CVS для портов/Mk/bsd.port.mk" . Проект FreeBSD. Архивировано из оригинала 15 апреля 2013 года . Проверено 5 января 2020 г.{{cite web}}: CS1 maint: неподходящий URL ( ссылка )
  8. ^ «Журнал CVS для src/usr.sbin/pkg_install/Makefile». Проект FreeBSD. Архивировано из оригинала 14 апреля 2013 года . Проверено 26 мая 2018 г.
  9. Шерил, Джастин (12 января 2013 г.). «Раннее образование DPorts». Дайджест DragonFly BSD . Архивировано из оригинала 28 февраля 2014 года . Проверено 12 апреля 2014 г.
  10. ^ Марино, Джон. «ДельтаПортс». Гитхаб . Проверено 12 апреля 2014 г.

Внешние ссылки