Devel newbies: различия между версиями
Becase (обсуждение | вклад) (Добавлен пункт "Как написать патч".) |
Becase (обсуждение | вклад) м (→Полезные команды: Поправлена команда) |
||
Строка 26: | Строка 26: | ||
|Показать зависимости пакета || {{cmd|rpmquery -R package}} | |Показать зависимости пакета || {{cmd|rpmquery -R package}} | ||
|- | |- | ||
|Посмотреть права на пакет||{{cmd|wget -O - http://git.altlinux.org/acl/list.packages.sisyphus | |Посмотреть права на пакет erthad||{{cmd|wget -O - http://git.altlinux.org/acl/list.packages.sisyphus {{!!}} egrep '^erthad'}} | ||
|} | |} | ||
Версия от 16:13, 7 апреля 2011
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 |
Преобразовать спек для бранча 5.1 | rpmbph -M51 package.spec |
Показать зависимости пакета | rpmquery -R package |
Посмотреть права на пакет erthad | wget -O - http://git.altlinux.org/acl/list.packages.sisyphus | egrep '^erthad' |
Как написать патч [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
- Пробуем собрать софтину.