stringtranslate.com

Коллекция портов

Коллекции портов (или деревья портов , или просто порты ) — это наборы make-файлов и патчей, предоставляемые операционными системами на основе BSD , FreeBSD , NetBSD и OpenBSD , в качестве простого метода установки программного обеспечения или создания бинарных пакетов. Обычно они являются основой системы управления пакетами , с портами, обрабатывающими создание пакетов, и дополнительными инструментами, управляющими удалением пакетов, обновлением и другими задачами. Помимо BSD, несколько дистрибутивов Linux реализовали похожую инфраструктуру , включая Gentoo Portage , Arch Build System (ABS) Arch , CRUX Ports и Void Linux Templates.

Главное преимущество системы портов по сравнению с моделью бинарного распространения заключается в том, что установку можно настраивать и оптимизировать в соответствии с доступными ресурсами. Например, системный администратор может легко установить 32-битную версию пакета, если 64-битная версия недоступна или не оптимизирована для этой машины. Наоборот, главный недостаток — время компиляции, которое может быть значительным. Например, полная установка системы FreeBSD с использованием портов может занять несколько дней, в зависимости от оборудования.

Порты FreeBSD

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

NetBSD's pkgsrc

Коллекция портов NetBSD pkgsrc отличается тем, что она нацелена на то, чтобы быть переносимой и может использоваться на ряде операционных систем, помимо самой NetBSD, включая другие BSD, SmartOS / illumos , macOS , [3] MINIX 3 , Linux [4] и другие Unix-подобные . pkgsrc была создана в августе 1997 года на основе существующей системы портов FreeBSD. Она следует ежеквартальному графику выпуска и по состоянию на октябрь 2018 года содержит более 22 000 пакетов. С выпуском 1.4 DragonFly BSD объявили, что они примут pkgsrc в качестве своей официальной системы управления пакетами. [5] Однако DragonFly BSD построили собственную реализацию портов под названием dports с выпуском 3.4 [6] и полностью перешли на нее с 3.6. Разработка ведется через их git. [7]

Порты OpenBSD

В отличие от FreeBSD Ports , на которых она изначально была основана, система портов OpenBSD предназначена как источник, используемый для создания конечного продукта, пакетов : установка порта сначала создает пакет, а затем устанавливает его. Порты состоят из makefile, текстовых файлов с описаниями и сообщениями об установке, любых исправлений, необходимых для настройки программы для работы в OpenBSD, и упаковочного листа, перечисляющего файлы, которые должны быть включены в пакеты. Дерево портов использует набор стандартных makefiles, некоторые из которых являются общими с исходным деревом, чтобы обеспечить большую часть его функциональности; эта общая инфраструктура включает в себя множество служебных функций для разработчиков портов и означает, что порты часто можно создавать очень просто.

В конце октября 2007 года разработчик OpenBSD Николай Штурм объявил, что дерево портов -stable следует считать неподдерживаемым из-за нехватки ресурсов. Это фактически заставило пользователей запускать -current ports/base tree, чтобы не отставать от обновлений безопасности. В 2009 году было решено возродить дерево портов -stable под руководством Роберта Наги и Джаспера Лиевисса Адрианса. [8]

Существует три неофициальных веб-сайта со списком портов и пакетов OpenBSD:

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

Ссылки

  1. ^ "CVS log for ports/Mk/bsd.port.mk". Проект FreeBSD. Архивировано из оригинала 2013-04-15 . Получено 2018-05-26 .
  2. ^ "Журнал CVS для src/usr.sbin/pkg_install/Makefile". Проект FreeBSD. Архивировано из оригинала 2013-04-14.
  3. ^ "Joyent Packages Documentation - Install On macOS". Joyent . Архивировано из оригинала 2018-10-06 . Получено 2018-10-10 .
  4. ^ "Joyent Packages Documentation - Install On Linux". Joyent . Архивировано из оригинала 2018-10-06 . Получено 2018-10-10 .
  5. ^ Диллон, Мэтью. "PKGSRC будет официально поддерживаться со следующего релиза". Архивировано из оригинала 2015-09-09 . Получено 2008-01-23 .
  6. ^ Шеррилл, Джастин. "Планирование выпуска DragonFly 3.4". Архивировано из оригинала 2016-03-10 . Получено 2016-05-05 .
  7. ^ "GitHub - DragonFlyBSD/DPorts: Специализированная система сборки приложений для DragonFly BSD". GitHub . Архивировано из оригинала 2018-06-11 . Получено 2014-07-08 .
  8. ^ Йодловски, Уильям. "4.6-stable ports". Архивировано из оригинала 2011-06-12 . Получено 2009-12-29 .
  9. ^ "ports.openbsd.nu - frontend to ports". OpenBSD Journal . 2006-08-09. Архивировано из оригинала 2018-05-27 . Получено 2018-05-26 .
  10. ^ Эспи, Марк (2013-06-07). "Re: Почему нет pkg_find(1)?". [email protected]. Архивировано из оригинала 2022-04-10 . Получено 2018-05-26 .
  11. ^ "Время прощаться". 2023-01-30 . Получено 2023-11-02 .
  12. ^ "Введение в ports.su — зеркало ports-readmes и поиск портов". OpenBSD Journal . 2013-05-02. Архивировано из оригинала 2018-05-27 . Получено 2018-05-26 .

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