go-imap-notmuch

command module
v0.0.0-...-5584dbf Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2023 License: MIT Imports: 8 Imported by: 0

README

go-imap-notmuch

This software is experimental, use at your own risk. Please make a backup of your Maildir and notmuch database before trying to use this. I've also mostly given up on this idea and I've just put Dovecot + Solr in front of my Maildir.

go-imap-notmuch creates an IMAP gateway to your notmuch database, allowing you to use any client to search notmuch, including converting IMAP search semantics to notmuch queries.

If you'd like to directly use notmuch's syntax, you can do a full-text search with the notmuch query.

Most of IMAPv4 is implemented, but not everything works. Nor does everything work perfectly but I've tested with Evolution and Roundcube and it's usable.

Thank you very much to the authors of notmuch, go-imap and go-notmuch for making this possible.

Why?

A long time ago, I hosted my own mail server but it's just become too difficult to stay out of Junk folders -- despite doing all the right things like DKIM, SPF, etc. I now host my mail on Fastmail, mirror it to a Maildir, index with notmuch, and mostly use neomutt. The problem with this setup is I can't access messages from my iOS devices easily.

This lets me use a webmail client like Roundcube on my iPhone when I'm away from home.

I don't reccomend putting this on the internet, but rather use a VPN to get to it.

Configuration

---
username: "notmuch"
# bcrypt password:
password: "$2y$10$ieWd7rkUs/PNz1Iy5wGuY.hmDjfq5toZApZJb9P7Eu36ew/1thYwK"
maildir: "/home/stbenjam/Mail"
mailboxes:
  - name: INBOX
    query: "folder:INBOX"
  - name: Sent
    query: "folder:Sent"
    attributes:
      - Sent

Note: Mailbox attributes are ones specified by RFC6154, such as Drafts, Sent, etc.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
uid
Package uid contains a simple mapper for UID (an integer value) and the notmuch database ID (a string) and persists it to disk.
Package uid contains a simple mapper for UID (an integer value) and the notmuch database ID (a string) and persists it to disk.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL