Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jonhoo/hasmail
Simple tray icon for detecting new email on IMAP servers
https://github.com/jonhoo/hasmail
email imap notifications systray utility
Last synced: 3 months ago
JSON representation
Simple tray icon for detecting new email on IMAP servers
- Host: GitHub
- URL: https://github.com/jonhoo/hasmail
- Owner: jonhoo
- Created: 2013-02-20T23:45:45.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2023-08-13T09:22:58.000Z (over 1 year ago)
- Last Synced: 2024-10-14T20:57:10.433Z (3 months ago)
- Topics: email, imap, notifications, systray, utility
- Language: Go
- Size: 36.1 KB
- Stars: 30
- Watchers: 4
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
**This project has been rewritten in Rust, and is now maintained under https://github.com/jonhoo/buzz/.**
---
# Introduction #
Using mutt (or pine), but annoyed that it doesn't give you any notifications
when you've received new emails? hasmail 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.When hovering the mouse over the tray icon, hasmail shows which of the
configured accounts have unseen messages. Clicking the icon executes a
user-defined command.# Configuration #
hasmail looks for `~/.hasmailrc` and expects a file in simple INI syntax. The
configuration file consists of (currently) one global option and one or more
accounts, each with multiple fields.## Global fields ##
- click: this command will be executed when clicking the tray icon
## Account fields ##
The value in [] can be anything, and will be what is shown in the tooltip. The
options for an account are as follows:- hostname: The address (+ port) to connect to. MUST currently be SSL/TLS
enabled. Required.
- username: Username for authentication. Required.
- password: Command to execute to get password for authentication. Required.
- click: An optional command to execute when clicking the tray icon if this,
and only this, account has new messages. If this option is present, it
overrides the global click option in the described scenario.
- folder: What folder to check for new messages. INBOX is the default.
- poll: How often (in minutes) to force a recheck of the account. By default it
is set to 29 (as suggested in the spec) to avoid the server disconnecting us
due to inactivity.# Installation #
Assuming you've checked this out into `$GOPATH/src/hasmail`, just run
`go install hasmail`. If your path is set up correctly, you should be able to
run `hasmail` and get the message "Failed to load configuration file,
exiting...". Create your config and you're ready!If you're lucky enough to be running [Arch Linux](https://www.archlinux.org/),
you can just install the package from [the
AUR](https://aur.archlinux.org/packages/hasmail/) or run `makepkg` in `pkg/`.# Major dependencies #
- https://github.com/mattn/go-gtk/
- http://code.google.com/p/go-imap/
- https://github.com/dlintw/goconf/# License #
Use this code for whatever you want if you find it useful. You don't need to put
any attribution (even though I'd be happy if you did), but please let me know if
you use it for anything interesting!