Repository navigation
Releases
Releases · kodejeet/khat
khat v0.1.0
Native, minimal Gmail notifications for GNOME — one C++/Qt 6 binary, no Electron, no browser processes.
Highlights
- Instant on demand — checks read Gmail's incremental history feed, so a manual check surfaces fresh mail immediately; the background schedule stays quiet (default 3 h, configurable 5 min–24 h)
- Multi-account — authorize several Gmail accounts; notifications show sender, subject, and a preview, and open that exact message on click
- Privacy-first — read-only
gmail.readonlyscope, OAuth tokens in the GNOME Keyring, metadata only (no bodies or attachments), no telemetry - Per-user install without root —
install.shbuilds and installs to~/.local, sets up the systemd user service, desktop entry, icons, and thekhat(1)manual page - Sensible CLI —
--settings/--background(detaches) /--check-now/--exit;Ctrl+Qquits from the settings window - System-aware — single-instance socket, suspend/resume handling, macOS-style rounded icon
Install
curl -fsSL https://github.com/kodejeet/khat/raw/main/install.sh | bashRequirements: Ubuntu 24.10 or newer (Qt 6.5+), GNOME (Wayland or X11). See docs/installation.md for manual builds and docs/google-oauth-setup.md for the one-time Google Cloud setup (~5 minutes).
Notes
- While your Google Cloud project is in Testing mode, Google expires the OAuth consent every 7 days — reauthorize weekly, or publish the app for production
- Source archives (
Source code (zip/tar.gz)) are generated automatically by GitHub for this tag; no prebuilt binaries are shipped — the one-curl install builds from source on your machine - GNOME's Do Not Disturb intentionally silences khat's notifications (normal urgency, never critical)
Known limitations
- Baseline behavior: the first check after adding an account marks existing mail as seen instead of notifying about old messages
- Google search/listing quirks are handled with a 24-hour overlap window and per-account history cursors; an aged-out cursor falls back to a fresh baseline automatically
License: GPL-3.0-or-later