#!/usr/bin/perl
+# Synced to rectool.pl revision 804
print "UID:$<\n";
if ( $< ) {
print "Your distribution seems to be Debian.\n";
$debian = 1;
}
+else {
+ print "Your distribution is unknown, doint CPAN installation.\n";
+}
+
+my @packages = (
+# [ 'CPAN' , 'YUM', 'APT' ],
+ [ 'CGI::Carp' , 'no' , 'no' ],
+ [ 'CGI::Minimal' , 'no' , 'no' ],
+ [ 'Config::Simple' , 'yes', 'yes' ],
+ [ 'Data::Dumper' , 'no' , 'no' ],
+ [ 'Date::Simple' , 'yes', 'yes' ],
+ [ 'DateTime' , 'yes', 'yes' ],
+ [ 'DBI' , 'yes', 'yes' ],
+ [ 'MIME::Base64' , 'no' , 'yes' ],
+ [ 'Perl6::Slurp' , 'no' , 'yes' ],
+ [ 'Sort::Naturally', 'yes', 'yes' ],
+ [ 'Time::Piece' , 'yes', 'yes' ],
+ [ 'Time::Seconds' , 'no' , 'no' ],
+ [ 'Time::HiRes' , 'no' , 'yes' ],
+ [ 'Tie::IxHash' , 'yes', 'yes' ],
+# [ 'required' , 'by' , 'cgi' ],
+ [ 'Encode' , 'no' , 'no' ],
+ [ 'Text::Ngram' , 'no' , 'no' ],
+ [ 'Time::Simple' , 'no' , 'no' ],
+ [ 'List::Compare' , 'yes', 'yes' ],
+ [ 'List::Util' , 'no' , 'no' ],
+ [ 'XML::Atom' , 'yes', 'yes' ],
+);
if ( $redhat ) {
- my $YUM = 'perl-DBI perl-Date-Simple perl-DateTime perl-Config-Simple perl-Tie-IxHash perl-SVG perl-XML-Atom perl-List-Compare perl-Time-Piece perl-Sort-Naturally';
- my $CPAN = 'CGI::Carp CGI::Minimal MIME::Base64 Time::HiRes Data::Dumper Time::Simple Encode Text::Ngram Perl6::Slurp List::Util Time::Seconds';
+ foreach ( @packages ) {
+ if ( $_->[1] eq 'yes' ) {
+ my $YUM = $_->[0];
+ $YUM =~ s/\A/perl-/;
+ $YUM =~ s/::/-/;
+ push @YUM, $YUM;
+ }
+ elsif ( $_->[1] eq 'no' ) {
+ push @CPAN, $_->[0];
+ }
+ }
+ my $YUM = join ' ', @YUM;
+ my $CPAN = join ' ', @CPAN;
+
print "Going to install ( YUM )\n";
print "$YUM\n";
system( "yum install $YUM" );
print "$CPAN\n";
system( "cpan $CPAN" );
}
+elsif ( $debian ) {
+ foreach ( @packages ) {
+ if ( $_->[2] eq 'yes' ) {
+ my $APT = $_->[0];
+ $APT = lc $APT;
+ $APT =~ s/\A/lib/;
+ $APT =~ s/\Z/-perl/;
+ $APT =~ s/::/-/;
+ push @APT, $APT;
+ }
+ elsif ( $_->[2] eq 'no' ) {
+ push @CPAN, $_->[0];
+ }
+ }
+ my $APT = join ' ', @APT;
+ my $CPAN = join ' ', @CPAN;
-if ( $debian ) {
- my $APT = 'libdbi-perl libdate-simple-perl libdatetime-perl libmime-base64-perl libconfig-simple-perl libtime-hires-perl libtie-ixhash-perl libsvg-perl libxml-atom-perl liblist-compare-perl libperl6-slurp-perl libtime-piece-perl libsort-naturally-perl';
- my $CPAN = 'CGI::Carp CGI::Minimal Data::Dumper Time::Simple Encode Text::Ngram List::Util Time::Seconds';
print "Going to install ( APT )\n";
print "$APT\n";
system( "aptitude install $APT" );
print "$CPAN\n";
system( "cpan $CPAN" );
}
+else {
+ my $CPAN = join ' ', map { $_->[0] } @packages;
+
+ print "Going to install ( CPAN )\n";
+ print "$CPAN\n";
+ system( "cpan $CPAN" );
+}