devel@ where you _can_ ask
 help / color / mirror / Atom feed
* [newbies] Vcs, Source, Url fields
@ 2025-09-13 10:38 Alexander Lubyagin
  2025-09-13 11:58 ` Anton Farygin
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Alexander Lubyagin @ 2025-09-13 10:38 UTC (permalink / raw)
  To: devel-newbies

Добрый день.

По теме предыдущей лекции вспомнился такой вопрос.

В чём назначение и различие полей в SPEC:
Url
Source
Source*
Vcs (например, admsasha/libxml2:sisyphus)

Какими опциями gear/hasher/rpm они "подхватываются"?

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

Александр Лубягин


^ 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: Anton Farygin @ 2025-09-13 11:58 UTC (permalink / raw)
  To: devel-newbies

On 9/13/25 13:38, Alexander Lubyagin wrote:
> Добрый день.
>
> По теме предыдущей лекции вспомнился такой вопрос.
>
> В чём назначение и различие полей в SPEC:
> Url

Информационный тэг. Служит основным способом определения апстрима

> Source
> Source*
Source* используются для распаковки исходников
> Vcs (например, admsasha/libxml2:sisyphus)

Vcs информационный тэг, пока используется только на packages.altlinux.org

тоже служит способом определения апстрима (git'а).




^ 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 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

end of thread, other threads:[~2025-09-13 18:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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

devel@ where you _can_ ask

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel-newbies/0 devel-newbies/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel-newbies devel-newbies/ http://lore.altlinux.org/devel-newbies \
		devel-newbies@lists.altlinux.org devel-newbies@lists.altlinux.ru devel-newbies@lists.altlinux.com
	public-inbox-index devel-newbies

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel-newbies


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git