summaryrefslogtreecommitdiffstats
path: root/2022/talks/mail.md
diff options
context:
space:
mode:
Diffstat (limited to '2022/talks/mail.md')
-rw-r--r--2022/talks/mail.md153
1 files changed, 153 insertions, 0 deletions
diff --git a/2022/talks/mail.md b/2022/talks/mail.md
new file mode 100644
index 00000000..e0a54386
--- /dev/null
+++ b/2022/talks/mail.md
@@ -0,0 +1,153 @@
+[[!sidebar content=""]]
+[[!meta title="Revisiting the anatomy of Emacs mail user agents"]]
+[[!meta copyright="Copyright © 2022 Mohsen BANAN"]]
+[[!inline pages="internal(2022/info/mail-nav)" raw="yes"]]
+
+<!-- Initially generated with emacsconf-generate-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# Revisiting the anatomy of Emacs mail user agents
+Mohsen BANAN (MO-HH-SS-EN, he/him, <mailto:emacs@mohsen.1.banan.byname.net>)
+
+[[!inline pages="internal(2022/info/mail-before)" raw="yes"]]
+
+Actually, it makes very good sense to use Emacs as your Mail User Agent (MUA).
+A dominant and fundamental aspect of
+mail composition and mail processing is editing. And, if you live inside of
+Emacs, of course you expect to have the
+ultimate messaging environment.
+
+Over the years many Emacs MUAs have appeared. As of 2022, the following Emacs
+MUAs are available to choose from:
+Gnus, VM, WanderLust, Mew, mu4e, notmuch.el, mh-e and Rmail.
+
+Emacs MUAs can be used as Monolithic-MUAs (with elisp smtp and imap protocol
+implementations) or as Split-MUAs (with external
+smtp and imap protocol implementations). We make a case for superiority of the
+Split-MUA model.
+Recent evolutions of Gmail and Outlook towards requiring OAuth and our agility
+to better address that
+requirement based on the Split-MUA anatomy is one of our justifications for
+converging
+towards the Split-MUA anatomy.
+
+While what we are presenting here applies to all Emacs MUAs, our focus is Gnus.
+Gnus is distributed with Emacs proper and is the richest and most potent MUA,
+anywhere!
+
+We have wrapped all that is needed to use Gnus as a complete Split-MUA for
+Unix-like environments in a package
+called MARMEE (Multi-Account Resident Message Exchange Environment).
+
+MARMEE consists of a set of packages that span:
+
+- Deb GNU/Linux Packages
+- PyPI Python Packages
+- Emacs Elisp Packages
+
+plus everything that is needed to properly install these on Debian-like GNU/
+Linux systems and
+integrate them with Gnus. By choice, we have limited our integration languages
+to elisp, python and bash.
+
+MARMEE component packages include:
+
+- OuterRim-qmail (deb+PyPI) – Outer Rim oriented qmail, as a Resident Mail Submission UA.
+ qmail-remote is replaced by a python implementation which includes OAuth
+ awareness.
+ qmail-inject is replaced by a python implementation which is X822-Bus aware
+ (for DSN requests)
+- offlineimap (PyPI) – as a Resident Mail Retrieval UA.
+ offlineimap includes OAuth awareness.
+- notmuch (deb) – for searching
+- gpg (deb) – for privacy and integrity
+- flufl.bounce (PyPI) – for bounces and DSN (Delivery Status Notification)
+ processing.
+- bisos.cs (PyPI) – BISOS CommandServices for configuration and secrets
+ management and integration.
+- gmailOauth2.cs (PyPI) – For SMTP and IMAP authentication/authorization
+ through gmail.com
+ Used by qmail-remote for out-going and by offlineimap for in-coming OAuth
+ based mail.
+- org-msg (EmacsPkg) – For HTML-composition in org-mode and for htmlized
+ citations.
+- mcdt (EmacsPkg) – Mail Composition, Templating, Distribution and Tracking.
+
+The integration framework for MARMEE is BISOS (ByStar Internet Services OS).
+Full integration of Emacs, MARMEE and BISOS is called Blee (ByStar Libre-Halaal
+Emacs Environment).
+The easiest way to use MARMEE is to install BISOS – which includes Blee.
+
+In this talk I will demonstrate what a wonderful environment the Split-MUA
+model of Gnus+MARMEE can be.
+
+After walking through the concepts and the integration framework, I&rsquo;ll walk
+through transparent access to
+multiple mail servers conveniently and show org-mode composition of BIDI emails
+going out as html.
+
+My primary goal is to show that these packages can be integrated, but that
+integration is not simple.
+Furthermore, various improvements can be made to the packages to enhance the
+complete integrated environment.
+I&rsquo;ll be enumerating my requests from relevant package managers.
+If we were to collectively buy into something like this, we can greatly
+simplify use of Emacs MUAs
+with all mail systems – including the commonly used Gmail and Outlook.
+
+Of course, we should not be using Gmail and Outlook. Instead we should extend
+Libre Software into Libre Services
+and provide for edge-oriented autonomy and privacy in the services domain.
+There is a services side to
+what we have presented here. It is called &ldquo;The Libre-Halaal By* (ByStar)
+Digital Ecosystem&rdquo; – <http://www.by-star.net/>
+Perhaps that could be a topic for the next EmacsConf.
+
+For questions or comments, feel welcome to email me at: <mailto:emacs@mohsen.1.banan.byname.net>
+# Discussion
+
+## Notes
+
+- great talk -- this is a **LOT** of info to ingest!
+- link to book on polyexistentialism:
+ <http://www.by-star.net/content/generated/doc.free/mohsen/PLPC/120033/>
+
+## Questions and answers
+
+- Q:something I have liked about notmuch is using maildir makes
+ searching fast and the knowledge that you have all your email
+ period:) why gnus over notmuch. as a side note you also have
+ muchsync for notmuch clients and jmap for more exotic normal
+ clients.
+ - A:
+- Q:So the idea is more about emacs as a holistic computing experiance
+ with other packages and services rather than about email specificly.
+ as an alternative to the something like the microsoft office suite?
+ - A:
+- Q: Early on you expressed misgivings about the western copyright
+ regime, but you're using a GPL license.  Is this a conflict? (great
+ work BTW)
+ - A:
+- Q: Do you know of GNU Guix how do you think about using it for
+ packaging/configuring Emacs & your various packages else you might
+ look it up;) Or nix"os"
+ - A:
+- Q:Is this being split up in a heavily configured server for emall
+ hosting and a thin client package for youl local client to integrate
+ with your emacs packages, maybe with a client thin docker container
+ for other packages like notmuch locally
+ - A:
+- Q:Could you expand on the definition libre-halaal?
+ - A:(answered - capture TBD)
+- Q: What is the scope of what you are imagining? Just software?
+ - A: (answered - capture TBD)
+- Q:NFTs! 
+ - A: (responded - capture TBD)
+
+
+[[!inline pages="internal(2022/info/mail-after)" raw="yes"]]
+
+[[!inline pages="internal(2022/info/mail-nav)" raw="yes"]]
+
+[[!taglink CategoryMail]]