Как обновить исходники и pkgsrc посредством cvsup

rmx аватар

Введение

Исходники NetBSD могут быть обновлены с помощью разнообразных средств.
Одно из них есть cvsup, которое по своей представляет из себя "FreeBSD стайл" для обновлений исходников системы.
CVSup - это CVS оптимизированной сетевой дистрибутивной файловой системой общего назначения.

Требования к дисковому пространству

Вам потребуется около 900 MB для полного дерева исходных текстов системы.

Сборка требуемых приложений

Сборка cvsup также легка, как запуск этих двух команд:

# cd /usr/pkgsrc/devel/cvsup ;
# make install clean

Также в дереве pkgsrc имеются прекомпилированные бинарники так что вы можете их вместо сборки cvsup

непосредственно.

Если вы не имеете начальных пакетов вы всегда можете загрузить tarball архив с

ftp://ftp.netbsd.org:/pub/NetBSD/packages/pkgsrc.tar.gz или с вашего локального ftp зеркала.
Список с доступными зеркалами доступен здесь http://www.netbsd.org/mirrors/
Переместите pkgsrc.tar.gz в директорию /usr и распакуйте его:

# tar zxf pkgsrc.tar.gz

Теперь создадим конфигурационный файл для cvsup:
Отредактируем файл /etc/supfile, добавив в него следущие строки:

### Tags: ###
*default release=cvs tag=. # NetBSD CURRENT
#*defaultrelease=cvs tag=netbsd-3.0-PATCH001
#*default release=cvs tag=netbsd-3-0
#*default release=cvs tag=netbsd-3

### CVSup sites: ###
#*default host=cvsup.se.netbsd.org
*default host=cvsup.no.netbsd.org
#*default host=cvsup.jp.NetBSD.org
#*default host=cvsup2.jp.NetBSD.org
#*default host=cvsup.uk.NetBSD.org
#*default host=cvsup.us.NetBSD.org

*default delete use-rel-suffix
*default umask=002

*default base=/usr # Локализация помещения репозитария
*default prefix=/usr # Где положить sup подкаталоги
*default compress # Используйте эту опцию если вы подкючены к Интернету по медленному кагналу связи

netbsd-src
netbsd-pkgsrc # Packages
#netbsd-htdocs # WWW pages
#netbsd-othersrc # Other Sources
#netbsd-xsrc # The X11 distribution
#netbsd-basesrc # The base distribution
#netbsd-syssrc # The kernel distribution
#netbsd-crypto # Crypto sources
#netbsd-sharesrc # The /usr/share distribution
#netbsd-gnusrc # GNU Sources
#netbsd-doc # Documentation

Далее создадим shell скрипт для легкого запуска новой сессии обновления.
Я его разместил в директории /usr/local/sbin/cvsrun, как и переменная LOCALBASE указывает на каталог /usr/local

(переменная LOCALBASE устанавливается в файле etc/mk.conf).
Вы же можете разместить этот скрипт где угодно , например в директорию /usr/pkg/sbin

Скрипт выглядит следущим образом:

#!/bin/sh
export PATH="/usr/local/bin:/usr/local/sbin:/usr/pkg/bin:/usr/pkg/sbin:${PATH}"

CVSUP=${CVSUP:-`which cvsup`}

echo Subject: `hostname` cvsup run output
${CVSUP} -g -L 2 /etc/supfile

Смените права доступа к скрипту так, что бы он мог исполняться только пользователем root

# chmod 700 /usr/local/sbin/cvsrun

Запуск cvsup

Теперь мы просто должны запустить команду cvsrun:

# cvsrun

И ваши исходники будут автоматически обновлены используя ваши описания из файла /etc/supfile.
Вывод команды будеть выглядеть следущим образом:

# cvsrun
Subject: xyz.yazzy.net cvsup run output
Parsing supfile "/etc/supfile"
Connecting to cvsup.no.netbsd.org
Connected to cvsup.no.netbsd.org
Server software version: SNAP_16_1h
Negotiating file attribute support
Exchanging collection information
Establishing multiplexed-mode data connection
Running
Updating collection netbsd-src/cvs
Edit src/bin/date/netdate.c
Add delta 1.25 2006.06.14.16.35.16 ginsbach
Edit src/crypto/dist/ssh/sshconnect.c
Add delta 1.35 2006.06.14.15.36.00 ginsbach

Это все чуваки.

Автор YazzY
Перевод rmx

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
kab00m аватар

Советую

Советую всобачить еще pkgsrc-wip с netbsd.se. Wip - это сборник пакетов, который собирается, но не дотягивает по стандартам до pkgsrc. Там 2 тысячи пакетов и все полезные :)

После исходников и pkgsrc добавьте в supfile:

*default host=cvsup.netbsd.se
*default prefix=/usr/pkgsrc

netbsd-pkgsrc-wip