Обновление портов FreeBSD

Еще недавно, буквально в FreeBSD 6.0, в базовой системе наконец то появилась утилита для работы c cvsup. Теперь отпала необходимость, сразу после установки системы, вытягивать откуда то собранный пакет cvsup-without-gui. Радости моей в общем нет границ. Но перейдем к практике.

Для того что бы обновить порты, а обновить их надо, для того что бы установить самое последнее програмное обеспечение, доступное в системе портов FreeBSD, необходимо сделать такие шаги:

1. Будем считать, что система у нас только что установлена и создавать все настройки будем с «нуля». Поэтому скопируем стандартные файлы настроек себе в домашнюю директорию.

mkdir ~/cvsup

cp /usr/share/examples/cvsup/ports-supfile ~/cvsup

2. В только что установленной системе доступны 2 текстовых редактора ee и vi, выберем тот, которым вам удобнее всего пользоваться и отредактируем ports-supfile.

Сделаем из него нечто такое:

*default host=cvsup.ua.freebsd.org

*default base=/var/db

*default prefix=/usr

*default release=cvs tag=.

*default delete use-rel-suffix

*default compress

ports-all

В приведенном примере, я удалил все лишнее и заменил host на cvsup.ua.freebsd.org. cvsup.ua.freebsd.org – это украинский репозитарий, насколько я понимаю, репозитарий без номера – это наиболее стабильный для данного региона. Полный список репозитариев FreeBSD, можно увидеть перейдя по ссылке. Выберите самый ближайший к вам и используйте его.

3. После того как файл исправлен и сохранен, можно приступать к обновлению дерева портов. Делается это так:

csup ~/cvsup/ports-supfie

После выполнения этой команды на экране должно появится примерно такое:

Connected to 213.186.196.224

Updating collection ports-all/cvs

Edit ports/Mk/bsd.sites.mk

Edit ports/audio/Makefile

Checkout ports/audio/slv2/Makefile

Checkout ports/audio/slv2/distinfo

Checkout ports/audio/slv2/files/patch-autowaf.py

Checkout ports/audio/slv2/files/patch-src-plugin.c

Checkout ports/audio/slv2/files/patch-wscript

Обновление системы портов началось.

4. По окончанию выполнения команды csup, необходимо выполнить еще такую команду:

make fetchindex

Эта команда предназначена для получения базы программ присутствующих в дереве портов. Базу можно так же создать с помощью комманды:

make index

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

5. По окончании этих действий, можно приступать к работе с портами, например для поиска вебсервера nginx в дереве портов нужно выполнить такую команду:

make search name=nginx

в результате выполнения появится:

Port: nginx-0.6.33

Path: /usr/ports/www/nginx

Info: Robust and small WWW server

Maint: osa@FreeBSD.org

B-deps: pcre-7.8

R-deps: pcre-7.8

WWW: http://sysoev.ru/nginx/

Port: nginx-devel-0.7.22

Path: /usr/ports/www/nginx-devel

Info: Robust and small WWW server

Maint: osa@FreeBSD.org

B-deps: pcre-7.8

R-deps: pcre-7.8

WWW: http://sysoev.ru/nginx/

Выберем нужный nginx и установим:

cd /usr/ports/www/nginx

make install clean

Установке часто предшествует конфигурационный диалог, так и произойдет при установке nginx. Выберем нужные пункты и нажмем на OK. Пойдет сборка и автоматическая установка. Если для установки порта, требуется установка других портов(зависимостей), нужные порты будут автоматически установлены. Не надо заботится о том, что для установки этой программы, нужно сначала установить – эту, ту и другую, и лишь потом нужную нам. Все пройдет автоматически.

Порты FreeBSD – представляют из себя одну из самых удобных систем управления установкой програмного обеспечения.

http://www.hilik.org.ua/обновление-портов-freebsd/

Обновлено: 12.03.2015