Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

a maildir client and library

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 src
Octocat-spinner-32 useragents
Octocat-spinner-32 .hgignore
Octocat-spinner-32 .hgtags
Octocat-spinner-32 .veh.conf
Octocat-spinner-32 AUTHORS files for dist July 05, 2010
Octocat-spinner-32 COPYING files for dist July 05, 2010
Octocat-spinner-32 MANIFEST.in
Octocat-spinner-32 README.creole
Octocat-spinner-32 setup.py
README.creole

md - a maildir client and library

md is a foundation for handling mail directly with maildirs. It allows you to circumvent IMAP servers and clients and deal directly with the underlying storage.

md is designed to be a little like MH. A command line tool (which can also be a shell) provides stateless access to your mail.

Folders are fully supported.

Some examples:

$ export MAILDIR=~/Maildir
$ md ls
INBOX#1278373500.V801Ie8c29aM925471  2010-07-06 01:12:43  <noreply@github.com> [] [GitHub] someone commented on a commit
INBOX#1278377415.V801Ie8c29bM873637  2010-07-06 02:18:04  <noreply@github.com> [] [GitHub] somebody commented on a commit
INBOX#1278408713.V801Ie8c328M715195  2010-07-06 10:59:47  <noreply@github.com> [] [GitHub] someoneelse commented on a commit

$ md text INBOX#1278408713.V801Ie8c328M715195
return-path: <noreply@github.com>
received: from github.com (fe2.rs.github.com [172.17.1.5])
	by smtp1.rs.github.com (Postfix) with ESMTPS id 71DF442096

Cool, ok. I see it the same way. If you find a working solution it is
fine and one learns something by doing it. I didn't want you to change
your solution, you see mine is simple enough to do it in five
minutes. Well, have fun!

md is nowhere near complete yet, and not at all usable for most people as any kind of mail tool. If you are interested in the approach however, here it is, ready for you to hack on.

Building md

md requires my simple filesystem abstraction library. If you're hacking on md you may want to use veh for building the dependancies into a virtualenv. md provides the veh config file for making it work, just do:

veh refresh

to make sure you have the latest dependancies.

Pulling mail into a maildir

md provides a method for pulling mail from a remote host. Unfortunately, right now, it only works over ssh so you must have an account on the remote host where your mail arrives.

Of course, you could also use pop3 or some such.

A list of things we may do

Better mail pulling: I would like to be able to pull mail from remote servers over a variety of methods. Mostly the commands are there and just need to be integrated with md. For example, a POP3 or IMAP4 pull would be relatively simple.

Built in filtering: I would like to add a find command to md analagous to UNIX find. Similar searching and filtering options may be added to ls.

Something went wrong with that request. Please try again.