[newbies] Vcs, Source, Url fields

Leonid Znamenok respublica на altlinux.org
Сб Сен 13 16:17:52 MSK 2025


Alexander,

13.09.2025 13:38, Alexander Lubyagin пишет:
> Добрый день.
>
> По теме предыдущей лекции вспомнился такой вопрос.
>
> В чём назначение и различие полей в SPEC:
> Url
> Source
> Source*
> Vcs (например, admsasha/libxml2:sisyphus)
>
> Какими опциями gear/hasher/rpm они "подхватываются"?
>
RPM:
Это часть spec файла. Spec файл обрабатывает rpmbuild. Следовательно,
эти поля "подхватываются" rpmbuild'ом и попадают в метаинформацию rpm
и srpm файлов. Значительную часть это метаинформации можно посмотреть
при помощи команды `rpm -qpi` направленной на rpm/srpm файл.

Здесь:
- q - query, запрос информации о пакете
- p - package_file, указание на обработку файла, а не установленного пакета
- i - info, вывод информации

-i выводит не всю метаинформацию. Полный список хранящихся тегов можно
посмотреть при помощи `rpm --querytags`. Эти теги используются с опцией
`--queryformat`.

Например, команда `rpm -qp --queryformat "%{NAME}: %{VCS}\n" 
some-package.rpm`
выведет имя пакета и значение его поля VCS. Подробнее можно прочитать в 
`man rpm`

GEAR:
Gear так же умеет читать и парсить (до некоторой степени) spec файлы. 
Так, в gear-rules
можно использовать ключевые слова @name@, @version@, @release@, значение
которых будет взято из spec файла.

См. `man gear-rules`

> И ещё, второй вопрос.
> Если при сборке "в песочнице" (gear+hasher), configure+make ругается
> в процессе сборки на отсутствие команды git ... очевидно, хочет во 
> время сборки
> что-то динамически "скачать". Но, по итогу, пакет успешно собирается,
> т.е. эти downloads были опциональными.
> То как принято поступать? Игнорировать, или где-то вести журнал таких 
> попыток? 

В общем случае - необязательно. Часть пакетов пытается сделать `git 
describe` для
того, чтобы сформировать свою версию.

Лучшим решением будет почитать make файлы, и смотреть зачем нужен (и нужен
ли вообще) там бинарник git'а. И исходя из этого уже действовать.

> Александр Лубягин
> _______________________________________________
> devel-newbies mailing list
> devel-newbies на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel-newbies

-- 
---
WBR, Leonid (respublica на altlinux.org)




Подробная информация о списке рассылки devel-newbies