1. 33

Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can. -jwz

Ever wondered whether you can read email in plan9 acme? The answer is “Yes”. Follow along to learn how to set it up.

The steps are slightly OpenBSD centric, but easily adapted to other platforms that run plan9port.

  1.  

  2. 2

    I’ve played with using a program called amail to read mail in acme, but can’t recommend it. It’s written in a literate style, which means the actual code produced is just a giant pile of slinkys and impossible to read by itself.

    It’s on my long list of projects to write a maildir adapter for Mail or add maildir support directly so that I can continue to use my mbsync+msmtp workflow.

    1. 2

      This might be overkill, but setup dovecot(1) on your local system. Let it serve email to Acme via IMAP. Your current workflow should continue to work.

      I used to do something similar when I used gnus on Emacs. The only difference is I used the doveadm(1) sync command to keep the local in sync with the primary server. For dovecot-to-dovecot syncing, doveadm(1) is the way to go.

    2. 1

      I cringe when I see practice of putting clear passwords in any text file, especially the dreaded .netrc.

      Supposedly secstore(1) could help with that, but I have never ventured further in those. Can somebody say anything about the security aspect of these programs in plan9port?

      1. 1

        With msmtp(1) you should use the passwordeval option which will evaluate an expression and use whatever is returned on stdout as the password:

        gpg2 --no-tty -q -d ~/.msmtp-password.gpg
        

        Install pinentry-gtk2 and you’ll get a nice dialog box.

        I intended to mention the passwordeval option, but the writing went into the wee hours and it was lost. :D I’ve updated the $HOME/.msmtprc example with a note referencing it.

        As for secstore(1), that’s a backing store for factotum(4). I think you could use passwordeval with factotum(4).

        1. 1

          How does one set up factotum with secstore? Can I use it the same way I use pass? If I don’t explicitly use secstore will I have to set the secret everytime I start factotum?

          1. 1

            iirc, yeah, you’ll get prompted. Well, may get prompted. I don’t think things like auth/fgui(1) got brought over.

      2. 1

        My initial searches proved worthless, I’ll try to set this up after work, thanks a ton! I’m mathuin from bsd.network by the way, so this is really on point.

        1. 2

          I had been thinking to write some articles about plan9 and Acme. Your question on https://bsd.network prompted me get started. Let me know how it goes.

          1. 1

            I was wondering why you chose msmtp over the openbsd smtp?

            1. 1

              A couple of reasons:

              1. I already have it configured for multiple services I send through (personal domain, gmail),
              2. msmtp is more of a client that functions like sendmail(8) where smtpd(8) would need to be configured as relay host,
              3. It also runs in user space.
        2. 1

          Very cool, thank you very much! Will try it out today!