Пакета нет в Sisyphus: различия между версиями

Материал из ALT Linux Wiki
 
(не показано 8 промежуточных версий 4 участников)
Строка 1: Строка 1:
== Предварительная подготовка ==
Статья предполагает применение {{pkg|etersoft-build-utils}} (''см. [[Etersoft-build-utils howto]]'').
== Ищем инородный src.rpm ==
== Ищем инородный src.rpm ==


Строка 67: Строка 70:
</pre>
</pre>


=== 4. Подгоняем spec под altlinux policy  ===
=== 4. Подгоняем spec под alt linux policy  ===


$ rpmcs
$ rpmcs
Строка 78: Строка 81:
$  rpmcs                                                                               
$  rpmcs                                                                               
Using autodetected spec /home/users/wikitest/synapse/synapse.spec...
Using autodetected spec /home/users/wikitest/synapse/synapse.spec...
Packager: bla-bla <bla-bla@altlinux.org>
предупреждение: Macro %suse_update_desktop_file not found
предупреждение: Macro %suse_update_desktop_file not found
cleanup_spec for /home/users/wikitest/synapse/synapse.spec.tmpspecbeforechangelog...
cleanup_spec for /home/users/wikitest/synapse/synapse.spec.tmpspecbeforechangelog...
Строка 99: Строка 101:
</pre>
</pre>


В данном примере макрос %suse_update_desktop_file всё таки нужно подправить( найти аналоги в alt или узнать во что раскрывается этот макрос в suse )


=== 5. [https://www.altlinux.org/Собираем_в_Hasher Собираем в Hasher] ===
=== 5. [[Собираем в Hasher]] ===
<pre>  
<pre>  
$ rpmbsh
$ rpmbsh
Строка 106: Строка 109:


=== 6. [[Оправляем в Сизиф]] ===
=== 6. [[Оправляем в Сизиф]] ===
<pre>
$ ginit git.alt
$ rpmbs git.alt -u
</pre>


== Качаем исходники ==
== Качаем исходники ==
Строка 122: Строка 129:
</pre>
</pre>


=== 3. Заполняем согласно Altlinux policy файл .gear/rules [https://www.altlinux.org/Руководство_по_gear Руководство_по_gear] ===
=== 3. Заполняем согласно Alt linux policy файл .gear/rules [[Руководство по gear]] ===


=== 4. Пишем spec https://www.altlinux.org/SampleSpecs  ===
=== 4. Пишем spec [[SampleSpecs]] ===


=== 5. Фиксируем изменения  в gear-репозитории ===
=== 5. Фиксируем изменения  в gear-репозитории ===
Строка 132: Строка 139:
</pre>
</pre>
=== 6. [[Собираем в Hasher]] ===
=== 6. [[Собираем в Hasher]] ===
<pre>
$ rpmbsh
</pre>
=== 7. [[Оправляем в Сизиф]] ===
=== 7. [[Оправляем в Сизиф]] ===
<pre>
$ ginit git.alt
$ rpmbs git.alt -u
</pre>


[[Категория: Новый пакет]]
[[Категория: Новый пакет]]

Текущая версия от 13:39, 18 июня 2023

Предварительная подготовка

Статья предполагает применение etersoft-build-utils (см. Etersoft-build-utils howto).

Ищем инородный src.rpm

1. Поиск по дистрибутивам с пакетами rpm

$ rpmgp -a Имя_пакета

$  rpmgp -a synapse

List for alt:
    synapse-0.2.99.1-alt2.src.rpm

List for altautoimports:
    perl-Business-OnlinePayment-SynapseGateway-0.01-alt1.src.rpm
    perl-Synapse-CLI-Config-0.1-alt1.src.rpm
    perl-Synapse-Logger-0.1-alt1.src.rpm
    perl-Synapse-MailSender-1.4-alt1.src.rpm
    perl-Synapse-Monitor-Listener-0.3-alt1.src.rpm

List for rosa2014c:
    synapse-0.2.10-2.src.rpm

List for suse:
    synapse-0.2.10-10.1.6.src.rpm.mirrorlist

List for suse-factory:
    synapse-0.2.99.1-1.2.src.rpm

List for gitaltgears:
    /gears/s/synapse.git

2. Качаем нужный src.rpm

$ rpmgp -da Имя_пакета.src.rpm

$  rpmgp -da synapse-0.2.99.1-1.2.src.rpm
--2015-10-05 21:08:01--  http://ftp5.gwdg.de/pub/opensuse/source/factory/repo/oss/suse/src//synapse-0.2.99.1-1.2.src.rpm
Распознаётся ftp5.gwdg.de (ftp5.gwdg.de)… 134.76.12.5, 2001:638:60f:110::1:1
Подключение к ftp5.gwdg.de (ftp5.gwdg.de)|134.76.12.5|:80... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа... 200 OK
Длина: 440583 (430K) [application/x-rpm]
Сохранение в: «synapse-0.2.99.1-1.2.src.rpm»

100%[=====================================================================================>] 440 583     42,9KB/s   за 9,9s   

2015-10-05 21:08:12 (43,6 KB/s) - «synapse-0.2.99.1-1.2.src.rpm» сохранён [440583/440583]


List for suse-factory:
    synapse-0.2.99.1-1.2.src.rpm

$  ls
synapse-0.2.99.1-1.2.src.rpm

3. Готовим gear-репозиторий

$ gear-srpimport Имя_пакета.src.rpm

$  mkdir synapse
$  cd synapse
$  git init
$  gear-srpmimport ../synapse-0.2.99.1-1.2.src.rpm

4. Подгоняем spec под alt linux policy

$ rpmcs

Читаем об ошибках и исправляем их.

Успешное завершение выглядит примерно так

$  rpmcs                                                                               
Using autodetected spec /home/users/wikitest/synapse/synapse.spec...
предупреждение: Macro %suse_update_desktop_file not found
cleanup_spec for /home/users/wikitest/synapse/synapse.spec.tmpspecbeforechangelog...
исправляем название и релиз...
предупреждение: Macro %suse_update_desktop_file not found
fix obsoleted constructions...DONE
fix build requires...
предупреждение: Macro %suse_update_desktop_file not found
fix package requires...
предупреждение: Macro %suse_update_desktop_file not found
fix groups...
предупреждение: Macro %suse_update_desktop_file not found

Total used replacement rules: 
Add changelog with initial build
предупреждение: Macro %suse_update_desktop_file not found
предупреждение: Macro %suse_update_desktop_file not found
предупреждение: Macro %suse_update_desktop_file not found
DONE

В данном примере макрос %suse_update_desktop_file всё таки нужно подправить( найти аналоги в alt или узнать во что раскрывается этот макрос в suse )

5. Собираем в Hasher

 
$ rpmbsh

6. Оправляем в Сизиф

$ ginit git.alt
$ rpmbs git.alt -u

Качаем исходники

1. Качаем исходники

$ wget www.internet.net/Имя_пакета.{bz2,gzip,xz}

2. Создаём gear-репозиторий

$ mkdir -p synapse/.gear
$ cd synapse
$ git init
$ touch .gear/rules
$ gear-update -c ../synapse.tar.xz synapse

3. Заполняем согласно Alt linux policy файл .gear/rules Руководство по gear

4. Пишем spec SampleSpecs

5. Фиксируем изменения в gear-репозитории

$ git add .
$ gear-commit -a

6. Собираем в Hasher

 
$ rpmbsh

7. Оправляем в Сизиф

$ ginit git.alt
$ rpmbs git.alt -u