X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=blobdiff_plain;f=INSTALL;h=11d844cf1c9e8c3b4de293d5de158f19fa9b16bc;hp=1c7370ecf4505f41e40f52474ab28ef06ae61d4d;hb=4790a0dbd7b297e087713c6ff2e63bf7deee4d04;hpb=bf798ee2f9fd31c58adf06e99ce56a7b9b9c5c74 diff --git a/INSTALL b/INSTALL index 1c7370ec..11d844cf 100644 --- a/INSTALL +++ b/INSTALL @@ -1,6 +1,16 @@ -Note: this still needs to be documented better, +public-inbox (server-side) installation +--------------------------------------- + +This is for folks who want to setup their own public-inbox instance. +Clients should see https://ssoma.public-inbox.org/INSTALL.html instead +if they want to import mail into their personal inboxes. + +TODO: this still needs to be documented better, also see the scripts/ and sa_config/ directories in the source tree +It should also be possible to use public-inbox with only IMAP +(or even POP(!)) access to a mailbox. + standard MakeMaker installation (Perl) -------------------------------------- @@ -9,33 +19,66 @@ standard MakeMaker installation (Perl) make test make install # root permissions may be needed -Requirements (server MDA) -------------------------- +Requirements +------------ + * git -* ssoma - http://ssoma.public-inbox.org/README -* SpamAssassin (spamc/spamd) -* MTA - postfix is recommended * Perl and several modules: (Debian package name) - - CGI perl-modules[1] - Date::Parse libtimedate-perl - - Email::Address libemail-address-perl - - Email::Filter libemail-filter-perl - Email::MIME libemail-mime-perl - Email::MIME::ContentType libemail-mime-contenttype-perl - Encode::MIME::Header perl - - File::Path::Expand libfile-path-expand-perl - - IPC::Open2 perl - - IPC::Run libipc-run-perl - - Mail::Thread (2.5+) libmail-thread-perl - - URI::Escape liburi-perl - - XML::Atom::SimpleFeed libxml-atom-simplefeed-perl - -[1] - Only required for serving/generating Atom and HTML pages. - Keep in mind this will be split into a separate Debian package - when CGI.pm is dropped from the Perl standard library. - Plack/PSGI, FastCGI, and mod_perl2 will all be supported. + +Optional components: + +* MTA - postfix is recommended (for public-inbox-mda) +* SpamAssassin (spamc/spamd) (for public-inbox-watch/public-inbox-mda) + +Optional Perl modules: + + - Plack[1] libplack-perl + - URI::Escape[1] liburi-perl + - Search::Xapian[2][3] libsearch-xapian-perl + - IO::Compress::Gzip[3] perl-modules (or libio-compress-perl) + - DBI[3] libdbi-perl + - DBD::SQLite[2][3] libdbd-sqlite3-perl + - Danga::Socket[4] libdanga-socket-perl + - Net::Server[5] libnet-server-perl + - Filesys::Notify::Simple[6] libfilesys-notify-simple-perl + - Inline::C[7] libinline-c-perl + - Plack::Middleware::ReverseProxy[8] libplack-middleware-reverseproxy-perl + - Plack::Middleware::Deflater[8] libplack-middleware-deflater-perl + +[1] - Optional, needed for serving/generating Atom and HTML pages +[2] - Optional, only required for NNTP server +[3] - Optional, needed for gzipped mbox support over HTTP +[4] - Optional, needed for bundled HTTP and NNTP servers +[5] - Optional, needed for standalone daemonization of HTTP+NNTP servers +[6] - Optional, needed for public-inbox-watch Maildir watcher +[7] - Optional, allows speeds up spawning on Linux (see public-inbox-daemon(8)) +[8] - Optional, recommended for PSGI interface + +When installing Search::Xapian, make sure the underlying Xapian +installation is not affected by an index corruption bug: + + https://bugs.debian.org/808610 + +For Debian 8.x (jessie), this means using Debian 8.5 or later. + +public-inbox will never store unregeneratable data in Xapian +or any other search database we might use; Xapian corruption +will not destroy critical data. + +Optional Perl modules (for developers): + + - XML::Feed[9] libxml-feed-perl + - IPC::Run[10] libipc-run-perl + +[9] - Optional, for testing Atom feeds +[10] - Optional, for some tests (we hope to drop this dependency someday) Copyright --------- -Copyright 2013, Eric Wong and all contributors. -License: AGPLv3 or later + +Copyright 2013-2018 all contributors +License: AGPL-3.0+