Skip to main content

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

  1. Monitor projects on multiple continuous integration servers that publish a cctray.xml feed, and GitHub Actions workflows.
  2. Access to overall continuous integration status from the system tray.
  3. Access individual project pages through the tray menu.
  4. Receive notifications for fixed/broken/still failing builds.
  5. Easy access to the last build time and build label for each project.
  6. Customize build notifications, or run your own script when a build changes.
  7. Optional single-colour tray icons (Shapes) that differ by shape.
  8. Unreachable servers show in the tray menu with their last error.
  9. Mute a server or project, or pause all notifications for an hour, from the tray menu.

Project list

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

  1. --settings PATH reads and writes settings in this INI file instead of the default location.
  2. --debug logs 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

  1. Installation
  2. Configuration and usage
  3. Frequently asked questions
  4. Changelog
  5. Development

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)

Source distribution for BuildNotify 3.0.0
File Size Uploaded
buildnotify-3.0.0.tar.gz 111.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for BuildNotify 3.0.0
File Interpreter ABI Platform
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 log

Release 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

Release history Release notifications | RSS feed

This release

3.0.0 This release

2 release files

2.1.0

1 release file

2.0.0

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1.0.0

1 release file

0.3.5

1 release file

0.3.4

1 release file

0.3.3

1 release file

0.2.9

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page