* [PATCH] doc: update dependencies for CentOS 7.x
@ 2019-06-13 2:26 7% Eric Wong
0 siblings, 0 replies; 1+ results
From: Eric Wong @ 2019-06-13 2:26 UTC (permalink / raw)
To: meta
Digest::SHA is the most notable missing package at runtime
for a minimal system.
Tests don't run at all without Test::Simple (or Test::More).
Plack::Test is also a separate package, too...
Also, the package for IO::Compress::Gzip should be IO::Compress;
as perl-PerlIO-gzip is a different thing entirely which is not
relevant to our needs.
Test::HTTP::Server::Simple doesn't seem required at all for Plack
tests.
ExtUtils::MakeMaker needs to be documented as a install dependency
for people installing this, too; since AFAIK public-inbox is not
yet in any distros.
---
INSTALL | 22 ++++++++++++++++------
Makefile.PL | 13 +++++++++++++
ci/deps.perl | 32 +++++++++++++++++++++++++++-----
3 files changed, 56 insertions(+), 11 deletions(-)
diff --git a/INSTALL b/INSTALL
index 0246299b..a661c776 100644
--- a/INSTALL
+++ b/INSTALL
@@ -36,6 +36,9 @@ Beyond that, there is a long list of Perl modules required, starting with:
pkg: p5-TimeDate
rpm: perl-TimeDate
+* Digest::SHA typically installed with Perl
+ rpm: perl-Digest-SHA
+
* Email::MIME deb: libemail-mime-perl
pkg: p5-Email-MIME
rpm: perl-Email-MIME
@@ -132,8 +135,8 @@ above, so there is no need to explicitly install them:
(for public-inbox-watch, pulled in by Plack)
- IO::Compress::Gzip deb: perl-modules (or libio-compress-perl)
- rpm: perl-PerlIO-gzip
pkg: perl5
+ rpm: perl-IO-Compress
(for gzipped mbox over HTTP)
Uncommonly needed modules:
@@ -156,18 +159,25 @@ Optional packages testing and development:
pkg: p5-IPC-Run
rpm: perl-IPC-Run
+- Plack::Test deb: libplack-test-perl
+ pkg: p5-Plack
+ rpm: perl-Plack-Test
+
+- Test::Simple deb: perl-modules-5.$MINOR
+ pkg: perl5
+ rpm: perl-Test-Simple
+
- XML::Feed deb: libxml-feed-perl
pkg: p5-XML-Feed
rpm: perl-XML-Feed
-- Test::HTTP::Server::Simple deb: libtest-http-server-simple-perl
- pkg: p5-Test-HTTP-Server-Simple
- rpm: perl-Test-HTTP-Server-Simple
- (XXX is this really needed?)
-
standard MakeMaker installation (Perl)
--------------------------------------
+To use MakeMaker, you need to ensure ExtUtils::MakeMaker is available.
+This is typically installed with Perl, but RPM-based systems will likely
+need to install the `perl-ExtUtils-MakeMaker' package.
+
Once the dependencies are installed, you should be able to build and
install the system (into /usr/local) with:
diff --git a/Makefile.PL b/Makefile.PL
index b1274ad1..341d42af 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -28,6 +28,11 @@ WriteMakefile(
# We also depend on git.
# Keep this sorted and synced to the INSTALL document
'Date::Parse' => 0,
+
+ # libperl$PERL_VERSION,
+ # `perl5' on FreeBSD
+ # perl-Digest-SHA on RH-based
+ 'Digest::SHA' => 0,
'Email::MIME' => 0,
# the following should be pulled in by Email::MIME:
@@ -44,6 +49,14 @@ WriteMakefile(
# We have more test dependencies, but do not force
# users to install them. See INSTALL
+
+ # All Perl installs I know about have these, but RH-based
+ # distros make them separate even though 'perl' pulls them in
+ 'File::Path' => 0,
+ 'File::Temp' => 0,
+ 'Getopt::Long' => 0,
+ 'Exporter' => 0,
+ # ExtUtils::MakeMaker # this file won't run w/o it...
},
MAN3PODS => \%man3,
);
diff --git a/ci/deps.perl b/ci/deps.perl
index faca4590..62870c1f 100755
--- a/ci/deps.perl
+++ b/ci/deps.perl
@@ -9,9 +9,11 @@ my $usage = "$0 PKG_FMT PROFILE [PROFILE_MOD]";
my $pkg_fmt = shift;
@ARGV or die $usage, "\n";
+my @test_essential = qw(Test::Simple Plack::Test);
+
# package profiles
my $profiles = {
- # the smallest possible profile
+ # the smallest possible profile for testing
# TODO: trim this, Plack pulls in Filesys::Notify::Simple,
# and we don't need that for mda-only installs
essential => [ qw(
@@ -19,14 +21,16 @@ my $profiles = {
perl
Date::Parse
Devel::Peek
+ Digest::SHA
Email::Simple
Email::MIME
Email::MIME::ContentType
Encode
+ ExtUtils::MakeMaker
Filesys::Notify::Simple
Plack
URI::Escape
- ) ],
+ ), @test_essential ],
# everything optional for normal use
optional => [ qw(
@@ -44,10 +48,9 @@ my $profiles = {
xapian-compact
) ],
- # developer stuff
+ # optional developer stuff
devtest => [ qw(
IPC::Run
- Test::HTTP::Server::Simple
XML::Feed
curl
w3m
@@ -86,22 +89,41 @@ my $non_auto = {
deb => 'perl', # libperl5.XX, but the XX varies
pkg => 'perl5',
},
+ 'Digest::SHA' => {
+ deb => 'perl', # libperl5.XX, but the XX varies
+ pkg => 'perl5',
+ },
'Encode' => {
deb => 'perl', # libperl5.XX, but the XX varies
pkg => 'perl5',
rpm => 'perl-Encode',
},
+ 'ExtUtils::MakeMaker' => {
+ deb => 'perl', # perl-modules-5.xx
+ pkg => 'perl5',
+ rpm => 'perl-ExtUtils-MakeMaker',
+ },
'IO::Compress::Gzip' => {
deb => 'perl', # perl-modules-5.xx
pkg => 'perl5',
- rpm => 'perl-PerlIO-gzip',
+ rpm => 'perl-IO-Compress',
},
'DBD::SQLite' => { deb => 'libdbd-sqlite3-perl' },
+ 'Plack::Test' => {
+ deb => 'libplack-perl',
+ pkg => 'p5-Plack',
+ rpm => 'perl-Plack-Test',
+ },
'URI::Escape' => {
deb => 'liburi-perl',
pkg => 'p5-URI',
rpm => 'perl-URI',
},
+ 'Test::Simple' => {
+ deb => 'perl', # perl-modules-5.XX, but the XX varies
+ pkg => 'perl5',
+ rpm => 'perl-Test-Simple',
+ },
'highlight.pm' => {
deb => 'libhighlight-perl',
pkg => [],
--
EW
^ permalink raw reply related [relevance 7%]
Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2019-06-13 2:26 7% [PATCH] doc: update dependencies for CentOS 7.x Eric Wong
Code repositories for project(s) associated with this public inbox
https://80x24.org/public-inbox.git
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).