Апр 132013
 

Переход с cvsup на subversion для обновления FreeBSD

Уже было анонсировано, что с 28 февраля 2013 года поддержка cvs будет прекращена. Использовать subversion для обновления FreeBSD довольно таки просто.
Первое, что необходимо, это установить сам subversion.

# cd /usr/ports/devel/subversion
#make install clean

Если у вас очень старая версия портов, то devel/subversion-freebsd

Для перехода желательно почистить папки /usr/src и /usr/ports
Клонирование дерева портов осуществляем командой:

# svn co svn://svn.FreeBSD.org/ports/head /usr/ports

Для скачивания исходных кодов мира и ядра нужно выполнить:

# svn co svn://svn.freebsd.org/base/releng/9.1/ /usr/src

Мы скачиваем ветку релиза 9.1 (releng/9.1/).
Узнать какие существуют актуальные на данный момент ветки можно на официальном сайте FreeBSD. Например, на момент написания заметки имеются ветки stable/9 и releng/9.0.
Все существующие ветки можно просмотреть через веб-интерфейс для svn по адресу: http://svnweb.freebsd.org.

Если вы использовали прокси-сервера, то вы можете заменить протокол svn на http или https: https://svn.freebsd.org/base/releng/9.1/.

Для обновление исходных кодов и портов необходимо командой svn update:

#cd /usr/src
# svn update
#cd /usr/ports
# svn update

обновление, переход, cvsup, subversion, обновления, FreeBSD, svn, update

Ноя 042012
 

Обновления портов freebsd cvsup

Данный метод устарел

Переход с cvsup на subversion для обновления FreeBSD

Первое, что необходимо сделать после установки FreeBSD, это обновить ветку ОС и список ports

# cd /usr/ports/net/cvsup-without-gui/
# make install clean

После успешной установки отправляемся в папку:

# cd /usr/share/examples/cvsup/
doc-supfile < -  для обновление  документации
ports-supfile < - для обновления портов
stable-supfile < - для обновления стабильной ветки FreeBSD

Начинаем обновление:

cvsup -g -L 2 ./doc-supfile -h cvsup.freebsd.org
cvsup -g -L 2 ./ports-supfile -h cvsup2.freebsd.org
cvsup -g -L 2 ./stable-supfile -h cvsup3.freebsd.org

Описание ключей:

-g типа не использовать  GUI
-L вывод на экран обновляемые действия
-h хост с которого будет происходить обновление

Так же вы можете создать на основе примеров свой supfile:

# SRC collection supfile
*default host=cvsup3.ua.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8 # Ваша текущая ветка
*default delete use-rel-suffix
*default compress
src-all

Использование *default release=cvs tag=RELENG_8
При получении или обновлении исходных текстов с использованием cvs или CVSup должен быть указан тег ревизии Тег относится либо к определенной линии разработки FreeBSD либо к определенному моменту времени. Первый тип называется »тегом ветви», второй тип называется »тегом релиза».
Все они, за исключением HEAD (который всегда работает), относятся только к дереву src/. Деревья ports/, doc/ и www/ не имеют тегов ветвей. Поэтому для ports/, doc/ и www/ используют *default release=cvs tag=.
RELENG_8 (рекомендую)
Ветвь разработки FreeBSD-8.X, известная также как FreeBSD 8-STABLE.
RELENG_8_3
Ветвь релиза для FreeBSD-8.3, используемая только для исправлений безопасности и других критических исправлений.

Можно автоматизировать процесс обновления…
Часто все рано не нужно обновляться.
Так что закидывай команду в крон и обновляемся раз в неделю.

#minute  hour    mday    month   wday    who     command
  10     12     6           *     *         root    cvsup -g -L 2 /usr/local/etc/supfile

После обновления ports, желательно так же обновить Index
Есть два варианта обновления:

1) собрать индексный файл самому (рекомендую)
cd /usr/ports && make index
2) скачать уже собранный индексный файл
cd /usr/ports && make fetchindex