* [PATCH] Update the installation instructions with Fedora package names
@ 2018-02-27 23:36 Jonathan Corbet
2018-02-28 3:55 ` Eric Wong
0 siblings, 1 reply; 3+ messages in thread
From: Jonathan Corbet @ 2018-02-27 23:36 UTC (permalink / raw)
To: Eric Wong; +Cc: meta
Add a few more details and (especially) the Fedora package names. I also
took the liberty of reorganizing things slightly while I was there.
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
INSTALL | 58 ++++++++++++++++++++++++++++++++++++++++------------------
1 file changed, 40 insertions(+), 18 deletions(-)
diff --git a/INSTALL b/INSTALL
index 3758e8d..68fbd66 100644
--- a/INSTALL
+++ b/INSTALL
@@ -8,32 +8,32 @@ 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)
---------------------------------------
-
- perl Makefile.PL
- make
- make test
- make install # root permissions may be needed
-
Requirements
------------
-* git
-* Perl and several modules: (Debian package name)
- - Date::Parse libtimedate-perl
- - Email::MIME libemail-mime-perl
- - Email::MIME::ContentType libemail-mime-contenttype-perl
- - Encode::MIME::Header perl
+public-inbox requires a number of other packages to access its full
+functionality. The core tools are, of course:
+
+* Git
+* Perl
+* Sqlite
-Optional components:
+To accept incoming mail into a public inbox, you'll likely want:
* MTA - postfix is recommended (for public-inbox-mda)
* SpamAssassin (spamc/spamd) (for public-inbox-watch/public-inbox-mda)
+Beyond that, there is a long list of Perl modules required, starting with:
+
+* Date::Parse
+* Email::MIME
+* Email::MIME::ContentType
+* Encode::MIME::Header
+
+On Debian systems, these modules can be had with the libtimedate-perl,
+libemail-mime-perl, and libemail-mime-contenttype-perl packages. On Fedora
+and similar, install perl-Time-ParseDate and perl-Email-MIME.
+
Optional Perl modules:
- Plack[1] libplack-perl
@@ -46,6 +46,13 @@ Optional Perl modules:
- Net::Server[5] libnet-server-perl
- Filesys::Notify::Simple[6] libfilesys-notify-simple-perl
+On Fedora systems the modules you'll want are perl-Plack, perl-Plack-Test,
+perl-Plack-Middleware-ReverseProxy, perl-Plack-Middleware-Deflater,
+perl-URI, perl-Search-Xapian, perl-PerlIO-gzip, perl-DBI, perl-DBD-SQLite,
+perl-Danga-Socket, perl-Net-Server. You'll probably also end up wanting
+perl-Test-HTTP-Server-Simple, perl-Devel-Peek, perl-IPC-Run, and
+perl-Filesys-Notify-Simple.
+
[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
@@ -53,6 +60,18 @@ Optional Perl modules:
[5] - Optional, needed for standalone daemonization of HTTP+NNTP servers
[6] - Optional, needed for public-inbox-watch Maildir watcher
+standard MakeMaker installation (Perl)
+--------------------------------------
+
+Once the dependencies are installed, you should be able to build and
+install the system (into /usr/local) with:
+
+ perl Makefile.PL
+ make
+ make test
+ make install # root permissions may be needed
+
+
When installing Search::Xapian, make sure the underlying Xapian
installation is not affected by an index corruption bug:
@@ -64,6 +83,9 @@ public-inbox will never store unregeneratable data in Xapian
or any other search database we might use; Xapian corruption
will not destroy critical data.
+See public-inbox-overview for the next steps once the installation is
+complete.
+
Copyright
---------
--
2.14.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] Update the installation instructions with Fedora package names
2018-02-27 23:36 [PATCH] Update the installation instructions with Fedora package names Jonathan Corbet
@ 2018-02-28 3:55 ` Eric Wong
2018-03-11 16:48 ` Jonathan Corbet
0 siblings, 1 reply; 3+ messages in thread
From: Eric Wong @ 2018-02-28 3:55 UTC (permalink / raw)
To: Jonathan Corbet; +Cc: meta
Jonathan Corbet <corbet@lwn.net> wrote:
> Add a few more details and (especially) the Fedora package names. I also
> took the liberty of reorganizing things slightly while I was there.
Thanks!
> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Fwiw, I don't plan on enforcing S-o-b since there's no DCO
(or even a real name policy), here. But I realize it may
be a habit from Linux so I don't object, either.
> --- a/INSTALL
> +++ b/INSTALL
> @@ -8,32 +8,32 @@ 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)
> ---------------------------------------
> -
> - perl Makefile.PL
I'm not completely sure if moving this part makes sense, as
Makefile.PL will warn about modules it can't find, at least.
I think that's typical for ./configure errors in non-Perl
projects, too.
> ------------
>
> -* git
> -* Perl and several modules: (Debian package name)
> - - Date::Parse libtimedate-perl
> - - Email::MIME libemail-mime-perl
> - - Email::MIME::ContentType libemail-mime-contenttype-perl
> - - Encode::MIME::Header perl
> +public-inbox requires a number of other packages to access its full
> +functionality. The core tools are, of course:
> +
> +* Git
> +* Perl
> +* Sqlite
SQLite is optional (and needs to be properly capitalized).
It's probably OK to make a requirement for Xapian users, though.
> -Optional components:
> +To accept incoming mail into a public inbox, you'll likely want:
Looks good.
> * MTA - postfix is recommended (for public-inbox-mda)
> * SpamAssassin (spamc/spamd) (for public-inbox-watch/public-inbox-mda)
>
> +Beyond that, there is a long list of Perl modules required, starting with:
I'm not sure if four constitutes as "long"
> +* Date::Parse
> +* Email::MIME
> +* Email::MIME::ContentType
> +* Encode::MIME::Header
> +
> +On Debian systems, these modules can be had with the libtimedate-perl,
> +libemail-mime-perl, and libemail-mime-contenttype-perl packages. On Fedora
> +and similar, install perl-Time-ParseDate and perl-Email-MIME.
I find the lack of alignment to map upstream names to distro
package names to be a change for the worse. I realize the
Fedora names won't fit on to the same line, but how about we
introduce multiple lines and key them:
---------8<--------
* Perl and several modules: (distro-provided package name, key below)
- Date::Parse deb: libtimedate-perl
rpm: perl-Time-ParseDate
- Email::MIME deb: libemail-mime-perl
rpm: perl-Email-MIME
...
package name key:
deb: Debian-based distros (Ubuntu and derivatives)
rpm: Fedora-based distros (RedHat and derivatives)
> Optional Perl modules:
>
> - Plack[1] libplack-perl
> @@ -46,6 +46,13 @@ Optional Perl modules:
> - Net::Server[5] libnet-server-perl
> - Filesys::Notify::Simple[6] libfilesys-notify-simple-perl
>
> +On Fedora systems the modules you'll want are perl-Plack, perl-Plack-Test,
> +perl-Plack-Middleware-ReverseProxy, perl-Plack-Middleware-Deflater,
> +perl-URI, perl-Search-Xapian, perl-PerlIO-gzip, perl-DBI, perl-DBD-SQLite,
> +perl-Danga-Socket, perl-Net-Server. You'll probably also end up wanting
> +perl-Test-HTTP-Server-Simple, perl-Devel-Peek, perl-IPC-Run, and
> +perl-Filesys-Notify-Simple.
IPC::Run is only for tests these days. And I didn't realize
Devel::Peek is split out in Fedora.
> [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
The above key system ought to make it easier to map the package
names the features they're used for.
> @@ -64,6 +83,9 @@ public-inbox will never store unregeneratable data in Xapian
> or any other search database we might use; Xapian corruption
> will not destroy critical data.
>
> +See public-inbox-overview for the next steps once the installation is
> +complete.
Good idea to have the pointer to -overview. It might be better
to say "See the public-inbox-overview(7) manpage" ... since
INSTALL itself is an ordinary text file and the reader may not
realize -overview is a manpage.
Thanks again.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Update the installation instructions with Fedora package names
2018-02-28 3:55 ` Eric Wong
@ 2018-03-11 16:48 ` Jonathan Corbet
0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Corbet @ 2018-03-11 16:48 UTC (permalink / raw)
To: Eric Wong; +Cc: meta
OK, I'm (finally) about to send a reworked version based on your comments.
Here's a couple of other thoughts to go with it...
> > --- a/INSTALL
> > +++ b/INSTALL
> > @@ -8,32 +8,32 @@ 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)
> > ---------------------------------------
> > -
> > - perl Makefile.PL
>
> I'm not completely sure if moving this part makes sense, as
> Makefile.PL will warn about modules it can't find, at least.
> I think that's typical for ./configure errors in non-Perl
> projects, too.
I've opted to keep that order. The alternative is to iterate through that
"find the next missing dependency" loop, which really gets annoying after a
while. One generally wants to install dependencies before building, IMO...
> > +Beyond that, there is a long list of Perl modules required, starting with:
>
> I'm not sure if four constitutes as "long"
It does say "starting with" :)
Thanks,
jon
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-03-11 16:48 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-27 23:36 [PATCH] Update the installation instructions with Fedora package names Jonathan Corbet
2018-02-28 3:55 ` Eric Wong
2018-03-11 16:48 ` Jonathan Corbet
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).