Bug 6839 - Дополнительный параметр к hsh и дополнительная программа
Summary: Дополнительный параметр к hsh и дополнительная программа
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: hasher (show other bugs)
Version: unstable
Hardware: all Linux
: P1 enhancement
Assignee: Dmitry V. Levin
QA Contact: qa-sisyphus
URL: http://lists.altlinux.ru/pipermail/si...
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-14 14:43 MSD by Sergei Epiphanov
Modified: 2008-05-27 02:02 MSD (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergei Epiphanov 2005-05-14 14:43:07 MSD
1. Хотелось бы увидеть параметр у hsh, позволяющий к построенному им самим
списку пакетов, подлежащих установлению в chroot, добавить ещё пакеты (и
зависимости, которые они потребуют для установки). Например:

hsh --add-build-list='libssl-devel' repo pack.src.rpm

позволяет добавить к списку пакетов, который формирует hsh при вызове команды

hsh repo pack.src.rpm

пакет libssl-devel, а потом найти по зависимости для него libssl, для libssl
своё и т. д. И полученный общий набор поставить в chroot.

2. Хотелось бы увидеть программу а-ля clean-apt-box, который позволяет удалить
одновременно или по отдельности chroot-дерево и кэш. Например:

clean-alt-box --chroot /home/user/Repo

удалит всё из каталога /home/user/Repo/chroot

clean-apt-box --cache /home/user/Repo

удалить всё из каталога /home/user/Repo/cache

Особенно желательно вычищать chroot, так как иначе приходится возиться с user_a,
user_b и постоянными переходами между ними. Ну или чтобы hsh вычищал chroot сам
после каждой сборки.
Comment 1 Alexey Gladkov 2005-05-14 15:51:01 MSD
(In reply to comment #0)
> hsh --add-build-list='libssl-devel' repo pack.src.rpm

Есть опция --pkg-build-list . Она вас не устраивает ?

> clean-alt-box --chroot /home/user/Repo

Для этого есть утилита rmchroot.

> clean-apt-box --cache /home/user/Repo
> 
> удалить всё из каталога /home/user/Repo/cache

Зачем это нужно?

Comment 2 Sergei Epiphanov 2005-05-14 16:31:21 MSD
(In reply to comment #1)
> (In reply to comment #0)
> > hsh --add-build-list='libssl-devel' repo pack.src.rpm
> 
> Есть опция --pkg-build-list . Она вас не устраивает ?

Пытался. Эта опция отбрасывает список, созданный программой hsh, и пытается
установить ТОЛЬКО те пакеты, которые приведены в этом списке. Как-то уж очень
неудобно получается, когда приходится самому выискивать зависимости пакетов и
прописывать их ВСЕ в эту опцию. Так написано и в инструкции. А мне хотелось бы
только ДОБАВИТЬ к списку.
 
> > clean-alt-box --chroot /home/user/Repo
> 
> Для этого есть утилита rmchroot.

Что-то не нашёл. Где она запаковывается?

> > clean-apt-box --cache /home/user/Repo
> > 
> > удалить всё из каталога /home/user/Repo/cache
> 
> Зачем это нужно?

Потому что при попытке собрать postfix из-за старого кэша hsh писал, что
net-scripts версии меньше 1.6.0-alt10 конфликтуют с coreutils, хотя в
репозитории уже была вышеуказанная версия. Только когда догадался вычистить кэш,
ошибка пропала.
Comment 3 Dmitry V. Levin 2005-05-14 16:32:33 MSD
Что касается выборочного удаления, то я не вижу в этом смысла.
Удалить сборочный чрут можно с помощью /usr/share/hasher/rmchroot.
Comment 4 Sergei Epiphanov 2005-05-16 11:25:21 MSD
(In reply to comment #3)
> Что касается выборочного удаления, то я не вижу в этом смысла.

Какое выборочное удаление? Я говорил только про очистку кэша предустанавливаемых
пакетов и про очистку chroot-окружения.

> Удалить сборочный чрут можно с помощью /usr/share/hasher/rmchroot.

А почему бы эту программу не вынести в /usr/bin или для hsh не сделать параметр
для hsh вида --rm-chroot, --clean-repo или --clean-chroot для единообразия
управления?
Comment 5 Sergei Epiphanov 2005-05-16 11:32:21 MSD
(In reply to comment #1)
> (In reply to comment #0)
> > hsh --add-build-list='libssl-devel' repo pack.src.rpm
> 
> Есть опция --pkg-build-list . Она вас не устраивает ?

Я попробовал собрать postfix с поддержкой tls. Действия:

1) Набираю 

hsh --build-args='--with tls' /home/user/repo postfix-2.1.5-alt3.src.rpm

После построения chroot, но перед началом сборки rpm выдал, что не стоит 
пакет libssl-devel.
2) Набираю

hsh -q --build-args='--with tls' 
--pkg-build-list='libssl-devel' /home/user/repo postfix-2.1.5-alt3.src.rpm

Выдал, что, оказывается, для построения chroot-дерева недостаточно пакетов 
libssl и libssl-devel. :)
Comment 6 Dmitry V. Levin 2005-05-20 02:19:10 MSD
В hasher-1.0.15-alt1 у hsh появился новый ключ --cleanup-only, с помощью
которого можно решать такие задачи.