[devel] [[Обсуждение:SharedLibsPolicy]] (was: boost-1.42.0)

Денис Смирнов mithraen на altlinux.ru
Сб Апр 3 18:51:29 UTC 2010


On Sat, Apr 03, 2010 at 09:03:46PM +0300, Michael Shigorin wrote:

MS> Два месяца не архивировал почту -- всё равно не придумал...
MS> Хоть здесь: http://www.altlinux.org/Обсуждение:SharedLibsPolicy

Оба описанных метода с точки зрения пользователя, который делает
dist-upgrade между разными версиями дистирибутивов будет расценен как
"вредительство" и "этот [censored] apt выносит пол системы вместо
обновления".

Единственный работоспособный вариант -- это soname должна быть частью
имени бинарного пакета.

Т.е. идеальная схема обновления lib%name.so.1 на lib%name.so.2  выглядит
так:
- пересобираем lib%name1, отключив у него devel;
- собираем liba%name2, соответственно собирая lib%name-devel из него
- все пакеты, которые раньше были собраны с lib%name.so пинаем на
  пересборку по мере возможностей (этот процесс может затянуться на
  некоторое время)
- как только в репозитории не остается больше пакетов, которым был бы
  нужен lib%name1, и если он не нужен всяким проприетарным поделиям, то
  удаляем его из репозитория

В идеале также следовало бы с помощью того же repocop отлавливать те
пакеты, которые требуют пересборки с новой версией, ибо желательно чтобы в
дистрибутиве не было разных пакетов которые бы требовали разные версии
одной библиотеки (чтобы избежать вероятного взрыва).

Такая схема имеет ровно один недостаток -- при частичном обновлении есть
вероятность получить ситуацию, когда приложение по цепочке зависимостей
через разные библиотеки цепляет к себе две версии одной и той же
библиотеки.

Однако это именно проблема частичного обновления (делающие которое сами
себе буратины, тем более что это грабля весьма не частая).

Любая другая схема не работает, потому что apt -- тупой.

-- 
С уважением, Денис

http://mithraen.ru/
----------------------------------------------------------------------------

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20100403/af755c7d/attachment.bin>


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