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: