This program allows you to watch a Maildir for incoming email and display notifications when new messages arrive.
The displayed notifications are interactive - programs can be run when the user clicks on them.
Installation from PyPI:
pip3 install --user maildirwatch
Python3 is required.
Note: PyGObject is a dependency of this program. To install it, you might have to install GObject development libraries on your system. On Debian, the packages libgirepository1.0-dev
and gir1.2-notify-0.7
provide these libraries.
Use the maildirwatch
command, or:
python3 -m maildirwatch
The program will run forever or until you interrupt it with Ctrl-C.
To list available options, run:
maildirwatch --help
The program looks for the configuration file in $XDG_CONFIG_HOME/maildirwatch.conf
or ~/.config/maildirwatch.conf
if XDG_CONFIG_HOME
is not defined.
The configuration file is in Python's standard config format (understood by the configparser
module).
These options should be put in the [global]
section.
maildir
The directory to scan for maildirs. Default value:
~/Maildir
.ignore
Comma-separated list of maildir patterns to ignore. Each pattern must be in fnmatch style. By default, no maildirs are ignored.
Each action is a path to a program and a list of arguments. Every action also has a name that is displayed to the user.
Actions are typically displayed as text buttons below the notification body. When the user clicks on the action button, the action program is started.
Action definitions must be put in [actions]
section. Each action is defined like this:
action name = /path/to/program arg1 arg2 arg3...
One action name is special - the default
action. The default action's value should be the name of another action instead of path to a program. The program associated with default action is run when the user clicks on the notification itself, not an action button.
Below is an example configuration file that modifies path to the Maildir, ignores spam folder and defines two actions:
[global]
maildir = ~/mail
ignore = *Spam,*foo/bar*
[actions]
default = Show mu4e
Show mu4e = emacs -f mu4e
Start thunderbird = thunderbird
Copyright (C) 2019 Michał Krzywkowski
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.