27 stable releases
2.0.0 | Apr 28, 2024 |
---|---|
1.7.0-rc.3 | Dec 17, 2023 |
1.7.0-rc.1 | Feb 19, 2022 |
1.6.0 | Apr 22, 2021 |
0.3.0 | May 15, 2017 |
#10 in Email
78KB
429 lines
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 = "jon@gmail.com"
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
-
click
command - hover tooltip
- customizeable folder
Dependencies
~18–49MB
~1M SLoC