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

Материал из ALT Linux Wiki
Нет описания правки
 
Строка 37: Строка 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

Текущая версия от 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. Оригинал находится здесь

Ссылки