lumail is a modern console-based email-client, with fully integrated scripting, implemented in the Lua programming language.
Although primarily developed and tested against GNU/Linux it should run upon Mac OS X, and FreeBSD. If your system isn't supported, and is Unix-like then this is a bug which should be fixed.
lumail is primarily designed to operate against local
Maildir-hierarchies, but IMAP support is available, as well as support for GPG for security.
README.md file contains brief details of the project, with more complete documentation provided on the homepage. The following links on the project website should be a good starting point:
Lumail is a console-based mail client, which is modal. A modal client means that you're always in one of a small number of states, or modes:
attachment-mode is related, allowing you to view the attachments associated with a particular message.
Hto enter this mode, and
qto return from it.
make install will install the binary, the libraries that we bundle, and the perl-utilities which are required for IMAP-operation.
If you wish to install manually then please copy:
Once installed you'll want to create your own personal configuration file.
To allow smooth upgrades it is recommended you do not edit the global configuration file
/etc/lumail/lumail.lua. Instead you should copy the sample user-configuration file into place:
$ mkdir ~/.lumail/ $ cp user.config.lua ~/.lumail/lumail.lua
If you prefer you can name your configuration file after the hostname of the local system - this is useful if you store your dotfiles under revision control, and share them:
$ mkdir ~/.lumail/ $ cp user.config.lua ~/.lumail/$(hostname --fqdn).lua
The defaults in the per-user configuration file should be adequately documented, but in-brief you'll want to ensure you set at least the following:
-- Set the location of your Maildir folders, and your sent-folder Config:set( "maildir.prefix", os.getenv( "HOME" ) .. "/Maildir/" ); Config:set( "global.sent-mail", os.getenv( "HOME" ) .. "/Maildir/sent/" ) -- Set your outgoing mail-handler, and email-address: Config:set( "global.mailer", "/usr/lib/sendmail -t" ) Config:set( "global.sender", "Some User <[email protected]>" ) -- Set your preferred editor Config:set( "global.editor", "vim +/^$ ++1 '+set tw=72'" )
If you wish to run directly from a
git-checkout you'll need to add some
command-line flags to change the default behavior:
This can be achieved like so:
$ ./lumail2 --load-path=$(pwd)/lib/ --no-default --load-file ./global.config.lua --load-file ./user.config.lua
By default you'll be in the
maildir-mode, and you can navigate with
k, and select items with
For a quick-start you can use the following bindings:
TAB- Toggle the display of the status-panel.
P- Toggle the size of the panel.
ctrl-penters you into a mode were you can view/scroll through past messages.
H- Shows the keybindings which are configured.
M- See your list of folders.
q- Always takes you out of the current mode and into the previous one.
Further documentation can be found upon the project homepage, but there are also some notes available within this repository: