* Re: [newbies] Vcs, Source, Url fields
2025-09-13 10:38 [newbies] Vcs, Source, Url fields Alexander Lubyagin
2025-09-13 11:58 ` Anton Farygin
@ 2025-09-13 13:17 ` Leonid Znamenok
2025-09-13 18:24 ` Leonid Krivoshein
2 siblings, 0 replies; 4+ messages in thread
From: Leonid Znamenok @ 2025-09-13 13:17 UTC (permalink / raw)
To: devel-newbies
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)
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [newbies] Vcs, Source, Url fields
2025-09-13 10:38 [newbies] Vcs, Source, Url fields Alexander Lubyagin
2025-09-13 11:58 ` Anton Farygin
2025-09-13 13:17 ` Leonid Znamenok
@ 2025-09-13 18:24 ` Leonid Krivoshein
2 siblings, 0 replies; 4+ messages in thread
From: Leonid Krivoshein @ 2025-09-13 18:24 UTC (permalink / raw)
To: devel-newbies
Доброго времени!
On 9/13/25 13:38, Alexander Lubyagin wrote:
> Добрый день.
>
> По теме предыдущей лекции вспомнился такой вопрос.
>
> В чём назначение и различие полей в SPEC:
> Url
> Source
> Source*
> Vcs (например, admsasha/libxml2:sisyphus)
>
Хорошее начало здесь: https://www.altlinux.org/Join
Там при рекурсивном изучении матчасти обязательно попадутся такие странички:
https://www.altlinux.org/Spec
https://www.altlinux.org/Spec/Предопределенные_макросы
> Какими опциями gear/hasher/rpm они "подхватываются"?
>
Всё же это метаданные RPM/SRPM. Source довольно тесно связан с
.gear/rules (.gear-rules). Url нужен для идентификации исходного
проекта, это поле сравнимо с Unique ID и его наличие проверяется
repocop'ом (https://www.altlinux.org/Repocop), отчёты repocop'а
выводятся по каждому SRPM:
https://packages.altlinux.org/ru/sisyphus/srpms/partclone/repocop/
> И ещё, второй вопрос.
> Если при сборке "в песочнице" (gear+hasher), configure+make ругается
> в процессе сборки на отсутствие команды git ...
Значит, проверяйте сборочные зависимости.
> очевидно, хочет во время сборки
> что-то динамически "скачать". Но, по итогу, пакет успешно собирается,
> т.е. эти downloads были опциональными.
> То как принято поступать? Игнорировать, или где-то вести журнал таких
> попыток?
Предметно нужно смотреть логи и исходники.
--
WBR, Leonid Krivoshein.
^ permalink raw reply [flat|nested] 4+ messages in thread