GPL-3.0-only licensed and maintained by Jens Petersen
This version can be pinned in stack with:fedora-repoquery-0.7.1@sha256:48a47de095aa2cca6905ecf667f05bba3122307d7ccd504779412a958b772cb6,3737

Module documentation for 0.7.1

There are no documented modules for this package.

fedora-repoquery

A dnf wrapper to repoquery different Fedora releases, caching repodata separately per release. It also supports EPEL and Centos Stream repos.

Usage

Usage examples:

$ fedora-repoquery rawhide firefox

firefox-130.0-1.fc42.x86_64 (fedora-rawhide)

$ fedora-repoquery 40 --requires filesystem

setup

$ fedora-repoquery epel9 ghc

ghc-8.10.7-116.el9.x86_64 (epel9)

$ fedora-repoquery c10 bash

bash-5.2.26-4.el10.x86_64 (c10s-BaseOS)

$ fedora-repoquery eln kernel

kernel-6.11.0-0.rc6.20240906gitb831f83e40a2.53.eln142.x86_64 (eln-BaseOS)

Without a release argument, the system yum repo configuration is used:

$ fedora-repoquery pandoc

pandoc-3.1.11.1-32.fc41.x86_64 (rawhide)

but then currently you have to insert -- before a query option:

$ fedora-repoquery -- --whatrequires pandoc

R-reprex-2.0.2-12.fc41.noarch (rawhide)
R-rmarkdown-2.24-5.fc41.noarch (rawhide)
pandoc-pdf-3.1.11.1-32.fc41.x86_64 (rawhide)
python3-nb2plots-0.7.2-5.fc41.noarch (rawhide)
python3-pypandoc-1.13-6.fc41.noarch (rawhide)
rstudio-common-2024.04.2+764-3.fc41.x86_64 (rawhide)

Use the –time (-T) option to display repo timestamps:

$ fedora-repoquery -T 41 fedrq
2024-07-16 19:45:44 +08 <https://mirror.freedif.org/fedora/fedora/linux/development/rawhide>

fedrq-1.1.0-3.fc41.noarch (fedora-rawhide)

Repo timestamp(s) are output when there are no query args after the release version:

$ fedora-repoquery 40

2024-04-20 02:22:34 +08 <https://mirror.freedif.org/fedora/fedora/linux/releases/40/>
2024-09-07 09:37:56 +08 <https://mirror.freedif.org/fedora/fedora/linux/updates/40/>

One can also query multiple releases (or arch’s):

$ fedora-repoquery 40 41 python3 | grep x86_64

python3-3.12.2-2.fc40.x86_64 (f40)
python3-3.12.5-2.fc40.x86_64 (f40-updates)
python3-3.13.0~rc1-2.fc41.x86_64 (f41-development)
python3-3.13.0~rc1-3.fc41.x86_64 (f41-updates-testing)

Help

$ fedora-repoquery --version

0.7.1

$ fedora-repoquery --help

fedora-repoquery tool for querying Fedora repos for packages.

Usage: fedora-repoquery [--version] [-4|--dnf4] [(-q|--quiet) | (-v|--verbose)]
                        [--dynamic] [-T|--time] [-K|--koji]
                        [--devel-channel | --test-channel]
                        [(-m|--mirror URL) | (-D|--dl)]
                        [(-s|--source) | (-A|--all-archs) | [-a|--arch ARCH]]
                        [-t|--testing] [-d|--debug]
                        ((-z|--cache-size) | (-e|--cache-clean-empty) |
                          (-l|--list) |
                          [RELEASE|--]... [REPOQUERY_OPTS]... [PACKAGE]...)

  where RELEASE is {fN or N (fedora), 'rawhide', epelN, epelN-next, cN (centos
  stream), 'eln'}, with N the release version number.
  https://github.com/juhp/fedora-repoquery#readme

Available options:
  -h,--help                Show this help text
  --version                Show version
  -4,--dnf4                Use dnf4 instead of dnf5 (if available)
  -q,--quiet               Avoid output to stderr
  -v,--verbose             Show stderr from dnf repoquery
  --dynamic                Redirect each HTTP through mirror
  -T,--time                Show time-stamp of repos
  -K,--koji                Use Koji buildroot
  --devel-channel          Use eln development compose
  --test-channel           Use eln test compose [default: production]
  -m,--mirror URL          Fedora mirror [default:
                           https://download.fedoraproject.org/pub]
  -D,--dl                  Use dl.fp.o
  -s,--source              Query source repos
  -A,--all-archs           Query all (64 bit) arch repos
  -a,--arch ARCH           Specify arch [default: x86_64]
  -t,--testing             Fedora updates-testing
  -d,--debug               Show some debug output
  -z,--cache-size          Show total dnf repo metadata cache disksize
  -e,--cache-clean-empty   Remove empty dnf caches
  -l,--list                List Fedora versions

The default arch is the system arch.

Installation

fedora-repoquery is available in Fedora and EPEL 9: https://src.fedoraproject.org/rpms/fedora-repoquery.

Building from source

Use stack install fedora-repoquery or cabal install fedora-repoquery to build the latest release.

To build from git: stack install or cabal install or cabal-rpm install.

Contributing

fedora-repoquery is distributed under the GPL license version 3 or later.

https://github.com/juhp/fedora-repoquery

Changes

Revision history for fedora-repoquery

0.7.1 (2024-09-08)

  • fix for branched: “frozen” state is still in development/ like “pending”
  • enable updates-testing for fedora branched from Beta freeze
  • help: can use – for system repoquery
  • only output “slow redirection” for debug
  • refactor eitherRelease with lower case
  • curl connection: timeout for Location redirect but not Last-Modified

0.7 (2024-07-18)

  • use curl library for HTTP instead of http-directory
  • rename the executable back to fedora-repoquery to avoid confusion with fedrq

0.6 (2024-07-16)

  • defaults to no datestamp output: –time replaces –no-check
  • further speed improvements by reducing http checks
  • map latest pending release version to fedora-rawhide
  • add –dynamic redirect to not re-use first mirror redirect
  • update c8s url to Centos Vault
  • drop dep on utility-ht just for spanJust

0.5 (2024-07-02)

  • allow multiple release args
  • with no release arg use system yum repos
  • add –quick to skip url http checks, also done when multiple releases
  • dnf5 –qf does not add “\n” so we do it if no trailing “space”
  • update cache dir commands to support also dnf5 xdg cache path
  • use dnf5 repoquery.cpp list of –qf conflicts

0.4 (2024-05-24)

  • add –dnf4 option to use dnf4 (actually /usr/bin/dnf-3) instead of dnf5
  • oldest and newest active releases are now determined/cached via Bodhi API
  • can now query with rawhide by version (eg 41 currently)
  • disable –qf for –requires
  • –list now only shows active fedora releases
  • for centos and eln only check compose for the BaseOS repo
  • map version 11 to eln

0.3.2 (2024-02-19)

  • enable centos 10 stream (still alpha)
  • Query: disable –qf for –provides
  • minor debug tweaks

0.3.1 (2024-02-12)

  • use dnf5 when available
  • add –all-archs to query across all 64bit architectures

0.3 (2023-11-09)

  • Query: no –qf with –changelog
  • small OS versions now map to centos-stream
  • use hostname not full url for mirror repo name
  • repo urls should end with a slash
  • improve tests to fail if no results
  • map failing yzyu.jp http/3 mirror to main one
  • development/39 also needs os/
  • showRelease: reformat Centos and ELN repos
  • default to system arch and introduce sysarch and march

0.2 (2023-05-12)

  • support fedora and epel testing repos
  • fix fedora archive urls
  • support querying epel6 and older archives
  • support fedora-secondary urls for ppc64le and s390x including archive
  • rename –test to –test-channel and –centos-devel to –devel-channel
  • expand help to cover RELEASE and add readme url

0.1.0 (2023-05-07)

  • initial release with support for fedora releases, epel, eln and centos stream