[devel] povides двух одинаковых библиотек в разных пакетах

Vitaly Lipatov lav на altlinux.ru
Пт Ноя 6 18:17:58 MSK 2020


Dmitry V. Levin писал 6.11.20 16:36:
> On Fri, Nov 06, 2020 at 04:09:35PM +0300, Vitaly Lipatov wrote:
>> Anton Farygin писал 6.11.20 11:52:
>> > On 06.11.2020 11:46, Антон Мидюков wrote:
>> >> Здравствуйте
>> >>
>> >> Обнаружил, что в сборки регулярок aarch64 уже довольно давно вместо
>> >> пакета libGLES устанавливается пакет mali-drv-baikalm. Вытягивает его
>> >> gst-plugins-good1.0 через provides libGLESv2.so.2
>> >>
>> >> В связи с этим у меня возник вопрос насколько это вообще правильно,
>> >> что подобные проприетарные пакеты предоставляют такие provides?
>> >>
>> > Неправильно вообще, что два разных пакета предоставляют одинаковую
>> > библиотеку, которая потом будет выбираться случайным образом при
>> > сборке дистрибутива или установке пакетов.
>> Выбор пакета случайным образом похож на баг в apt.
> 
> Я думаю, что речь всё-таки идёт не о выборе случайным образом,
> а о выборе, который почему-то оказался неожиданным.
Ожиданный выбор устраивается с помощью указания конкретного пакета. Если 
мы требуем просто библиотеку, нам достаточно всё равно, что приедет, 
особенно если мы знаем, что там возможны варианты.

>> Безусловно, разные пакеты могут предоставлять одинаковую библиотеку, 
>> это
>> даёт возможность выбора.
>> Конечно, такое должно быть допустимо только при одинаковом ABI у них,
>> чтобы клиент библиотеки не столкнулся с неожиданностями.
> 
> Одинаковость ABI ещё надо доказывать.
> В Сизифе есть abipkgdiff(1), можете его попробовать.
Так отлично, abipkgdiff можно использовать в той проверке, о которой вы 
писали:
«Можно добавить в обработку сборочных заданий проверку,
предотвращающую расширение этого списка.»

Я к тому, что нужно регламентировать существование одинаковых библиотек 
в разных пакетах. Чтобы это было возможно при определённых условиях 
(намеренном создании таких пакетов).

Конечно, это никак не отменяет усиление проверки одинаковых provides.


-- 
С уважением,
Виталий Липатов,
ALT Linux Team


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