[devel] Re: Q: Python packaging howto

Mikhail Zabaluev =?iso-8859-1?q?mhz_=CE=C1_altlinux=2Eorg?=
Вс Фев 22 22:59:08 MSK 2004


Hello Alexey,

On Sun, Feb 22, 2004 at 06:26:59AM +0600, Alexey Morozov wrote:
>
> > > Этот же трюк позволит избавиться от --with-pythonXY и таинственного
> > > макроса setup_python_module: тем, кто захочет зафиксировать версию
> > > python в своей сборке, достаточно будет вставить
> > > %set_python_version X.Y в spec.
> > Логично.
> Нет. Не решает изначальную задачу. Собственно, весь сыр-бор начался, когда
> стало понятно, что с одновременным существованием в _девелоперском_
> репозитории двух версий питон надо что-то делать. С одной стороны, надо,
> конечно, мигрировать всем на новый питон, с другой, не всегда возможно
> собрать и _оттестировать_ под новый питон все имеющиеся в репозитории модули
> (пример - Zope и, кажется, PyQt). 

Надо сказать, предложенная схема тоже не решает проблемы полностью;
при автоматической пересборке в hasher все равно получается один
из вариантов, два сделать можно только очень исхитрившись.
Да и непонятно, стоит ли. Если кому-то позарез нужна сборка под
"не тот" ABI, пусть пересобирает. В конце концов, незамороженный
Sisyphus не предназначен для удовлетворения потребностей конечных
пользователей.
Сколько сейчас пакетов, которые нужны и под 2.2, и под 2.3?
Может быть, имеет смысл закатать только их, вручную,
из разных src.rpm с отличающимися spec? Точнее, предоставить
legacy-вариант python22-%name, а вариант 2.3 оставить под родным именем?
При условии, что версия ABI для каждого модуля и зависимостей на него
будет прописана жёстко, например, предложенным мной способом, проблем
с зависимостями быть не должно.

> А что делать с src.rpm'ами - действительно вопрос. Оптимальным ответом на
> него было бы: вообще не генерить src.rpm для сборок с --with pythonXY.
> Или, как я уже говорил (и это, видимо, технически более осуществимо, как
> мне теперь уже /кажется/), привязывать и src.rpm к той специфической версии
> питон, которая была указана при сборке.

Загвоздка в том, что .src.rpm не зависит от опций --with и --enable.
Должно быть однозначное соответствие между .spec и .src.rpm,
иначе получаются пакеты с разными именами, не отличающиеся ни
одним байтом.

Итак, я предлагаю не уродовать имена в общем случае, оставив эту
практику для сборок отдельных модулей, по каким-либо причинам нужных
под старый python, когда уже есть тот же модуль под новый. И уж в
этом случае делать и отдельный .src.rpm.

-- 
Stay tuned,
  MhZ                                     JID: mhz на altlinux.org
___________
Go slowly to the entertainments of thy friends, but quickly to their
misfortunes.
		-- Chilo
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20040222/1870560d/attachment-0002.bin>


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