[devel] Помощь с зависимостями в python

Ivan Zakharyaschev imz на altlinux.org
Вт Окт 15 22:44:04 MSK 2019


On Tue, 15 Oct 2019, Vitaly Lipatov wrote:

> > > Проваливается сборка пакета:
> > >         x86_64: NEW unmet dependencies detected:
> > > certbot-apache#0.38.0-alt1      python3(certbot) < 0
> > > 
> > > http://git.altlinux.org/tasks/237698/logs/events.5.1.log
> > > 
> > > При этом при сборке пакета certbot автовыставляется такое:
> > > Provides: letsencrypt = 0.38.0, python3(certbot) = set:edzs
> > > 
> > > Не пойму, почему не удовлетворяется зависимость.
> > > Не пойму, почему в зависимости написано < 0 и что это значит.
> > > Соответственно, не могу починить :(
> > 
> > python3(certbot) = set:edzs  означает что этот модуль лежит в
> > приватном месте, не стандартный путь поиска для python3 модулей
> А зачем пакет провайдит модуль из приватного места, если им никто не может
> воспользоваться?

Вообще-то, воспользоваться может, если специально обучен этому его код.

> > И действительно:
> > certbotdir %_datadir/%name
> 
> > 
> > Что бы сделать его "стандартным", вам нужно в спек добавить следующее:
> > %allow_python3_import_path %certbotdir

Если какой-то пакет умеет импортировать модули из нестандартного места, 
мейнтейнер пишет ему %allow_python3_import_path NEWPATH

Тогда и Requires у него поменяются (можно посмотреть в твоём примере) с

python3(certbot) < 0

на

python3(certbot) <= set:....

т.е. удовлетворить его смогут больше всяких разных Provides.

-- 
Best regards,
Ivan


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