[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Собственный репозиторий



Задумал я тут перевести свой репозиторий со старинной (еще времен  hamm)
структуры на современную структуру с pool.
В частности, и по причине того, что теперь необходимо поддерживать две
архитектуры - i386 и amd64

Попробовал воспользоваться reprepro. Наткнулся на две проблемы:

1. Штатным способом добавления пакетов в reprepro является указание
файла changes. Впрочем с .dsc эффект был бы тот же самый.

У меня схема работы следующая
1. Собирается (при помощи pdebuild) пакет для i386. Понятно, что процесс
творческий, требует каких-то правок и пересборок. Но вот пакет
получился. Далее подсовываем получившийся dsc-файл команде 
pbuilder build --configfile /etc/pbuilder.amd64.rc

Получаем пакеты для второй архитектуры. Но при пересборке таким способом
пересобирается пакет исходников, и получается немножко другой diff.gz 
информация о котором и прописывается в .changes. А структура
хранения pool предполагает что .diff.gz архитектруно независим и общий
для всех арихитектур. И вообще-то он именно такой, а различия чисто
технические.

2. В процессе разработки пакета часто бывает несколько неудачных
попыток. Задирать при каждой такой попытке номер версии - как-то не
хочется. Они у меня тогда быстро трех и четырехзначными станут.

Но мне не удалось найти в документации на reprepro такой ключик, чтобы 
он увидев что переданные ему в команде include файлы уже существуют,
молча бы заменил их на  указанные в своей базе и в репозитории.

Злобно ругается, что файл с таким именем и другой контрольной суммой
существует, и отваливается. Удалять же вручную все пакеты, собираемые
из одного исходника - так у меня одного vim 26 разных пакетов.


Соответственно, вопрос к тем, кто уже давно на pool перешел - как вы с
этим справляетесь, или что используете вместо reprepro


Reply to: