=head1 NAME public-inbox-overview - an overview of public-inbox =head1 DESCRIPTION public-inbox consists of many pieces which may be used independently or in conjunction of each other for: =over 4 =item 1 Mirroring existing public-inboxes. =item 2 Mirroring mailing lists. =item 3 Hosting standalone inboxes. =back =head2 Mirroring existing public-inboxes Mirroring existing public-inboxes is the easiest way to get started. Your mirror will remain dependent on the REMOTE_URL you are mirroring and you only need to use two new commands in addition to common L commands. Instructions are different depending on whether the inbox is L or L. See the "Archives are clonable:" part of the WWW interface of a given inbox for cloning instructions specific to that inbox. The instructions are roughly: # for v1 inboxes: git clone --mirror URL INBOX_DIR # for v2 inboxes (each epoch needs to be cloned): git clone --mirror URL/EPOCH INBOX_DIR/git/EPOCH.git # The following should create the necessary entry in # ~/.public-inbox/config, use "-V2" only for v2 inboxes: public-inbox-init [-V2] NAME INBOX_DIR MY_URL LIST_ADDRESS # Optional but strongly recommended for hosting HTTP # (and required for NNTP) # enable overview (requires DBD::SQLite) and, if Xapian is # available, search: public-inbox-index INBOX_DIR # Periodically fetch the repo using git-fetch(1) # for v1 inboxes: git --git-dir=INBOX_DIR fetch # for v2 (in most cases, only the newest epoch needs to be fetched): git --git-dir=INBOX_DIR/git/EPOCH.git fetch # index new messages after fetching: public-inbox-index INBOX_DIR See L below for info on how to expose your mirror to other readers. =head2 Mirroring mailing lists Mirroring mailing lists may be done by any reader of a mailing list using L. # This will create a new v2 inbox: public-inbox-init -V2 NAME INBOX_DIR MY_URL LIST_ADDRESS Then, see the L manual for configuring C, C, C and the optional C and C entries. You will need to leave L running to keep the mailbox up-to-date as messages are delivered to the mailing list. Running L to create search indices is recommended. L will automatically maintain the indices if they were created by L public-inbox-index INBOX_DIR Instead of using L, using L with the C<--no-precheck> option and relying on the C directive in L is also an option. =head2 Hosting standalone inboxes Using L to initialize the inbox as in the other methods is recommended. See L for more details; but this also requires MTA-specific knowledge. =head2 Serving public-inboxes Since public-inboxes are git repositories, they may be served to remote clients via L as well as specialized HTTP and NNTP daemons distributed with public-inbox. See L and L for more information on using these daemons. Hosting a public-inbox over HTTP or NNTP will never require write access to any files in the inbox directory. Users familiar with PSGI and L may also use L with the preferred server instead of L =head1 CONTACT Feedback welcome via plain-text mail to L The mail archives are hosted at L and L =head1 COPYRIGHT Copyright 2016-2021 all contributors L License: AGPL-3.0+ L