Создайте пакет debian с зависимостью от более старой версии пакета python-cherrypy3

У меня есть программа с пакетом debian в моем личном репозитории, который зависит от python-cherrypy3. Однако версия 3.5.0 python-cherrypy3, поставляемая с Ubuntu 16.04, содержит серьезную нефиксированную ошибку, которая не позволяет моей программе создать веб-сервер HTTPS. Я поместил версию 3.2.2 python-cherrypy3 в свой личный репозиторий. Затем поместите файл

Depends: python-cherrypy3 (<< 3.2.5)

в debian/control моего пакета. Ошибка начинается с версии 3.2.5 cherrypy, поэтому любая версия ниже этой версии является приемлемой. Но Ubuntu 16.04 apt-get не может разрешить зависимость и все же предпочитает более новую версию 3.5.

The following packages have unmet dependencies:
 my-package : Depends: python-cherrypy3 (< 3.2.5)
E: Unable to correct problems, you have held broken packages.

Если я сделаю apt-get install python-cherrypy3=3.2.2 и установлю более старую версию cherrypy из своего репозитория, то установка моего пакета работает нормально. Могу ли я как-то сделать это автоматически, поэтому, когда кто-то выпускает apt-get install my-package apt, автоматически устанавливает версию 3.2.2 из моего репозитория?

1
задан 7 June 2016 в 00:18

1 ответ

Это не может быть, покончили просто зависимости от Вашего пакета. Без специальной конфигурации, apt-get всегда предпочитает доступную последнюю версию, таким образом, даже если Ваш пакет зависит от python-cherrypy3 (<< 3.2.5), он выберет последнюю версию python-cherrypy3 доступный. И с тех пор Ubuntu 15.10 и выше имеет только 3.5.0 + , это - то, что Вы получите.

то, Что можно сделать, обеспечивают 3.2.5 версии, упакованные python-cherrypy3 в персональном репозитории, который использует эпоха номер , так, чтобы он был предпочтен по более новому пакету. Затем зависьте от этого.

2
ответ дан 7 June 2016 в 00:18

Другие вопросы по тегам:

Похожие вопросы: