[devel] [cyber] I: Sisyphus-20191130 x86_64 beehive_status: +14 -7 (727)

Paul Wolneykien manowar на altlinux.org
Пн Дек 2 10:43:23 MSK 2019


В Mon, 2 Dec 2019 14:34:34 +0700
Антон Мидюков <midyukov-anton на ya.ru> пишет:

> 02.12.2019 14:20, Paul Wolneykien пишет:
> > В Mon, 2 Dec 2019 01:31:51 +0300
> > "Dmitry V. Levin" <ldv на altlinux.org> пишет:
> >  
> >> On Mon, Dec 02, 2019 at 01:10:30AM +0300, Paul Wolneykien wrote:  
> >>> В Sun, 1 Dec 2019 14:46:28 +0300, Dmitry V. Levin пишет:  
> >>>> On Sun, Dec 01, 2019 at 11:25:08AM +0000, manowar на altlinux.org
> >>>> wrote:  
> >>>>> Воскресенье, 1 декабря 2019 г получено от Dmitry V. Levin:  
> >>>>>> On Sun, Dec 01, 2019 at 07:30:51AM +0000,
> >>>>>> manowar на altlinux.org wrote:  
> >>>>>>> Воскресенье, 1 декабря 2019 г получено от Dmitry V. Levin:
> >>>>>>>      
> >>>>>>>> On Sun, Dec 01, 2019 at 12:47:34AM +0300, Dmitry V. Levin
> >>>>>>>> wrote:  
> >>>>>>>>> Hi,
> >>>>>>>>>
> >>>>>>>>> Кто сломал сборку всех этих пакетов?  
> >>>>>>>> Очевидно, это был пакет nss-gost:
> >>>>>>>> $ comm -12 <(rpmquery --provides -p
> >>>>>>>> Sisyphus/files/x86_64/RPMS/libnss-3.47.0-alt1.x86_64.rpm
> >>>>>>>> |sort) <(rpmquery --provides -p
> >>>>>>>> Sisyphus/files/x86_64/RPMS/libnss-gost-3.47.0-alt1.gost1.2.x86_64.rpm
> >>>>>>>> |sort) |wc -l 124
> >>>>>>>>
> >>>>>>>> Альтернативные провайдеры являются источником ошибок, и
> >>>>>>>> пакет nss-gost - очередное тому напоминание.  
> >>>>>>> Я убрал явное дублирование Provides. Полегчало?  
> >>>>>> В libnss-gost ничего не изменилось:  
> >>>>> Тогда я не понимаю, какой именно Provides ломает сборку. Можно
> >>>>> где-нибудь посмотреть полный лог сборки сломавшихся пакетов?  
> >>>> Все они ломают сборку, там же библиотека, это пересечение должно
> >>>> быть пустым. То, что находится в libnss-gost, не должно быть
> >>>> libnss.
> >>>>
> >>>> Это даже не вопрос сборки, достаточно попробовать установить
> >>>> пакеты, которые нужны для сборочной среды.  
> >>>    Да, в самом деле, установка среды спотыкается на выборе
> >>> libnss-gost-devel для pkgconfig(nss). Но эту проблему несложно
> >>> обойти соответствующим изменением *.pc внутри libnss-gost-devel.
> >>> Может быть проблема имеет больше одного решения, и не нужно
> >>> избавляться от всех пересечений между libnss и libnss-gost?  
> >> Вы делаете пакет с альтернативной реализацией той же самой
> >> библиотеки, которая уже реализована в пакете libnss, с тем же
> >> soname, которое в libnss, и всё ещё надеетесь, что это может
> >> работать?  Нет, конечно, это не может работать.  Альтернативные
> >> реализации soname не работают, apt выберет не ту библиотеку,
> >> которую надо пользователю.  
> >    Подожди, у меня вот не сходятся как раз эти два факта:
> >
> >      а) альтернативные реализации soname не работают и
> >      б) apt выберет не ту библиотеку.
> >
> >    Это же разные вещи. Я исходил из того, чтобы поддержка ГОСТ
> > появлялась бы в Firefox (и других браузерах и программах, работающих
> > через NSS) очень простым способом: пользователь устанавливает вместо
> > штатной libnss пакет libnss-gost. (Сейчас патч для firefox просто
> > микроскопический и я думаю что вполне можно включить его в основную
> > версию пакета firefox.) Согласись, что это было бы проще и для
> > пользователя, и для поддержки пакетов.
> >
> >    И тут выясняется, что заменить одну библиотеку на другую можно --
> > слинкованнная с ней программа продолжит работать, --- но нет
> > гарантии, что apt выберет по умолчанию libnss, а не libnss-gost,
> > так? Т.е. альтернативные реализации soname работают с программами,
> > которые используют данные библиотеки, но "не работают" с apt.
> > Неужели действительно нет способа объяснить apt, что от него
> > требуется?  
> 
> А что, если собирать libnss-gost вместе с libnss из одного srpm? 
> Библиотеки класть в %_libdir/libnss/ и %_libdir/libnss-gost
> 
> А уже симлинки на библиотеки в %_libdir переключать через
> альтернативы.
> 
> Правда не уверен, что так с библиотеками возможно.

  Может быть и можно, но у меня сейчас возникла вот какая гипотеза:
а нельзя ли собирать libnss-gost с каким-то таким disttag, чтобы
apt не выбирал его для установки *без ведома пользователя*?


> >> По сути выбор из двух вариантов: поменять soname либо удалить.
> >>  
> >>>> Полные логи доступны в обычном месте:
> >>>> http://git.altlinux.org/beehive/logs/Sisyphus-x86_64/latest/error/
> >>>>      
> >>>>>> $ comm -12 <(rpmquery --provides -p
> >>>>>> Sisyphus/files/x86_64/RPMS/libnss-3.47.0-alt1.x86_64.rpm
> >>>>>> |sort) <(rpmquery --provides -p
> >>>>>> Sisyphus/files/x86_64/RPMS/libnss-gost-3.47.0-alt2.gost1.2.x86_64.rpm
> >>>>>> |sort) |wc -l 124  
> > _______________________________________________
> > Devel mailing list
> > Devel на lists.altlinux.org
> > https://lists.altlinux.org/mailman/listinfo/devel  
> 



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