Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit

In adwaita-icon-theme 42, the non-symbolic versions were removed from
the standard distribution. Therefore, switch to the symbolic versions.

Git stats


Failed to load latest commit information.
Latest commit message
Commit time

astroid logo

Astroid is a lightweight and fast Mail User Agent that provides a graphical interface to searching, displaying and composing email, organized in threads and tags. Astroid uses the notmuch backend for blazingly fast searches through tons of email. Astroid searches, displays and composes emails - and rely on other programs for fetching, syncing and sending email. Check out Astroid in your general mail setup for a suggested complete e-mail solution.

The tour of how to install, configure and use astroid provides detailed information on setup and usage, while brief instructions are provided below.

Main features

Acquiring astroid

Get astroid through git by:

$ git clone

Installation and Usage


$ cd astroid
$ cmake -H. -Bbuild -GNinja # to use the ninja backend
$ cmake --build build

Run cmake -DOPTION=VALUE .. from build/ to set any build options (list with cmake -L). Subsequent builds can be done by running ninja (or make if you are using that) from the build directory.

And to run the tests do:

$ cd build
$ ctest


Configure with a prefix and install:

$ cmake -H. -Bbuild -GNinja -DCMAKE_INSTALL_PREFIX=/usr/local
$ cmake --build build --target install

This will install the astroid binary into /usr/local/bin/, and data files into /usr/local/share/astroid/. Refer to the installing section in the wiki for more information.


The configuration of astroid is kept in the directory $XDG_CONFIG_HOME/astroid (normally: ~/.config/astroid/). Refer to the configuration section in the wiki for how to configure astroid. You can use astroid --new-config to create a configuration file filled with the default values. If no file exists, the default values are used.

Execution and Usage

$ ./build/astroid # to run from source repository

Press ? to get a list of available key bindings in the current mode, navigate up and down using j and k. Refer to the usage section in the wiki for more information on usage and customization.

Patches, Help, Comments and Bugs

Report on the github page or to the mailinglist at:, subscribe online or by sending an email to:

Contributions to Astroid in the form of patches, documentation and testing are very welcome. Information on how to contribute to astroid can be found in the wiki.

You can usually find us at #astroid (web) or #notmuch (web) at

This project adheres to Contributor Covenant Code of Conduct v1.4.


The main inspiration for astroid is the sup mail user agent. sup provided inspiration for notmuch which is a mail indexer. astroid is using notmuch as a backend.

Some parts of the user interface and layout has been inspired by the Geary mail client. Also, some inspiration and code stems from ner (another notmuch email client).


See for licensing information.