On Sat, Feb 4, 2012 at 4:35 AM, Jani Nikula
<jani@nikula.org> wrote:
On Sat, 04 Feb 2012 09:15:16 +0000, David Edmondson <
dme@dme.org> wrote:
> On Sat, 4 Feb 2012 03:39:23 -0500, don warner saklad <
don.saklad@gmail.com> wrote:
> > a) For gmail how do you setup notmuch mail ?...
> >
> > b) Any workarounds?
> >
> > c) Any kludges?
I'll describe my own setup for using notmuch with gmail. I don't pretend
it will work for everyone, but you might find some bits of it useful.
I don't even try to sync notmuch tags and gmail labels (because I rarely
use the labels or the web interface anyway), but I do get sync for
"unread" and "flagged" (gmail and Android "starred"). You'll need
maildir.synchronize_flags = true in your ~/.notmuch-config for this.
I'm using a similar setup. An inconvenience with the setup is that I have various filters in gmail that filter, e.g., mailing list mails by skipping the gmail inbox and applying specific tags. As a result when I look at my gmail inbox, I don't see these (many) mailing list messages. With offlineimap+notmuch, however, since it just gets all the messages from [Gmail]/All Mail, it has no way of distinguishing between these two classes of messages, and so the notmuch new and unread message lists contain many messages that I don't want to look at. Ideally, I'd like a view in notmuch that shows the same messages as the gmail inbox. Is there a way to accomplish this?
- b
> Many people around here do that using offlineimap, which will
> synchronise an IMAP server (Gmail in this instance) with various local
> directories in Maildir format.
I use offlineimap. I run it from the notmuch pre-new hook. This means I
have to run "notmuch new" to receive new mail.
$ cat ~/.maildir/.notmuch/hooks/pre-new
#!/bin/sh
exec /usr/bin/offlineimap
I only sync "All Mail" from gmail. Perhaps there would be some
optimizations that could be done, but I haven't bothered yet.
$ cat ~/.offlineimaprc
[general]
accounts = Gmail
ui = Noninteractive.Basic
[Account Gmail]
localrepository = Local
remoterepository = Remote
[Repository Local]
type = Maildir
localfolders = ~/.maildir
[Repository Remote]
type = IMAP
ssl = yes
remotehost = imap.gmail.com
remoteuser = USER@gmail.com
expunge = no
realdelete = no
folderfilter = lambda foldername: foldername in ['[Gmail]/All Mail']
nametrans = lambda foldername: re.sub('^\[Gmail\]/All Mail', 'gmail', foldername)
> Sending mail via Gmail can be done in various ways. You can set up your
> local MTA (Postfix, Exim, ...) to deliver mail via Gmail, or have Emacs
> do the same directly using the smtpmail.el package.
Personally I use msmtp (msmtp and msmtp-mta packages in Debian based
distros). The msmtp-mta sets up a sendmail-like binary that works out of
the box in Emacs. Beware that it doesn't have a local queue, it works
synchronously.
$ cat ~/.msmtprc
defaults
logfile ~/.msmtp.log
tls_trust_file /etc/ssl/certs/ca-certificates.crt
account default
host smtp.gmail.com
from USER@gmail.com
tls on
tls_starttls off
auth on
user USER@gmail.com
Finally, I use goobook to use the gmail contacts as addressbook in
Emacs. See http://mid.gmane.org/87zkfuh3i0.fsf@nikula.org for that.
HTH,
Jani.