zoryn gen¶
Генераторы файлов.
zoryn gen opam2spec¶
Сгенерировать RPM spec из opam-файла.
Опции:
-o, --output <file>— выходной spec-файл (по умолчанию: stdout).-p, --packager <name>— имя packager'а для changelog.--prefix <prefix>— префикс имени пакета (по умолчанию:ocaml-).--no-check— отключить секцию%check.--no-rules— отключить генерацию.gear/rules.--no-rdb-check— не проверять RDB на существующие пакеты.--tag-prefix <prefix>— префикс upstream-тэга (по умолчанию:v).-V <version>— переопределить версию.--clone— склонировать репозиторий и сгенерировать файлы.--build— собрать после генерации.--verbose— подробный вывод.
zoryn gen opam2spec mypackage.opam # из локального файла
zoryn gen opam2spec dune -o ocaml-dune.spec # из opam-репозитория
zoryn gen opam2spec ppx_deriving --clone # склонировать и сгенерировать
zoryn gen pypi2spec¶
Сгенерировать spec-файл из пакета PyPI.
Опции:
--url <url>— URL git-репозитория. Переопределяет URL, найденный в метаданных PyPI; используется и дляgit clone, и для тэгаVCS:в spec. Суффикс.gitудаляется.--name <name>— переопределить имя RPM-пакета.-V <version>— переопределить версию.--no-check— пропустить генерацию%check.--no-clone— сгенерировать spec в текущем каталоге без клонирования.--packager <name>— packager с именем и email.--verbose— подробный вывод.
Клонирует upstream git-репозиторий, определяет тест-фреймворк (pytest/tox) и создаёт .gear/ артефакты (spec, pyproject_deps.json, rules) готовые к сборке. Spec-файл называется по нормализованному имени PyPI-пакета (например, .gear/hdbscan.spec). Включает AutoReq: yes, nopython3, %pyproject_runtimedeps_metadata и %global _unpackaged_files_terminate_build 1.
zoryn gen pypi2spec hdbscan # клонировать и сгенерировать
zoryn gen pypi2spec hdbscan --url https://github.com/scikit-learn-contrib/hdbscan
zoryn gen pypi2spec hdbscan --no-clone # в текущем каталоге
zoryn gen watch¶
Сгенерировать watch-файл из Debian, Gentoo или Arch Linux.
Без имени пакета использует имя из spec-файла текущего каталога.
Команда запрашивает несколько источников (Debian, Gentoo, Arch) через Repology API и генерирует watch-файл в стиле Debian. При нескольких источниках показывает таблицу сравнения версий и URL-паттернов.
Опции:
--debian-pkg <name>— явно указать имя Debian-пакета (когда имена ALT и Debian различаются, например--debian-pkg fox1.6дляlibfox).--gentoo-pkg <name>— явно указать имя Gentoo-пакета.--arch-pkg <name>— явно указать имя Arch-пакета.--no-compare— пропустить сравнение, использовать первый найденный источник.-f, --force— перезаписать существующий watch-файл.-p, --print— вывести watch-файл без сохранения.
Приоритет источников: Debian > Gentoo > Arch. При совпадении паттернов предпочтение отдаётся источнику с более новой версией.
zoryn gen watch # для текущего пакета
zoryn gen watch mac # для пакета mac
zoryn gen watch --debian-pkg fox1.6 # явное имя Debian
zoryn gen watch --gentoo-pkg mac # явное имя Gentoo
zoryn gen watch --no-compare # первый найденный
zoryn gen watch -p # предпросмотр без сохранения
zoryn gen environment¶
Инициализация файлов конфигурации окружения разработки ALT Linux.
Создаёт:
~/.zoryn— конфиг zoryn с секциями[build],[clone],[sources].~/.ssh/config— SSH-алиасы для gitery и gyle.~/.hasher/config— workdir и packager для hasher.~/.rpmmacros— макрос%packager.~/.gitconfig— gituser.nameиuser.email(если не заданы).
Также создаёт SSH-ключ (ed25519) и GPG-ключ (RSA 4096-bit), если их нет.
Опции¶
| Опция | Описание |
|---|---|
--name NAME | Имя на английском (обязательно для неинтерактивного режима) |
--email EMAIL | Email для changelog (обязательно для неинтерактивного режима) |
--login LOGIN | Логин для gitery/gyle (опционально) |
--skip-keys | Пропустить генерацию SSH и GPG ключей |
--update-config | Дополнить существующий ~/.zoryn отсутствующими значениями по умолчанию |
--update-config добавляет отсутствующие секции и ключи в существующий конфиг без перезаписи значений или удаления комментариев. Полезно после обновления zoryn для получения новых параметров конфигурации.
Примеры¶
zoryn gen environment # интерактивный режим
zoryn gen environment --name 'Ivan Ivanov' --email ivan@altlinux.org --login ivan
zoryn gen environment --name 'Ivan Ivanov' --email ivan@example.org # без gitery/gyle
zoryn gen environment --skip-keys # без генерации ключей
zoryn gen environment --update-config # обновить существующий конфиг
zoryn gen version-up¶
Сгенерировать .gear/version-up на основе текущей версии пакета.
Находит git-тэг, соответствующий текущей версии spec, и генерирует pattern/template для конвертации. Помогает zoryn up корректно фильтровать тэги и обрабатывать случаи, где формат тэга отличается от формата версии (например, подчёркивания vs точки).
Опции:
--tag TAG— git-тэг текущей версии (автоопределение при отсутствии).--to-version VERSION— версия, в которую конвертируется тэг. Используется с--tag, когда формат отличается.--filter VERSION— префикс версии для фильтрации тэгов (например,--filter 4.5генерируетfilter = "major=4, minor=5"). Если.gear/version-upуже существует, добавляет фильтр.--force— перезаписать существующий.gear/version-up.
Примеры¶
zoryn gen version-up # автоопределение тэга
zoryn gen version-up --tag v1.2.3 # явный тэг
zoryn gen version-up --tag osec-12_11_22.11 --to-version 12.11.22.11
zoryn gen version-up --force # перезаписать
zoryn gen version-up --filter 4.5 # добавить фильтр
zoryn gen version-up --tag v4.5.5 --to-version 4.5.5 --filter 4.5