fbrausse/mar
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
mar
~~~
mar stands for MIME archiver and orients itself on the popular tar(1) command
regarding usage and semantics of the command line arguments.
Development started because of the need to send complex mails from shell
scripts and because the author doesn't use mutt(1) (which supports any
complexities regarding mail composition) and because metamail(1) [4] was too
inflexible to accomodate the author's needs.
Compilation
~~~~~~~~~~~
mar leverages the gmime package [1] for all MIME-related processing and
therefore depends also on glib [2] and gio [3]. To use the Makefile, pkg-config
must be available in the PATH and configured to provide compile/link flags for
the above packages.
To compile mar, a simple
$ make
suffices.
So far, it has only been tested on Linux boxes, where it is developed and
deployed.
Usage
~~~~~
I use mar to extract attached patches from mails to store them at some place
where I remember to look. The second and more important use case for me is to
scriptedly send mails to students with stuff attached, like so:
$ echo "$BODY" | mar cs "$SUBJ" -t "$TO" -i - "${FILES[@]}" | \
> nullmailer-inject
(This command line uses the nullmailer [5] relay-only MTA, but any other MTA
expecting pre-formatted mails on stdin should work fine.)
Because ordinary mails w/o attachments can easily be sent using the mail(1)
command, there is no support for creating non-multipart MIME messages in mar.
References
~~~~~~~~~~
[1] <http://spruce.sourceforge.net/gmime/>
[2] <http://www.gtk.org/>
[3] <http://www.gtk.org/>
[4] <http://ftp.funet.fi/pub/unix/mail/metamail/>
[5] <http://untroubled.org/nullmailer/>