Challenges to running normal mailing lists
------------------------------------------
+
1) spam
2) bounce processing of invalid/bad email addresses
3) processing subscribe/unsubscribe requests
Use existing infrastructure
---------------------------
+
* public-inbox can coexist with existing mailing lists, any subscriber
to the existing mailing list can begin delivering messages to
public-inbox-mda(1)
Why email?
----------
+
* Freedom from proprietary services, tools and APIs. Communicating with
developers and users of Free Software should not rely on proprietary
tools or services.
Why git?
--------
+
* git is distributed and robust while being both fast and
space-efficient with text data. NNTP was considered, but does not
support delta-compression and places no guarantees on data/transport
- integrity. However, an NNTP gateway (read-only?) is possible.
+ integrity. However, a read-only NNTP gateway is implemented.
-* As of 2014, git is widely used and known to nearly all Free Software
+* As of 2016, git is widely used and known to nearly all Free Software
developers. For non-developers it is packaged for all major GNU/Linux
and *BSD distributions. NNTP is not as widely-used nowadays.
Why perl 5?
-----------
+
* Perl 5 is widely available on modern *nix systems with good a history
of backwards and forward compatibility.
Laziness
--------
+
* Stick to dependencies available in Debian main, this should make it
easier for potential users to install, and easier for distro
maintainers to pick up.
Web notes
---------
+
* Getting users to install/run ssoma (or any new tool) is difficult.
The web views must be easily read/cache/mirror-able.
What sucks about public-inbox
-----------------------------
+
* Lack of push notification. On the other hand, feeds seem popular.
* some (mostly GUI) mail clients cannot set In-Reply-To headers
Scalability notes
-----------------
+
Even with shallow clone, storing the history of large/busy mailing lists
may place much burden on subscribers and servers. However, having a
single (or few) refs representing the entire history of a list is good
Copyright
---------
+
Copyright 2013-2015 all contributors <meta@public-inbox.org>
License: AGPLv3 or later <http://www.gnu.org/licenses/agpl-3.0.txt>
/$LISTNAME/$MESSAGE_ID/raw -> raw mbox
/$LISTNAME/$MESSAGE_ID/f/ -> HTML content (full quotes)
-### Legacy endpoints (may be ambiguous given Message-IDs with similar suffies)
+### Legacy endpoints (may be ambiguous given Message-IDs with similar suffixes)
/$LISTNAME/m/$MESSAGE_ID/ -> 301 to /$LISTNAME/$MESSAGE_ID/
/$LISTNAME/m/$MESSAGE_ID.html -> 301 to /$LISTNAME/$MESSAGE_ID/
/$LISTNAME/m/$MESSAGE_ID.txt -> 301 to /$LISTNAME/$MESSAGE_ID/raw
Guidelines for using limited HTML
---------------------------------
+
We mainly use HTML for linking pages together with <a>.
We also set <title> to make window management easier.
public-inbox (server-side) installation
---------------------------------------
+
This is for folks who want to setup their own public-inbox instance.
Clients should see http://ssoma.public-inbox.org/INSTALL.html instead
if they want to import mail into their personal inboxes.
Requirements (server MDA)
-------------------------
+
* git
* ssoma - http://ssoma.public-inbox.org/INSTALL.html
* SpamAssassin (spamc/spamd)
Copyright
---------
+
Copyright 2013-2015 all contributors <meta@public-inbox.org>
License: AGPLv3 or later <http://www.gnu.org/licenses/agpl-3.0.txt>
public-inbox - an "archives first" approach to mailing lists
------------------------------------------------------------
+
public-inbox implements the sharing of an email inbox via git to
complement or replace traditional mailing lists. Readers may
read via NNTP, Atom feeds or HTML archives.
public-inbox spawned around three main ideas:
* Publically accessible and archived communication is essential to
- Free and Open Source development.
-* Contributing to Free and Open Source projects should not require the
- use of non-Free/non-Open Source services or software.
+ Free Software development.
+
+* Contributing to Free Software projects should not require the
+ use of non-Free services or software.
+
* Graphical user interfaces should not be required for text-based
communication.
Implementation
--------------
+
public-inbox uses ssoma[1], Some Sort Of Mail Archiver which implements
no policy of its own. By storing (and optionally) exposing an inbox
via git, it is fast and efficient to host and mirror public-inboxes.
Features
--------
+
* anybody may participate via plain-text email
+
* stores email in git, readers may have a complete archive of the inbox
+
* Atom feed and NNTP allows casual readers to follow via feed reader
+
* uses only well-documented and easy-to-implement data formats
Try it out now, see http://try.public-inbox.org/
Requirements (server)
---------------------
+
See http://public-inbox.org/INSTALL
Hacking
-------
+
Source code is available via git:
git clone git://80x24.org/public-inbox
Contact
-------
+
We are happy to see feedback of all types via plain-text email.
public-inbox discussion is self-hosting on public-inbox.org
Please send comments, user/developer discussion, patches, bug reports,
Anti-Spam
---------
+
The maintainer of public-inbox has found SpamAssassin a good tool for
filtering his personal mail, and it will be the default spam filtering
tool in public-inbox.
Content Filtering
-----------------
+
To discourage phishing, web bugs (tracking), viruses and other nuisances,
only plain-text content is allowed and non-text content is stripped.
This saves I/O bandwidth and storage, which is important as
Copyright
---------
+
Copyright 2013-2015 all contributors <meta@public-inbox.org>
License: AGPLv3 or later <http://www.gnu.org/licenses/agpl-3.0.txt>