dmc

dynamic mail client
git clone git://git.suckless.org/dmc
Log | Files | Refs | README | LICENSE

wipmail.txt (3981B)


      1 markus schnalke wrote:
      2 > [2009-10-06 16:26] pancake <pancake@youterm.com> 
      3 >     
      4 >> PD: Actually I have not found a more fast, usable and simplest mail client
      5 >> than the one shipped with iphone-os. And no, fetchmail,mutt,claws,telnet
      6 >> are not decent solutions. Should we open another thread to create a suckless
      7 >> mail client?
      8 >>       
      9 >
     10 > What do you mean with ``mail client''? MTA, MUA, MDA, or all of them in one?
     11 >     
     12 A solution that manages MTA, MUA, MDA and MDMA plus LSD in a simple
     13 way.
     14 
     15 This is:
     16   - Keep a partial local cache of the mails (only last 50?)
     17      - imap support server search, so why i have to mirror the folders 
     18 with 53200 mails?
     19   - Only sync selected folders automatically or every N minutes
     20   - Attachments should be only retrieved in a second stage (on slow 
     21 connections
     22     is really useful)
     23 
     24 Client must provide a simple tree way to walk on folders (filesystem?) 
     25 every time a mail is fetched a file is created and it is touched with 
     26 the specified timestamp.
     27 
     28 I already wrote a patch for msmtp that checks for the MX entry for a 
     29 domain to
     30 automatically specify the remote SMTP server, so no need to configure 
     31 any smtp
     32 server for sending mails. I find this solution much simpler for most 
     33 situations (unless
     34 you are on a restricted network that only allows you to connect to your 
     35 local smtp)
     36 
     37 So, what I see here is a simple application that manages files in 
     38 directories and allows to create formatted files (using a template) on 
     39 some directories using $EDITOR,
     40 a command to check files in Outbox to push them to remote servers and commit
     41 them into the Sent directory.
     42 
     43 The basic imap operations can be easily mapped as filesystem ones:
     44   - list, copy, move, remove
     45 
     46 Just having a simple application to manage pop3/smtp with those minimal 
     47 operations
     48 and writing a simple frontend to edit files on certain directories based 
     49 on templates.
     50 
     51 Stuff like gpg, html2text (or text2html for those who wants to raise 
     52 hate on mailing
     53 lists), filters to format a mail into a 'reply' format prefixing lines 
     54 with '>' ... are just
     55 pre and post-hooks when calling the $EDITOR or $PAGER.
     56 
     57 The only missing thing I see in this model is the part of attached 
     58 files. This can be
     59 solved by having a directory with the same filename of the mail plus 
     60 .files and have
     61 an application to serialize mail+attachments into a single text stream 
     62 before sending
     63 it to the smtp (maybe using msmtp) can be ideal.
     64 
     65 To setup accounts I can think on a single entrypoint with simple format 
     66 that configures
     67 the rest of applications to work with.
     68 
     69 Multiple accounts should be managed by this approach. Marking emails as 
     70 read/...
     71 can be just a sed script changing a header.
     72 
     73 I have never understood why there is no decent mail implementation like 
     74 the one
     75 explained above. The only problematic to implement such thing is the 
     76 lack of decent
     77 smtp/pop/imap clients. I think that ssl support can be done by local 
     78 openssl bouncers.
     79 
     80 Another *important* thing is that the SSL stuff must be checked, so in 
     81 this way you
     82 can setup any kind of secure connection without having to reconfigure 
     83 your mail
     84 client. This is: connecting to localhost:110 to bounce the socket to an 
     85 VPN or an DNSTX
     86 network (or TOR, etc...), the client will just know nothing about the 
     87 underlying network,
     88 and the bouncer app will be the one to ensure that the connection is not 
     89 broken.
     90 
     91 Network *must* be an async dependency for a mail client, so I hate when 
     92 the client gets
     93 locked because of a network cut or slowdown, it is just something that 
     94 cannot be understood
     95 nowadays.
     96 
     97 By having all this simple setup done (in a single package, please, i 
     98 dont want to configure
     99 3 or 4 programs to get my email working) i can imagine a lot of 
    100 automatizations in scripts
    101 to autoreply emails, filter spam, etc.. And the GUI is actually a 
    102 filesystem.
    103 
    104 Email syncing is not only a thing of pop3/imap, we can also think on 
    105 using ssh or fuse to
    106 access/sync to our remote mailboxes or maildirs.
    107 
    108 --pancake
    109 
    110