Devel newbies: различия между версиями

Материал из ALT Linux Wiki
 
(не показано 11 промежуточных версий 3 участников)
Строка 1: Строка 1:
[[Категория:Devel]]
[[Категория:Devel]]
[[Категория:FAQ]]
[[Категория:errata]]
[[Категория:errata]]
{{stub}}
{{stub}}
Строка 17: Строка 16:
|-
|-
|Чистка спека (в частности, замена путей на макросы)||{{cmd|rpmcs package.spec}}
|Чистка спека (в частности, замена путей на макросы)||{{cmd|rpmcs package.spec}}
|-
|Проставление зависимостей сборки в спеке||{{cmd|buildreq package.spec}}
|-
|-
|Отменить локальные изменения в git ||{{cmd|git reset --hard HEAD}}
|Отменить локальные изменения в git ||{{cmd|git reset --hard HEAD}}
|-
|-
|Преобразовать спек для бранча 5.1 || {{cmd|rpmbph -M51}}
|Преобразовать спек для бранча p8 || {{cmd|rpmbp -b p8 package.spec}}
|-
|Показать зависимости пакета || {{cmd|rpmquery -R package}}
|-
|Посмотреть права на пакет erthad||{{cmd|wget -O - http://git.altlinux.org/acl/list.packages.sisyphus  {{!!}} egrep '^erthad'}}
|-
|Передать права на пакет <tt>kicad</tt> участнику команды с ником <tt>zver</tt>||{{cmd|ssh git.alt acl sisyphus kicad leader zver}}
|}
|}
== Как написать патч <ref>Оригинал находится [http://forum.altlinux.org/index.php/topic,927.msg23517.html#msg23517 здесь]</ref> ==
Рассмотрим стандартный случай - есть каталог {{path|~/RPM}}, в котором есть {{path|BUILD}}, в котором лежит распакованный тарбол софтины {{path|softina-1.0}}.
К примеру, нам нужно сделать изменения в файле {{path|main.cpp}}
* {{cmd| cd ~/RPM/BUILD/softina-1.0}} переходим в каталог с исходниками
* {{cmd| cp main.cpp main.cpp.orig}} сохраняем оригинал
* Правим файл {{path|main.cpp}}
* В каталоге {{path|~/RPM/BUILD}} говорим мантру {{cmd | gendiff ./softina-1.0 .orig > ~/RPM/SOURCES/softina-1.0-название_патча.diff}}
* Прописываем его в спеке в заглавной части рядом с <code>Source№:</code> в виде
Patch№: %name-1.0-название_патча.diff
* В секции <tt>%prep</tt> сразу после <tt>%setup</tt> следующей строкой прописываем прикладывание патча
%patch№ -p1
* Пробуем собрать софтину.


== Примечания ==
== Примечания ==
{{примечания}}
{{примечания}}
== Ссылки ==
* [[Beta testing|FAQ бета-тестера]]
* [[СборкаПакетов|Сборка пакетов с etersoft-build-utils]]
{{Category navigation|title=FAQ|category=FAQ|sortkey=*}}

Текущая версия от 17:57, 6 ноября 2017

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


FAQ для начинающего разработчика.

Полезные команды

Описание Команда
Получить ветку 5.1 с коммитом в репозиторий 5.1 [1] girar-fetch-build-commit -b 5.1
Получить список всех макросов rpm --showrc
Чистка спека (в частности, замена путей на макросы) rpmcs package.spec
Проставление зависимостей сборки в спеке buildreq package.spec
Отменить локальные изменения в git git reset --hard HEAD
Преобразовать спек для бранча p8 rpmbp -b p8 package.spec
Показать зависимости пакета rpmquery -R package
Посмотреть права на пакет erthad wget -O - http://git.altlinux.org/acl/list.packages.sisyphus | egrep '^erthad'
Передать права на пакет kicad участнику команды с ником zver ssh git.alt acl sisyphus kicad leader zver

Как написать патч [2]

Рассмотрим стандартный случай - есть каталог ~/RPM, в котором есть BUILD, в котором лежит распакованный тарбол софтины softina-1.0. К примеру, нам нужно сделать изменения в файле main.cpp

  • cd ~/RPM/BUILD/softina-1.0 переходим в каталог с исходниками
  • cp main.cpp main.cpp.orig сохраняем оригинал
  • Правим файл main.cpp
  • В каталоге ~/RPM/BUILD говорим мантру gendiff ./softina-1.0 .orig > ~/RPM/SOURCES/softina-1.0-название_патча.diff
  • Прописываем его в спеке в заглавной части рядом с Source№: в виде
Patch№: %name-1.0-название_патча.diff
  • В секции %prep сразу после %setup следующей строкой прописываем прикладывание патча
%patch№ -p1
  • Пробуем собрать софтину.

Примечания

  1. В пакете girar-nmu
  2. Оригинал находится здесь

Ссылки