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

Материал из ALT Linux Wiki
(→‎Полезные команды: Добавлена команда передачи прав на пакет.)
 
(не показаны 2 промежуточные версии 2 участников)
Строка 1: Строка 1:
[[Категория:Devel]]
[[Категория:Devel]]
[[Категория:FAQ]]
[[Категория:errata]]
[[Категория:errata]]
{{stub}}
{{stub}}
Строка 22: Строка 21:
|Отменить локальные изменения в git ||{{cmd|git reset --hard HEAD}}
|Отменить локальные изменения в git ||{{cmd|git reset --hard HEAD}}
|-
|-
|Преобразовать спек для бранча 5.1 || {{cmd|rpmbph -M51 package.spec}}
|Преобразовать спек для бранча p8 || {{cmd|rpmbp -b p8 package.spec}}
|-
|-
|Показать зависимости пакета || {{cmd|rpmquery -R package}}
|Показать зависимости пакета || {{cmd|rpmquery -R package}}
Строка 38: Строка 37:
* Правим файл {{path|main.cpp}}
* Правим файл {{path|main.cpp}}
* В каталоге {{path|~/RPM/BUILD}} говорим мантру {{cmd | gendiff ./softina-1.0 .orig > ~/RPM/SOURCES/softina-1.0-название_патча.diff}}
* В каталоге {{path|~/RPM/BUILD}} говорим мантру {{cmd | gendiff ./softina-1.0 .orig > ~/RPM/SOURCES/softina-1.0-название_патча.diff}}
* Прописываем его в спеке в заглавной части рядом с <tt>%source№</tt> в виде  
* Прописываем его в спеке в заглавной части рядом с <code>Source№:</code> в виде  
  %patch№ %name-1.0-название_патча.diff
  Patch№: %name-1.0-название_патча.diff
* В секции <tt>%prep</tt> сразу после <tt>%setup</tt> следующей строкой прописываем прикладывание патча
* В секции <tt>%prep</tt> сразу после <tt>%setup</tt> следующей строкой прописываем прикладывание патча
  %patch№ -p1
  %patch№ -p1
Строка 49: Строка 48:
* [[Beta testing|FAQ бета-тестера]]
* [[Beta testing|FAQ бета-тестера]]
* [[СборкаПакетов|Сборка пакетов с etersoft-build-utils]]
* [[СборкаПакетов|Сборка пакетов с 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. Оригинал находится здесь

Ссылки