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

Re: Вопросы по созданию пакета.



03.09.2012 21:40, Andrey Rahmatullin пишет:
> On Sat, Aug 25, 2012 at 09:41:31PM +0400, "Артём Н." wrote:
>> Как создаются и для чего нужны дифы, идущие вместе с некоторыми пакетами?
>> Например, с xorg-server. Есть orig и diff. Откуда?
> dpkg-source(1) SOURCE PACKAGE FORMATS
Спасибо. Пока ещё в процессе чтения maint-guide.

>> Получаю версию (как сделать, чтобы получалась по-человечески?):
>> $ RHV=$(sed -n 's/.*"package_version"\W*,\W*"Package
>> version"\W*,\W*"\(.*\)".*/\1/p' SConstruct)
> Я бы глазами посмотрел и руками написал.
Чем лучше?

>> Немного изменяю настройки: включаю библиотеку sonic и расстановку ударений через
>> апостроф (тут нужно делать патч или так нормально?):
> Всегда нужно делать патч, если вы хотите менять что-то в апстримных
> файлах.
Понял.

>> Название каталогов программы имеет заглавные буквы. Исправляю в SConstruct.
> Это проблема?
1. Это непривычно.
2. Исправление, ради исправления: хотелось попробовать сделать с патчем.

>> (Возможно ли сделать, чтобы заголовок патча создавался автоматически, штатными
>> средствами?)
> А где оно данные-то возьмёт?
Я не работал с quilt.

>> Создаю архив с исходниками. dh_make --create-orig использовать нельзя, потому
>> что он не удаляет каталог GIT-а.
> Если апстрим не предоставляет тарболов, делайте их руками через
> git-export.
Эээ... Это что? o.O Не нашёл такого у себя.
К тому же, чем плох tar --ignore-vcs?

>> (Зачем ему архив с исходниками, если он собирает из тех, которые лежат в
>> каталоге программы, где собирается пакет?)
> Архив с исходниками - часть source package.
Т.е., он просто производит проверки на соответствие того, что в архиве, тому,
что в каталоге? И больше никак не трогает архив?

>> Формат названия пакета: <имя>-<версия>
>> $ mv rhv_src rhvoice-$RHV
>> $ fakeroot tar --exclude-vcs -cf - rhvoice-$RHV| gzip - > rhvoice_$RHV.orig.tar.gz
> man git-export
Нету... Скрипт какой-то. Оно хоть в репозитории-то есть?

>> $ mv ../00chgname debian/patches && echo 00chgname > debian/patches/series &&
>> chmod +x debian/patches/series
> Какой ещё +x файлу со списком имён файлов?
Косяк. Там ошибся.

>> Затем, покопавшись в корневом SConstruct, нашёл переменную DESTDIR, которая
>> используется при установке:
>> override_dh_auto_install:
>>         dh_testdir
>>         dh_testroot
>>         scons DESTDIR=$(DESTDIR) install
>>         # Fucking scons doesn't create links...
>> #!!! (Как сделать нормальное создание ссылок? При установке в /tmp/dir/ scons их
>> создаёт, а при установке сюда - нет. Почему?)
>>         ln -s /usr/lib/libRHVoice.so.0.0.0 $(DESTDIR)/usr/lib/libRHVoice.so
>>         ln -s /usr/lib/libRHVoice.so.0.0.0 $(DESTDIR)/usr/lib/libRHVoice.so.0
>>         dh_installdirs
> Читайте SConstruct, больше вам никто не поможет.
<- сначала выучить Python.
:-)
Так что, увы... К тому же, патчить его что-ли, затем?

>> Наконец, создаю пакет:
>> dpkg-buildpackage -rfakeroot
> -rfakeroot тыщу лет как по дефолту.
Где-то в какой-то нагугленной статье было: оставил.

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


Reply to: