mirror of
https://github.com/morgan9e/mock-dep-resolver
synced 2026-04-14 00:14:17 +09:00
f81344e11f773bfd85e2e99e21ffdcc98296ca41
mock-dep-resolver
Resolve both forward and reverse dependancy for mock chain builds
Usage
usage: mock-dep-resolver.py [-h] [-r RELEASE] [-s SOURCE] [--download [PATH]] [--forward] [--reverse] [-v] package
Resolve deps for cross-release SRPM building via mock
positional arguments:
package Package name or path to .src.rpm
options:
-h, --help show this help message and exit
-r, --release RELEASE
Target Fedora release (default: 43)
-s, --source SOURCE Source release (default: rawhide)
--download [PATH] Download SRPMs (default: ./SRPMS)
--forward Only resolve build deps
--reverse Only resolve reverse deps
-v, --verbose
Example
For building rawhide gnome-shell for f43
$ python3 mock-dep-resolver.py gnome-shell
Package: gnome-shell
Target: Fedora 43
Source: rawhide
Mode: both
Download: no
[INFO] Loading target repo...
[INFO] Loading source repo...
[INFO] Resolving build dependencies...
[INFO] Build deps: gnome-shell
[WARN] UNMET: mutter-devel >= 50~alpha
[INFO] Build deps: mutter
[INFO] Reverse (#1):
[WARN] BROKEN: gnome-shell-extension-background-logo
[WARN] requires: gnome-shell(api) = 49
[WARN] old: gnome-shell(api) = 49
[WARN] new: gnome-shell(api) = 50
[INFO] Forward (#1):
[INFO] Need rebuild: gnome-shell-extension-background-logo (source: gnome-shell-extension-background-logo)
[INFO] Build deps: gnome-shell-extension-background-logo
[INFO] Reverse (#2):
[OK] No more reverse dependency
====== DONE ======
[OK] Build order (3 packages):
1. mutter
2. gnome-shell
3. gnome-shell-extension-background-logo
[OK] Download SRPMs:
dnf download --source --releasever=rawhide mutter
dnf download --source --releasever=rawhide gnome-shell
dnf download --source --releasever=rawhide gnome-shell-extension-background-logo
[OK] Command for Mock:
mock --chain -r fedora-43-x86_64 --localrepo ~/repo \
mutter-*.src.rpm \
gnome-shell-*.src.rpm \
gnome-shell-extension-background-logo-*.src.rpm
Description
Languages
Python
100%