[devel] libaudit и обновление

Mikhail Efremov sem на altlinux.ru
Пт Июл 16 17:45:48 UTC 2010


Hello!

Начало тут:
http://lists.altlinux.org/pipermail/sisyphus/2010-July/348268.html

> > > Всё понятно, libaudit обновился раньше других пакетов, что вполне
> > > естественно, однако из-за этого сломалось обновление.
> > > Вероятно, придётся вернуть в Сизиф libaudit.so.0 для обеспечения
> > > гладкости обновления.
> > 
> > Я вот только не соображу как его вернуть, чтобы он вытягивался при
> > обновлении.
> 
> Можно и не возвращать, достаточно было просто переименовать libaudit в
> libaudit1.  У нас это даже в policy, наверное, записано.

У нас нет такого policy. Только черновик. Впрочем, я уже начинаю его
нежно любить. Но о таких граблях там не упоминается.

> А сейчас, если переименовывать, придётся добавить
> Obsoletes: libaudit = 2.0.4-alt1
> чтобы корректно обновить libaudit-2.0.4-alt1.

Не получится. В libaudit лежит не только libaudit.so.1, но и
libauparse.so.0.
Единственный вариант, который я вижу - вынести libauparse в отдельный
подпакет. Т.е. прописать
для libaudit1:
Provides: libaudit = %version-%release
Obsoletes: libaudit = 2.0.4-alt1

для libauparse (или даже сразу libauparse0):
Conflicts: libaudit <= 2.0.4-alt1

Тогда при обновлении останется старый libaudit, содержащий
libauparse.so.0, пакет libauparse же не будет установлен. Т.к. у
libauparse сонейм не менялся, то проблемы быть не должно. Хотя и не
факт.
Правда, есть еще /etc/libaudit.conf, но он не изменился в новой
версии, и может принадлежать и libaudit, и libaudit1.
Видимо нужно и *-devel часть разбить, хотя это сломает сборку readahead.
Других пользователей libauparse (кроме самого audit) вроде нет.

Все это очень некрасиво, но других идей как решить проблему у меня нет.

-- 
WBR, Mikhail Efremov


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