[devel] repocop patches for %post/un_ldconfig

Dmitrij Maslennikov =?iso-8859-1?q?maslennikovdm_=CE=C1_gmail=2Ecom?=
Ср Апр 16 12:01:39 MSD 2008


15.04.08, Alexey Tourbin <at на altlinux.ru> написал(а):
>
> Понимаешь, нужно высокоуровневое семантическое описание того, что
> находится в пакете.  Тогда можно обрабатывать нетривиальные случаи,
> напр. condrestart сервисов.  А также не хочется играть в "большинство"
> пакетов, это не игра в проценты, и надёжность должна быть очень высокой.

А почему нет? Возможность удалить большинство совсем "тупых" скриптов -- это
уже неплохо.
Все не тривиальное можно будет оставить в спеке.

"МАСКА СКРИПТ" покрывает только самые тривиальные случаи (без
> аргументов, которые просто делают какой-то кеш-генерат).  Кроме того,
> остаётся открытым вопрос, чем парсить "МАСКУ СКРИПТ".  На Си это писать
> глупо, а на шелле это не хочется писать по другой причине -- выбор
> средств для модификаций rpmi гораздо сильнее ограничен, чем выбор
> средств для модификации rpmb.  Ну, в rpmb можно засунуть всё что угодно,
> и в худшем случае просто какие-то пакеты не пересобирутся, но мы потом
> просто rpmb поправим к следующему разу (достаточно, чтобы rpmb мог
> пересобрать сам себя, но это обычно проверяется).  А если в rpmi что-то
> обламывается, то это уже не проблемы разработчиков, а материализация
> духов.

Поэтому и не стоит приделывать обработку нетривиальных случаев к rpmi, а вот
почему не приделать тривиальные?

Короче тра-ля-ля, нужно думать, может ли эта идея быть универсально
> жизнеспособной, то есть не просто для большей половины пакетов, а для
> подавляющего числа пакетов (надёжность начинается с 99%), и что делать
> с пакетами, которые в это дело не вписываются.  А именно, надо,
> например, продумать схему 1) condrestart сервисов;
> и 2) control-dump/control-restore.  Можно это делать автоматически,
> ВЫВОДЯ (deduce) всю необходимою информацию из хедера пакета, или нет?

Нет! А зачем универсальное решение? Я вижу это предложение не в виде
супер-универсального решения,
а как некоторую небольшую оптимизацию.

Рассмотрим другой вопрос: добавление псевдопользователей и псевдогрупп
> в систему.  Если в rpm пакете (в списке %files) есть левые
> псевдопользователи и псведогруппы, тогда их можно добавлять
> автоматически.  Но иногда их нет, а есть лишь демон (бинарь), который
> при запуске рассчитывает, что этот пользователь/группа должны быть в
> системе.  Тогда уже на автомате ничего сделать нельзя.

А может и не надо ВСЕ делать на автомате? Только то, что можно? А все
нетривиальное оставим человеку.
А вот рутиной может занаться и железка, для этого она и нужна.

Это возвращает меня к начальному постулату: нужно высокоуровневое,
> семантическое, декларативное описание того, что именно находится
> в rpm пакете (кроме файлов).  Но это противоречит юникс-вею, что типа
> всё тупо и прозрачно, и никаких неявных связей нету.  А они есть, и
> их не всегда можно вывести.

По-моему все трактуют unix-way по-разному и всегда так, как это удобно в
ходе дискуссии.
Но при этом как его не трактуй, он не является безусловно необходимом к
исполнению.
Если в конкретном случае удобно по-другому, то может лучше и пойти
по-другому? А то
все это как-то на религию смахивает: мол некошерно -- не юних-вей.
----------- следующая часть -----------
Вложение в формате HTML было удалено...
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20080416/cc8e7d2c/attachment-0002.html>


Подробная информация о списке рассылки Devel