Ports/upgrade


 * hanbook

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

Для обновления дерева портов предназначены программы Portsnap.

Для обновления программ установленных служат portupgrade, portmanager и portmaster. Это разные программы, выполняющие схожую задачу. Какую выбрать я не знаю. Ни одна из них не входит в состав системы и требуется их установка из портов.

/usr/ports/UPDATING читать для получения информации про критичные изменения в программах, которые могут повлиять на то что после обновления они не заработают.

Для удаления b-deps портов есть утилита pkg_cleanup (?)

Установка новой версии программы.
Установка порта после обновления дерева портов (или отдельной директории) обычным способом (make install clean) приведет к тому, что обновлено будет только эта программа, а находящиеся в зависимостях от неё останутся прежним. Кроме того, потребует сначала удалить программу, а потом повторно её установить. См. Ports/reinstall

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

Они умеют:
 * обновлять все установленные порты
 * обновлять отдельный порт (?)
 * обновлять отдельный порт и его зависимости
 * устанавливать новые порты (с некоторыми отличиями от make install)

Portupgrade c -R не просто обновит выбранное приложение, но и его зависимости. portupgrade -R firefox portmanager x11/gnome2

portmaster php5-5.3.2_1/ (имя из /var/db/pkg - php* не работает)

Обновить один порт - приложению котороя я ставлю не нравится, что у этого png предыдущая версия portupgrade png-1.4.8

указание конфигов (всех OPTIONS dialog) до начала сборки for porg in `pkg_version -ovl'<' |awk '{ print $1 }'` ; do     cd  /usr/ports/${porg} && make config-recursive done