]> Sergey Matveev's repositories - public-inbox.git/blobdiff - INSTALL
public-inbox 1.6.1 - minor bugfix release
[public-inbox.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 0b4c3957eb139c16ca1b18c8efa9a9a9bba5e370..9f05c3f622509ec4fc8832ea13d77a575d6fb1af 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -7,7 +7,8 @@ if they want to import mail into their personal inboxes.
 
 public-inbox is developed on Debian GNU/Linux systems and will
 never depend on packages outside of the "main" component of
-the "stable" distribution, currently Debian 9.x ("stretch")
+the "stable" distribution, currently Debian 10.x ("buster"),
+but older versions of Debian remain supported.
 
 Most packages are available in other GNU/Linux distributions
 and FreeBSD.
@@ -21,9 +22,9 @@ Requirements
 public-inbox requires a number of other packages to access its full
 functionality.  The core tools are, of course:
 
-* Git (1.8.0+, 2.6+ for writing v2 repositories)
+* Git (1.8.0+, 2.6+ for writing v2 inboxes)
 * Perl 5.10.1+
-* DBD::SQLite (needed for NNTP, message threading, and v2 repositories)
+* DBD::SQLite (needed for NNTP, message threading, and v2 inboxes)
 
 To accept incoming mail into a public inbox, you'll likely want:
 
@@ -35,17 +36,20 @@ Beyond that, there is a long list of Perl modules required, starting with:
 * Digest::SHA                      typically installed with Perl
                                    rpm: perl-Digest-SHA
 
-* Email::MIME                      deb: libemail-mime-perl
-                                   pkg: p5-Email-MIME
-                                   rpm: perl-Email-MIME
-
 * URI::Escape                      deb: liburi-perl
                                    pkg: p5-URI
                                    rpm: perl-URI
                                    (for HTML/Atom generation)
 
-Plack and Date::Parse will be optional when v1.3.0 is released,
-but required for current and older releases:
+Email::MIME will be optional as of public-inbox v1.5.0,
+it may still be used in maintainer comparison tests:
+
+* Email::MIME                      deb: libemail-mime-perl
+                                   pkg: p5-Email-MIME
+                                   rpm: perl-Email-MIME
+
+Plack and Date::Parse are optional as of public-inbox v1.3.0,
+but required for older releases:
 
 * Plack                            deb: libplack-perl
                                    pkg: p5-Plack
@@ -80,22 +84,22 @@ Numerous optional modules are likely to be useful as well:
                                     not needed as systemd services or
                                     foreground servers)
 
-- Inline::C[7]                     deb: libinline-c-perl
+- Inline::C                        deb: libinline-c-perl
                                    pkg: pkg-Inline-C
                                    (speeds up process spawning on Linux,
                                     see public-inbox-daemon(8))
 
+- Email::Address::XS               deb: libemail-address-xs-perl
+                                   pkg: pkg-Email-Address-XS
+                                   (correct parsing of tricky email
+                                    addresses, phrases and comments)
+
 - Plack::Middleware::ReverseProxy  deb: libplack-middleware-reverseproxy-perl
                                    pkg: p5-Plack-Middleware-ReverseProxy
                                    rpm: perl-Plack-Middleware-ReverseProxy
                                    (ensures redirects are correct when running
                                     behind nginx or Varnish)
 
-- Plack::Middleware::Deflater      deb: libplack-middleware-deflater-perl
-                                   pkg: p5 -Plack-Middleware-Deflater
-                                   rpm: perl-Plack-Middleware-Deflater
-                                   (saves bandwidth on responses)
-
 * highlight                        deb: libhighlight-perl
                                    (for syntax highlighting with coderepo)
 
@@ -107,16 +111,6 @@ Numerous optional modules are likely to be useful as well:
 The following modules are typically pulled in by dependencies listed
 above, so there is no need to explicitly install them:
 
-- Email::MIME::ContentType         deb: libemail-mime-contenttype-perl
-                                   pkg: p5-Email-MIME-ContentType
-                                   rpm: perl-Email-MIME-ContentType
-                                   (pulled in by Email::MIME)
-
-- Email::Simple                    deb: libemail-simple-perl
-                                   pkg: p5-Email-Simple
-                                   rpm: perl-Email-Simple
-                                   (pulled in by Email::MIME)
-
 * Encode                           deb: libperl5.$MINOR (or libencode-perl)
                                    pkg: perl5
                                    rpm: perl-Encode
@@ -133,22 +127,14 @@ above, so there is no need to explicitly install them:
                                    (optional for stale FD cleanup in daemons,
                                     typically installed alongside Perl5)
 
-- Filesys::Notify::Simple          deb: libfilesys-notify-simple-perl
-                                   pkg: p5-Filesys-Notify-Simple
-                                   rpm: perl-Filesys-Notify-Simple
-                                   (for public-inbox-watch, pulled in by Plack)
-
 - Linux::Inotify2                  deb: liblinux-inotify2-perl
                                    rpm: perl-Linux-Inotify2
                                    (for public-inbox-watch on Linux)
 
-- Filesys::Notify::KQueue          pkg: p5-Filesys-Notify-KQueue
-                                   (for public-inbox-watch on FreeBSD)
-
-- IO::Compress::Gzip               deb: perl-modules (or libio-compress-perl)
+- IO::Compress (::Gzip)            deb: perl-modules (or libio-compress-perl)
                                    pkg: perl5
                                    rpm: perl-IO-Compress
-                                   (for gzipped mbox over HTTP)
+                                   (for gzipped mbox over HTTP, v2 format)
 
 Uncommonly needed modules:
 
@@ -174,9 +160,9 @@ Optional packages testing and development:
                                    pkg: perl5
                                    rpm: perl-Test-Simple
 
-- XML::Feed                        deb: libxml-feed-perl
-                                   pkg: p5-XML-Feed
-                                   rpm: perl-XML-Feed
+- XML::TreePP                      deb: libxml-treepp-perl
+                                   pkg: p5-XML-TreePP
+                                   rpm: perl-XML-TreePP
 
 standard MakeMaker installation (Perl)
 --------------------------------------
@@ -190,7 +176,7 @@ install the system (into /usr/local) with:
 
         perl Makefile.PL
         make
-        make test
+        make test    # see HACKING for faster tests for hackers
         make install # root permissions may be needed
 
 When installing Search::Xapian, make sure the underlying Xapian