fuzzytail 🦊
Follow COPR build logs in your terminal in real-time.
Installation
# Using pip
pip install fuzzytail
# Using uv
uv pip install fuzzytail
# From source
git clone https://github.com/r0x0d/fuzzytail
cd fuzzytail
pip install -e .
Usage
Watch a Project
The simplest way to use fuzzytail is to watch a COPR project for builds:
# Watch all builds in a project
fuzzytail owner/project
# Filter by package
fuzzytail owner/project --package broot
# Filter by chroot
fuzzytail owner/project --chroot fedora-43-x86_64
# Watch a specific build
fuzzytail owner/project --build 12345678
Log Filtering
Control which logs to display:
# Only show SRPM build logs
fuzzytail owner/project --srpm-only
# Only show RPM build logs
fuzzytail owner/project --rpm-only
# Only show builder-live logs
fuzzytail owner/project --builder-live
# Only show backend logs
fuzzytail owner/project --backend
# Skip backend logs (show only builder-live)
fuzzytail owner/project --skip-backend
# Skip import (dist-git) logs
fuzzytail owner/project --skip-import
Commands
fuzzytail <project> (default)
Watch a project for builds and stream their logs.
fuzzytail owner/project [OPTIONS]
Options:
-p, --package TEXT Filter by package name
-c, --chroot TEXT Filter by chroot (e.g., 'fedora-43-x86_64')
-b, --build INT Watch a specific build ID
--srpm-only Only show SRPM build logs
--rpm-only Only show RPM build logs
-l, --builder-live Only show builder-live logs
-B, --backend Only show backend logs
--skip-backend Skip backend logs (show only builder-live)
--skip-import Skip import (dist-git) logs
-i, --interval FLOAT Poll interval in seconds (default: 2.0)
fuzzytail watch <project>
Continuously monitor a project for new builds.
fuzzytail watch owner/project [OPTIONS]
Options:
-p, --package TEXT Filter by package name
-c, --chroot TEXT Filter by chroot
--srpm Include SRPM logs (default: true)
--rpm Include RPM logs (default: true)
-l, --builder-live Include builder-live logs (default: true)
-B, --backend Include backend logs (default: true)
--skip-backend Skip backend logs (show only builder-live)
--skip-import Skip import (dist-git) logs
-i, --interval FLOAT Poll interval in seconds (default: 5.0)
fuzzytail logs <project>
Fetch and display logs for a build. Shows recent builds and prompts for selection if no build ID is specified.
fuzzytail logs owner/project [OPTIONS]
Options:
-b, --build INT Specific build ID (skips selection)
-p, --package TEXT Filter by package name
-c, --chroot TEXT Filter by chroot
-t, --type TEXT Log type: 'import', 'builder-live', or 'backend'
--srpm-only Only show SRPM logs
--rpm-only Only show RPM logs
--skip-backend Skip backend logs (show only builder-live)
--skip-import Skip import (dist-git) logs
-f, --follow Follow logs in real-time
-i, --interval FLOAT Poll interval when following (default: 2.0)
-n, --limit INT Number of builds to show in selection (default: 10)
fuzzytail builds <project>
List builds for a COPR project.
fuzzytail builds owner/project [OPTIONS]
Options:
-p, --package TEXT Filter by package name
-s, --status TEXT Filter by status (running, pending, succeeded, failed)
-n, --limit INT Maximum builds to show (default: 10)
-v, --verbose Show detailed build information
Log Types
Fuzzytail supports all COPR log types:
| Log Type | Description |
|---|---|
import |
Import/dist-git logs for package source |
builder-live |
Real-time build output from mock |
backend |
COPR backend orchestration logs |
Build Sources
| Source | Description |
|---|---|
| SRPM | Source RPM build logs |
| RPM | Binary RPM build logs (per chroot) |
Examples
Watch a running build with all logs
fuzzytail r0x0d/my-project --build 09782941
Monitor only the builder-live logs for x86_64
fuzzytail r0x0d/my-project --chroot fedora-43-x86_64 --builder-live
Watch without backend logs
fuzzytail r0x0d/my-project --skip-backend
List recent failed builds
fuzzytail builds r0x0d/my-project --status failed
View logs for a project (with selection)
fuzzytail logs owner/project
Follow logs for a specific build
fuzzytail logs owner/project --build 09782941 --follow
View only import logs
fuzzytail logs owner/project --type import
Requirements
- Python 3.10+
- COPR account (for authenticated operations, optional)
Credits
This project was created by:
- Rodolfo Olivieri (@r0x0d) - Creator and maintainer
- Claude (Anthropic) - AI pair programming assistant
License
MIT License - see LICENSE file for details.
Metadata
Release files for fuzzytail 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| fuzzytail-0.2.0.tar.gz | 73.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fuzzytail-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 104.2 kB
Release files / fuzzytail-0.2.0.tar.gz
| Download URL | fuzzytail-0.2.0.tar.gz |
|---|---|
| Size | 73.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e6d07508969f54d4ec7f8107ab998f7f99e9587db5f0ee045d5ad9ffe66e5127
|
|
BLAKE2b-256 checksum How to use checksums |
9ce34b7c12e8ebbec3b7c8006a1beb7e97b6843be5afddb79de2aff0b146a339
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / fuzzytail-0.2.0-py3-none-any.whl
| Download URL | fuzzytail-0.2.0-py3-none-any.whl |
|---|---|
| Size | 30.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
852c976cfded76a92cb7c5d969ffc0321526f862e794ccc96724c54c8563a901
|
|
BLAKE2b-256 checksum How to use checksums |
ee3f9c284aa1f4e148831b867a786cfefbb1db12a4b6f0ee015ac6e842687345
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for fuzzytail 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.