LEI-OVERVIEW(7) | public-inbox user manual | LEI-OVERVIEW(7) |
lei - an overview of lei
lei(1) is a local email interface for public-inbox and personal mail. This document provides some basic examples.
lei has writable local storage based on public-inbox-v2-format(5). Commands will automatically initialize the store behind the scenes if needed, but you can call lei-init(1) directly if you want to use a store location other than the default "$XDG_DATA_HOME/lei/store".
The lei-import(1) command provides the primary interface for importing messages into the local storage. In addition, other commands, such as lei-q(1) and lei-blob(1), use the local store to memoize messages from remotes.
In addition to the above store, lei can make read-only queries to "externals": inboxes and external indices. An external can be registered by passing a URL or local path to lei-add-external(1). For existing local paths, the external needs to be indexed with public-inbox-index(1) (in the case of a regular inbox) or public-inbox-extindex(1) (in the case of an external index).
lei currently has primitive mail synchronization abilities; see lei-mail-sync-overview(7) for more details.
The lei-q(1) command searches the local store and externals. The search prefixes match those available via public-inbox-httpd(1).
Inline::C is required, lei runs as a background daemon to reduce startup costs and can provide real-time kqueue(2)/inotify(7) Maildir monitoring. IO::KQueue (p5-IO-KQueue on FreeBSD) and Linux::Inotify2 (liblinux-inotify2-perl and perl-Linux-Inotify2 in .deb and .rpm-based distros, respectively) are recommended.
Socket::MsgHdr is optional (libsocket-msghdr-perl in Debian), and further improves startup performance. Its effect is most felt when using shell completion.
Preliminary Bash completion for lei is provided in "contrib/completion/". Contributions adding support for other shells, as well as improvements to the existing Bash completion, are welcome.
Since lei runs as a daemon, lei-daemon-kill(1) is required to kill the daemon so it can load new code. It will be restarted with the next invocation of any lei command.
IMAP and NNTP client performance is poor on high-latency connections. It will hopefully be fixed in 2022.
Feedback welcome via plain-text mail to <mailto:meta@public-inbox.org>
The mail archives are hosted at <https://public-inbox.org/meta/> and <http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/>
Copyright all contributors <mailto:meta@public-inbox.org>
License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
1993-10-02 | public-inbox.git |