BuildNotify
BuildNotify is a CCMenu/CCTray equivalent for Linux, macOS and Windows. It resides in your system tray and notifies you of the build status for different projects on your continuous integration servers. BuildNotify is largely inspired from the awesome CCMenu available for Mac.
Features
- Monitor projects on multiple continuous integration servers that publish a cctray.xml feed, and GitHub Actions workflows.
- Access to overall continuous integration status from the system tray.
- Access individual project pages through the tray menu.
- Receive notifications for fixed/broken/still failing builds.
- Easy access to the last build time and build label for each project.
- Customize build notifications, or run your own script when a build changes.
- Optional single-colour tray icons (Shapes) that differ by shape.
- Unreachable servers show in the tray menu with their last error.
- Mute a server or project, or pause all notifications for an hour, from the tray menu.
Installing from PyPI
BuildNotify needs Python 3.11 or newer. Install it as a tool with uv or pipx:
uv tool install buildnotify
# or
pipx install buildnotify
Launch it using buildnotify. This will show an icon in the system tray.
To try it without installing:
uvx buildnotify
The Ubuntu and Debian packages are pretty old, so use the PyPI package to get the latest release. See the installation page for requirements and the GNOME tray note.
Installing a nightly
Every push to main replaces the nightly pre-release with a wheel, an sdist and a Flatpak bundle. These builds are untested by users and may be broken. The wheel has a .devN version, so uv and pip only pick it up when you ask for it:
uv tool install --prerelease allow https://github.com/anaynayak/buildnotify/releases/download/nightly/<wheel file name>
Take the exact file name from the release page. A nightly is never published to PyPI.
Verifying a release
Releases are built by GitHub Actions from a tag, published to PyPI with trusted publishing and attached to a GitHub Release. Each file has build provenance and SBOM attestations. After downloading the wheel, check it with the GitHub CLI:
gh attestation verify buildnotify-3.0.0-py3-none-any.whl --repo anaynayak/buildnotify
PyPI also lists the PEP 740 attestation for each file. See Development for the SBOM check and reproducible builds.
Command line options
--settings PATHreads and writes settings in this INI file instead of the default location.--debuglogs every fetch.
Supported continuous integration systems
Anything that publishes a cctray.xml feed. See https://cctray.org/servers/
GitHub Actions is read directly from the GitHub API, with optional workflow and branch filters.
Documentation
Metadata
Release files for BuildNotify 3.0.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 | |
|---|---|---|---|
| buildnotify-3.0.0.tar.gz | 111.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| buildnotify-3.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 179.2 kB
Release files / buildnotify-3.0.0.tar.gz
| Download URL | buildnotify-3.0.0.tar.gz |
|---|---|
| Size | 111.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0fc2cf5feb6fa09583a32b69a40073eddcce77c95aa53fb78cc73a511502b04b
|
|
BLAKE2b-256 checksum How to use checksums |
09dec53f182373c5e4abdfb38cab588d280bb60f08488dfc4d340126d4a46f85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / buildnotify-3.0.0-py3-none-any.whl
| Download URL | buildnotify-3.0.0-py3-none-any.whl |
|---|---|
| Size | 67.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d171ccb6684b0cf829b1e4b8c442db87851ddfbdbb0dbddb71550a529d5b9d0e
|
|
BLAKE2b-256 checksum How to use checksums |
d4abf53d35d341cb62c56f7f78477a0c56ee9e84e62d721f0fdf2ed735fcd8d9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency log