compose-utils/README.md
Lubomír Sedlář 868c3a4abc Convert README to markdown
Forgejo doesn't seem to render RST. Pungi isn't technically migrated
yet, but it will be soon, so let's simplify the update.
2026-05-28 15:40:54 +02:00

2.1 KiB

Compose Utils

A set of utilities for working with Pungi composes. Composes are release snapshots that contain a set of builds.

Install it in Fedora or EPEL:

yum -y install compose-utils

Or run directly from Git in a virtualenv:

git clone https://forge.fedoraproject.org/pungi/compose-utils.git
cd compose-utils
python3 -m venv venv
. venv/bin/activate
python setup.py develop

# The commands will be in your $PATH, for example:
compose-diff-rpms ...

Contents

compose-changelog displays changes between two composes

compose-create-legacy-composeinfo create .composeinfo file in legacy INI-style format

compose-diff-rpms generate a difference in packages between two composes. This is a bit more low-level than compose-changelog.

compose-dump-listings write listing of packages in a compose useful for tracking disappearing packages in another compose

compose-has-build check if a build with a given NVR is present in the compose

compose-list lists composes in a directory and computes next/previous compose ID

compose-partial-copy copy parts of compose (filtering by variant or architecture) to another location via rsync.

compose-print-essentials print basic information about a compose

compose-report-package-moves identify rpm packages that moved between related variants between two composes. Useful for identification of packages which were moved from optional to main variant.

compose-create-next-dir create compose dir for next compose

compose-latest-symlink create a symbolic link with a well-known name to the given compose

compose-write-repo-file create a .repo file pointing to repositories in a compose

compose-update-latest-symlinks create symbolic links of minor and major version to the given latest compose

  • Pungi - a tool for generating composes

Contributing

Feel free to open pull requests on Fedora Forge.

Tests can be run by tox. That should take care of all dependencies, run tests on multiple versions of Python and also compute coverage report.