Как переопределить версию подпакета .deb? - PullRequest
0 голосов
/ 18 июня 2010

Мне нужно сделать .deb для нашего программного обеспечения, который включает в себя копию Drupal. Мне пришлось патчить Drupal, поэтому я не могу использовать стандартный Drupal из дистрибутива. Я хочу, чтобы результатом был файл с именем drupal6-rs_6.16_all.deb, но, поскольку в моем контрольном файле это подпакет, он «наследует» версию моего основного пакета, поэтому я получаю пакет drupal6-rs_6.0.6 _all.deb (6.0.6 - версия нашей собственной базы кода).

Я бы предпочел иметь возможность генерировать пакет Drupal из того же описания debian / *, а не создавать отдельное поддерево debian / * только для Drupal.

Можно ли это сделать? Я знаю, что с помощью RPM можно переопределить версию подпакета, но если я добавлю Version: 6.16 в заголовок debian / control подпакета, он (a) по-разному подсвечивается в vim для других записей заголовка и (b) имеет без эффекта.

Ответы [ 2 ]

1 голос
/ 22 июля 2010

Я должен иногда RTFM.Посмотрите на man dh_installchangelogs.Есть причина, по которой к нему добавлен суффикс s!

Да, похоже, вы можете переопределить версию двоичного пакета в пакете с несколькими двоичными исходными кодами.

0 голосов
/ 19 июня 2010

Поскольку в пакете с исходным кодом имеется только один файл debian/changelog, я считаю, что в пакете с исходным кодом может быть только одна версия.Если вы посмотрите на систему отслеживания пакетов Debian, она всегда ссылается на один номер версии - номер исходного пакета.Следовательно, двоичные пакеты, которые создаются исходным пакетом, имеют один и тот же номер версии.

Это оставляет вам две опции -

  1. Делайте все правильно- исправьте Drupal (возможно, с dpatch, поскольку пакет Drupal в Debian уже использует его) и оставьте в качестве отдельного пакета с исходным кодом.Поставьте суффикс номера версии (например, 6.17-1yourcompany1).Затем создайте пакет для своего собственного программного обеспечения, и ваша программа будет зависеть от Drupal.Теперь вы можете зависеть от drupal6 (=6.17-1yourcompany1), поэтому вы знаете, что у всех есть на самом деле патч.Было бы неплохо использовать личный репозиторий для распространения вашего программного обеспечения.

  2. Другой альтернативный вариант - использовать хакерский метод.Поскольку вы не хотите использовать отдельную папку debian/, используйте ее.Делаете ли вы два двоичных файла или один (со всем, что объединено в большой пакет) из исходного пакета, вам решать, какой номер версии вы хотите использовать - Drupal или вашу кодовую базу.

...