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

Anton Farygin rider на basealt.ru
Пт Ноя 6 19:36:00 MSK 2020


On 06.11.2020 18:17, Vitaly Lipatov wrote:
> 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 можно использовать в той проверке, о которой 
> вы писали:
> «Можно добавить в обработку сборочных заданий проверку,
> предотвращающую расширение этого списка.»
Если ABI не отличается, то это не значит что библиотеки одинаковые.
>
> Я к тому, что нужно регламентировать существование одинаковых 
> библиотек в разных пакетах. Чтобы это было возможно при определённых 
> условиях (намеренном создании таких пакетов).

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

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

Мне это не нужно - я не считаю libX11 на сервере с php злом, большим чем 
php на сервере с php.

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



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