Mother is an rc(1) script that provides a very similar experience to nedmail(1). Note: saved messages are copied manually to the mbox directory in mdir format (the default used by Erik Quanstro’s nupas and 9front’s upas). All other interactions between mother and mail messages occur via upasfs(4).

Download it here.


usage: mother [ -d ] [ -f mbox ] [ -p msg ]

Commands are of the form [<range>] <command> [args]
<range> := <addr> | <addr>,<addr>
<command> :=
a       reply to sender and recipients
b       print the next ten headers
d       mark for deletion
e ...       enter message (args passed to upas/marshal)
g/regexp/cmd    grep headlines for regexp and run cmd on matches
h       print message headline (,h for all)
help        print this help message
m ...       forward mail to address(es)
mb ...      change to specified mailbox
p       print the processed message
P       print the raw message
q       quit
r       reply to message
s ...       store message in specified mailbox
u       remove deletion mark
y       synchronize with mail box
"       print message in quoted form, suitable for reply
|cmd        pipe the processed message to a command
||cmd       pipe the raw message to a command
!cmd        run a command


A script may be used in conjunction with faces(1) and the plumber(4) to open individual messages (or the entire mailbox) by clicking mb1 on a face in the faces(1) window. Each click produces a new window containing the selected message.

The script: facemother <- read and modify as needed before using

The plumber rule:

# faces -> new mail window for message
type    is  text
data    matches '[a-zA-Z¡-￿0-9_\-./]+'
data    matches '/mail/fs/[a-zA-Z¡-￿0-9/]+/[0-9]+'
plumb   to  showmail
plumb   start   window -r 646 117 1366 676 facemother $0