[devel] packages
Alexey I. Froloff
=?iso-8859-1?q?sir=5Fraorn_=CE=C1_immo=2Eru?=
Пн Сен 8 13:03:11 MSD 2003
* Anatoly A. Yakushin <yakushin на umail.ru> [030908 12:09]:
> Однако хотелось бы хоть какую-то членораздельную минимальную
> документацию по hasher или sandman (желательно по обоим).
"Не под воздеёствием ваших речей, но исключительно из уважения к
Хоботову" (C) ;-)
Корявенько, конечно, но я старался описать именно
последовательность действий, чего так не хватает в документации к
sandman'у...
=== cut ===
sandman mini-HOWTO
"Первым делом... Что первым делом? А! Пианину куплю!" (С) Падал
прошлогодний снег
$ apt-get install sandman sandman-server
Внимательно читаем доку (/usr/share/doc/sandman-server-*/README.sandd) и
понимаем, что ничего не понимаем.
Я буду рассказывать на примере Master 2.2 (он у меня сейчас под рукой).
Настраиваем /etc/sandman/repos:
[global]
target = i586
distribution = ALT Linux
vendor = ALT Linux Team
cvsroot = /var/cvsroot
[master]
cvsmodule = release
stable = file:/var/ftp/pub/distributions/ALTLinux Master/current/i586 updates hotfix main addon compat
# Вот такой у меня хитрый stable ;-)
basesystem = setup glibc-core filesystem basesystem
buildsystem = basesystem rpm-build
Внимательно читаем /usr/share/doc/sandman-server-*/sudoers.sample и
кладём его в /etc/sudo.d (не забудьте проверить права!)
Инициализируем cvs (рекомендуется использовать метод ext, настройте sshd
и ключи):
$ cvs -d :ext:$LOGNAME на localhost:/var/cvsroot init
$ cvs -d :ext:$LOGNAME на localhost:/var/cvsroot co CVSROOT
$ cd CVSROOT
$ $EDITOR users
Добавляем строчку:
username:"First Last <id на altlinux.org>"
$ htpasswd -c passwd usename
Вводим пароль
$ cvs add users passwd
$ $EDITOR checkoutlist
Добавляем строчки:
users No users file
passwd No passwd file
$ cvs commit users passwd checkoutlist
$ mkdir ../release && cd ../release
Копируем release installer macros modules из
/usr/share/doc/sandman-server-*/*.sample и слегка редактируем. Например
у меня в modules содержится только:
[master]
* = packages
$ touch {release,installer,macros}.generic
Создаём модуль release в cvs:
$ cvs -d :ext:$LOGNAME на localhost:/var/cvsroot import release me start
(Более подробную документацию по cvs можно найти в info cvs)
$ cd ..
$ mv release release.orig
$ cvs -d :ext:$LOGNAME на localhost:/var/cvsroot co release
$ ls -l release
Проверяем что всё нормально.
$ mkdir packages
$ cd packages
$ cvs -d :ext:$LOGNAME на localhost:/var/cvsroot import packages me start
$ cd ..
$ mv packages packages.orig
$ cvs -d :ext:$LOGNAME на localhost:/var/cvsroot co packages
$ ls -l packages
Проверяем что всё нормально.
Создаём дерево для sandman'а:
$ sudo mkdir -p /var/lib/sandman/master/{stable/{SRPMS.master,i586/{RPMS.master,base}}}
$ sudo chown -R sandman:sandman /var/lib/sandman/master
Прописываем sandman'ские хуки:
$ cd CVSROOT
$ $EDITOR commitinfo
Добавляем строчки:
release/* /usr/bin/sandctl -hook cvs:commit
packages/* /usr/bin/sandctl -hook cvs:commit
$ cvs commit commitinfo
Запускаем демона:
$ sudo /sbin/service sandd start
По идее должен завестить...
$ sandcl -d usename:пароль@localhost:/master querynames \*
...должен немно подумать (на самом деле он создаёт
/var/cache/sandman/master) и выдать пустой список.
... to be continued ...
=== cut ===
--
Regards, Sir Raorn.
-------------------
Функции типа strcpy/sprintf вредны не из-за опасной реализации, а сами по
себе, из-за своей семантики.
-- ldv in devel@
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20030908/b2b772c8/attachment-0001.bin>
Подробная информация о списке рассылки Devel