1. Installation¶
These days, alot can be installed directly using your favourite package manager. On a recent Debian (-derived) systems for instance, just do sudo apt install alot and you’re done.
Note
Alot uses mailcap to look up mime-handler for inline
rendering and opening of attachments.
To avoid surprises you should at least have an inline renderer
(copiousoutput) set up for text/html in your ~/.mailcap
:
text/html; w3m -dump -o document_charset=%{charset} '%s'; nametemplate=%s.html; copiousoutput
On more recent versions of w3m, links can be parsed and appended with reference numbers:
text/html; w3m -dump -o document_charset=%{charset} -o display_link_number=1 '%s'; nametemplate=%s.html; copiousoutput
See the manpage mailcap(5) or RFC 1524 for more details on your mailcap setup.
1.1. Manual installation¶
Alot depends on recent versions of notmuch and urwid. Note that due to restrictions on argparse and subprocess, you need to run python ≥ 3.5 (see faq). A full list of dependencies is below:
libmagic and python bindings, ≥ 5.04
configobj, ≥ 4.7.0
libnotmuch and it’s python bindings, ≥ 0.30
urwid toolkit, ≥ 1.3.0
urwidtrees, ≥ 1.0.3
gpg and it’s python bindings, > 1.10.0
twisted, ≥ 18.4.0
On Debian/Ubuntu these are packaged as:
python3-setuptools python3-magic python3-configobj python3-notmuch python3-urwid python3-urwidtrees python3-gpg python3-twisted python3-dev swig
On Fedora/Redhat these are packaged as:
python-setuptools python-magic python-configobj python-notmuch python-urwid python-urwidtrees python-gpg python-twisted
To set up and install the latest development version:
git clone https://github.com/pazz/alot
python3 -m venv dev-venv
. dev-venv/bin/activate
pip install -e .
or you can install the development version into ~/.local/bin
:
pip install --user .
Make sure ~/.local/bin
is in your PATH
. For system-wide
installation omit the –user flag and call with the respective permissions.
1.2. Generating the Docs¶
This requires sphinx, ≥ 1.3 to be installed. To generate the documentation from the source directory simply do:
make -C docs html
A man page can be generated using:
make -C docs man
Both will end up in their respective subfolders in docs/build
.
In order to remove the command docs and automatically re-generate them from inline docstrings, use the make target cleanall, as in:
make -C docs cleanall html