[sisyphus] Скачать .spec'и всего сизифа

Dmitry Marakasov amdmi3 на amdmi3.ru
Вт Окт 4 21:53:32 MSK 2016


* Michael Shigorin (mike на altlinux.org) wrote:

> > Я разрабатываю штуку, которая сравнивает версии пакетов в куче
> > репозиториев: http://repology.org. Предполагается, что она будет
> > полезна мантейнерам, чтобы быстрее узнать о новых версиях своих
> > пакетов и проще находить коллег, поддерживающих то же самое в
> > других репозиториях, авторам софта, чтобы следить за актуальностью
> > пакетов, пользователям, чтобы смотреть, где новее софт, и т.д.
> > Сейчас поддерживает FreeBSD, Debian (unstable), Gentoo, NetBSD
> > (pkgsrc), OpenBSD и Arch Linux (не AUR).
> 
> Кстати, знаете про http://pkgs.org

Не знал, но это судя по всему поиск по бинарным пакетам, а это не
то - в них есть не вся нужная информация с одной стороны, а с другой
мешаются архитектуры и разбивка source пакетов на части (библиотеки на
пакет с сошками и -devel пакет с заголовками и статическими
библиотеками, например). И сравнения версий нет, в чём главный поинт
repology.

> http://packages.altlinux.org

Это же просто список пакетов в сизифе?

> и http://www.altlinux.org/Packaging_Automation/DistroMap?

Это интересно, но мало.

> > Хотел добавить туда и сизифа, но для этого мне нужно иметь возможность
> > регулярно качать либо всю метаинформацию о пакетах, либо все .spec
> > файлы. Простого способа не нашёл - каждый пакет в отдельном .git
> > репозитории, парсить сайт не хочется.
> 
> Можно зеркалировать раз в сутки "выжимку" метаданных и разбирать их:
> http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/noarch/base/srclist.classic.xz
> http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/base/srclist.classic.xz
> ...при помощи утилиты pkglist-query из нашего пакета apt-repo-tools
> (для сборки понадобится librpm -- предполагаю по списку ОС, что
> на используемой Вами получить эту библиотеку вполне реально).

Спасибо, вот это то что нужно.

Можно только глупый вопрос, есть какие-то структурные отличия этих
выжимок от спек? Те же разбивки пакетов на части, например или добавления
суффиксов к названиям? Например, libxml2 есть и в x86_64 и noarch, это
оно? Разбивка не так страшна, главное чтобы названия не менялись.

И ещё вопрос, формат файлов позволяет слить оба списка после декомпрессии
в один файл (cat srclist.classic.noarch srclist.classic.x86_64 > srclist.merged)?

> Если нужны именно спеки -- как вариант, см.:
> https://packages.altlinux.org/ru/Sisyphus/srpms/ИМЯ/rawspec
> http://petstore.swagger.io/?url=https://packages.altlinux.org/api/docs

Да, но, во-первых, нужен список всех имён (html парсить неохота, а API я
никакого не нашёл), во-вторых, это долго (каждый день качать 20k файлов).

> > Собственно, нет ли либо метаданных обо всех пакетах в переваренном
> > виде (типа csv) или всех .spec'ов одной пачкой (парсить их я умею)?
> > Минимум нужно Name/Version, желательно Packager, на будущее -
> > Summary/License/Url/Group и наверное вообще всё что есть в спеке.
> 
> Возможно, будет эффективней объединить усилия с уже существующими
> проектами.

Я таких пока не знаю. Есть поисковики пакетов, есть сравнивалки
версий с с парой репозиториев (у NixOS, например), у многих
дистрибутивов есть штуки которые ищут обновления апстрима (новые
тэги в VCS, новые тарболлы с исходниками), но чтобы всё в одном
месте, не привязанно ни к одному дистрибутиву - такого я не видел.

> Не знаю, как именно реализованы эвристики по приведению
> имён пакетов на http://distrowatch.com, но там они тоже есть
> (правда, Ладислав последние годы почти не отзывается).

Там фиксированный набор из двух сотен пакетов, это тоже не то.

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3 на amdmi3.ru  ..:  jabber: amdmi3 на jabber.ru      http://amdmi3.ru


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