README
Introduction
Using mutt (or pine), but annoyed that it doesn't give you any
notifications when you've received new emails? buzz is a simple tray
application that detects new emails on IMAP servers using IDLE (push
rather than pull). When it detects unseen messages, it shows a OSD style
notification and changes the tray icon to indicate that you have new
mail.
This project is a Rust fork of
hasmail, which provides basically
the same features, and is written in Go.
What does it look like:


Configuration
buzz looks for a
TOML
configuration file in ~/.config/buzz.toml on startup. The
configuration file consists of a number of account tables, each corresponding
to one account:
[[account]]
name = "gmail"
server = "imap.gmail.com"
port = 993
username = "[email protected]"
pwcmd = "gnome-keyring-query get gmail_pw" # or use the `password` field to set it in plain text
notificationcmd = "ssh -t somehost wall 'New gmail message!'" #Optional
folders = [ "INBOX" ] # Optional
Additionally, icons can be configured in an icon section:
[icons]
connected = "/usr/share/icons/Faenza/stock/24/stock_connect.png"
disconnected = "/usr/share/icons/Faenza/stock/24/stock_disconnect.png"
unread = "/usr/share/icons/oxygen/base/32x32/status/mail-unread.png"
new_mail = "/usr/share/icons/oxygen/base/32x32/status/mail-unread-new.png"
Account fields
The value in [] can be anything (though avoid . as it will be parsed
as a new TOML section), and is shown in the tooltip when new e-mails
arrive for an account. The options for an account are as follows:
server: The address to connect to. MUST currently be SSL/TLS
enabled.port: The port to connect to.username: Username for authentication.pwcmd: Command to execute to get password for authentication.notificationcmd: Additional command to be executed on new messages for this account.folder: Name of the folder to watch (optional; defaults to "INBOX").
TODOs
- [ ]
clickcommand - [ ] hover tooltip
- [x] customizeable folder