Skip to main content

fedrq is a tool to query the Fedora and EPEL repositories

Project description

fedrq

⚠️ This project is a work in progress. ⚠️

A tool for querying the Fedora and EPEL repositories

fedrq makes it easy to query any branch of Fedora or EPEL. It uses the dnf Python bindings and does not shell out to dnf repoquery. It allows querying for reverse dependencies, packages that contain a certain Provide or file, subpackages of an SRPM, and package metadata.

The tool doesn't seek to replace every feature of dnf repoquery. It provides a more user friendly interface than dnf repoquery for certain common tasks.

builds.sr.ht status

copr build status (stable)

copr build status (dev)

fedrq on sr.ht

fedrq on git.sr.ht

fedrq on lists.sr.ht

fedrq on todo.sr.ht

Installation

fedrq has a copr repository at gotmax23/fedrq that contains released versions. Development snapshots are available at gotmax23/fedrq-dev. The RPM specfile is in the repository root.

The package can also be installed from source with pip or any other PEP 517 frontend. The following additional system packages are required:

  • python3-dnf
  • fedora-repos-rawhide

Note that fedrq can only be installed for the system python interpreter. fedrq cannot be installed in a venv unless it has --system-site-packages, as it needs to find dnf.

fedrq check-config --dump requires tomli-w. The RPM package weakly depends on python3-tomli-w.

Versioning

This project is in beta and its versioning scheme follows semver.

Python API

The fedrq.config module and the fedrq.backend package are public API. Everything under fedrq.cli is internal. fedrq is a primarily a CLI tool and its API abstracts the specific dnf/libdnf5 functionality that it uses. The API's main purpose is repoquerying, but you can use the fedrq functionality you'd like and then access the underlying dnf Base object to preform other tasks if needed.

See API.md for more information. See api-examples for some example code. As always, direct any feedback, questions, or issues to the mailing list (see ## Contributing).

Documentaion

See fedrq(1) (source) for the CLI interface and fedrq(5) (source) for the config file format.

Contributing

Development, issue reporting, and project discussion happen on the mailing list (~gotmax23/fedrq@lists.sr.ht).

See CONTRIBUTING.md.

Credits

Thank you to the dnf maintainers. This tool is inspired by dnf repoquery and uses the dnf python bindings.

License

This project follows the REUSE specification. In general:

  • Code is licensed under GPL-2.0-or-later. This is the same license as dnf.
  • Configuration and repo files in fedrq/data/ are UNLICENSEed
  • fedrq.spec is licensed under MIT to match Fedora
  • The embedded repo defs in src/fedrq/data/repos from fedora-repos.rpm are MIT licensed. These are only used when the needed repo defs are not available in the system config (i.e. for querying the Fedora repos from a non Fedora system).
  • enum.StrEnum is copied from Cpython 3.11 for older Python versions. It's ~30 lines of PSF-2.0 licensed code.
SPDX-License-Identifier: GPL-2.0-or-later AND Unlicense AND MIT AND PSF-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fedrq-0.4.1.tar.gz (67.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fedrq-0.4.1-py3-none-any.whl (54.1 kB view details)

Uploaded Python 3

File details

Details for the file fedrq-0.4.1.tar.gz.

File metadata

  • Download URL: fedrq-0.4.1.tar.gz
  • Upload date:
  • Size: 67.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for fedrq-0.4.1.tar.gz
Algorithm Hash digest
SHA256 7896c42e8c88877305da2ad81df97d476f1ef811aa2a04cdf46842af508f0e01
MD5 fcff5e4e72e1757de71ed61dd6adfddd
BLAKE2b-256 94425d1709fe74841547ccd4ec57684d093d4f12d248b349ec68f505c61498c4

See more details on using hashes here.

File details

Details for the file fedrq-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: fedrq-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 54.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for fedrq-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 29f846d1043d3be5b3dbe214a79b7967e0b8d7a3b56e6794f3c1cbf7831ce268
MD5 e3c31de7b9a5cad164e110393f5b04af
BLAKE2b-256 2b8ad87a7bb70ccd7296f9220bae842d89e82955e6491d1724cee22857f9e959

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page