.. | ||
autoload | ||
config.el | ||
packages.el | ||
README.org |
email/mu4e
Table of Contents TOC
Description
This module makes Emacs an email client, using mu4e
.
I want to live in Emacs, but as we all know, living is incomplete without email. So I prayed to the text editor gods and they (I) answered. Emacs+evil's editing combined with org-mode for writing emails? Yes please.
It uses
mu4e
to read my email, but depends onofflineimap
(to sync my email via IMAP) andmu
(to index my mail into a formatmu4e
can understand).
Module Flags
+gmail
Enables gmail-specific configuration.
Plugins
This module install no plugins.
Prerequisites
This module requires:
- Either
mbsync
(default) orofflineimap
(to sync mail with) mu
, to index your downloaded messages and to provide themu4e
package.
MacOS
brew install mu
# And one of the following
brew install isync # mbsync
brew install offlineimap
Arch Linux
Run one of the following commands.
sudo pacman -S isync # mbsync
# OR
sudo pacman -S offlineimap
Install mu
, which is not available in the main repositories but in the AUR, by
using for example the AUR helper yay
.
yay -S mu
NixOS
environment.systemPackages = with pkgs; [
mu
# And one of the following
isync
offlineimap
];
openSUSE
Remove #
in #sync_program=offlineimap
to choose offlineimap
instead of
mbsync
.
sync_program=isync # mbsync
#sync_program=offlineimap
sudo zypper install maildir-utils $sync_program
Debian/Ubuntu
Run the command corresponding to the desired backend and the last one.
sudo apt-get install isync # mbsync
# or
sudo apt-get install offlineimap
# then
sudo apt-get install maildir-utils # mu
TODO Features
Configuration
offlineimap
This module uses mbsync
by default. To use offlineimap
, change +mu4e-backend
:
(setq +mu4e-backend 'offlineimap)
Next, you need to write a configuration file for offlineimap
. Mine can be found
in my dotfiles repository. It is configured to download mail to \~/.mail
. I
use unix pass to securely store my login credentials. You can find a very
detailed configuration here.
Next you can download your email with offlineimap -o
. This may take a while,
especially if you have thousands of mails.
You can now proceed with the mu and mu4e section.
mbsync
The steps needed to set up mu4e
with mbsync
are very similar to the ones for
offlineimap.
Start with writing a \~/.mbsyncrc
. An example for GMAIL can be found on
pragmaticemacs.com. A non-GMAIL example is available as a gist here. The manual
page contains all needed information to set up your own.
Next you can download your email with mbsync --all
. This may take a while, but
should be quicker than offlineimap
;).
You can now proceed with the mu and mu4e section.
mu and mu4e
You should have your email downloaded already. If you have not, you need to set
offlineimap
or mbsync
up before you proceed.
Before you can use mu4e
or the cli program mu
, you need to index your email
initially. How to do that differs a little depending on the version of mu
you
use. You can check your version with mu --version
.
For mu
>=1.4 you need to run two commands:
mu init --maildir ~/.mail --my-address email@example.com
mu index
mu
<1.4 only requires one command:
mu index --maildir ~/.mail
Then configure Emacs to use your email address:
;; Each path is relative to `+mu4e-mu4e-mail-path', which is ~/.mail by default
(set-email-account! "Lissner.net"
'((mu4e-sent-folder . "/Lissner.net/Sent Mail")
(mu4e-drafts-folder . "/Lissner.net/Drafts")
(mu4e-trash-folder . "/Lissner.net/Trash")
(mu4e-refile-folder . "/Lissner.net/All Mail")
(smtpmail-smtp-user . "henrik@lissner.net")
(user-mail-address . "henrik@lissner.net") ;; only needed for mu < 1.4
(mu4e-compose-signature . "---\nHenrik Lissner"))
t)
Troubleshooting
No such file or directory, mu4e
You will get No such file or directory, mu4e
errors if you don't run doom
sync
after installing mu
through your package manager.
(void-function org-time-add)
error on Gentoo
Gentoo users will see this error because the net-mail/mu
package eagerly loads
mu4e
(which pulls in org
) much too early; before Emacs reads ~/.emacs.d
.
So early, that it loads the built-in version of org-mode, rather than the newer
version that Doom installs.
Later versions of the net-mail/mu
package have fixed this issue, but you may
need to switch to the unstable build of net-mail/mu
to see it.