Devel newbies: различия между версиями
Becase (обсуждение | вклад) |
Becase (обсуждение | вклад) (Добавлен пункт "Как написать патч".) |
||
Строка 28: | Строка 28: | ||
|Посмотреть права на пакет||{{cmd|wget -O - http://git.altlinux.org/acl/list.packages.sisyphus | egrep '^erthad'}} | |Посмотреть права на пакет||{{cmd|wget -O - http://git.altlinux.org/acl/list.packages.sisyphus | egrep '^erthad'}} | ||
|} | |} | ||
== Как написать патч <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}} | |||
* Прописываем его в спеке в заглавной части рядом с <tt>%source№</tt> в виде | |||
%patch№ %name-1.0-название_патча.diff | |||
* В секции <tt>%prep</tt> сразу после <tt>%setup</tt> следующей строкой прописываем прикладывание патча | |||
%patch№ -p1 | |||
* Пробуем собрать софтину. | |||
== Примечания == | == Примечания == | ||
{{примечания}} | {{примечания}} |
Версия от 16:12, 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 |
Посмотреть права на пакет | wget -O - http://git.altlinux.org/acl/list.packages.sisyphus |
Как написать патч [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
- Пробуем собрать софтину.