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

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

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

> Название каталогов программы имеет заглавные буквы. Исправляю в SConstruct.
Это проблема?

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

> Создаю архив с исходниками. dh_make --create-orig использовать нельзя, потому
> что он не удаляет каталог GIT-а.
Если апстрим не предоставляет тарболов, делайте их руками через
git-export.

> (Зачем ему архив с исходниками, если он собирает из тех, которые лежат в
> каталоге программы, где собирается пакет?)
Архив с исходниками - часть 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 файлу со списком имён файлов?

> Добавляю каталоги, используемые пакетом (их нужно добавлять тут, ведь они
> всё-равно создадутся?)
> $ cat << EOF > debian/dirs
> /etc/rhvoice
> /usr/share/rhvoice
> EOF
Раз создадутся, то не нужно.

> Заменяю префиксы на штатные для Debian (префиксы есть в каких-то переменных 
> или
> так заменять нормально?):
Нормально.

> Затем, покопавшись в корневом 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, больше вам никто не поможет.

> Наконец, создаю пакет:
> dpkg-buildpackage -rfakeroot
-rfakeroot тыщу лет как по дефолту.


-- 
WBR, wRAR

Attachment: signature.asc
Description: Digital signature

Ответить