1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
#!/usr/bin/perl -w
use strict;
use warnings;
use CPAN::Mini::App;
CPAN::Mini::App->run;
__END__
=head1 NAME
minicpan - uses CPAN::Mini to create or update a local mirror
=head1 SYNOPSIS
minicpan [options]
Options
-l LOCAL - where is the local minicpan? (required)
-r REMOTE - where is the remote cpan mirror? (required)
-d 0### - permissions (numeric) to use when creating directories
-f - check all directories, even if indices are unchanged
-p - mirror perl, ponie, and parrot distributions
-q - run in quiet mode (don't print status)
-qq - run in silent mode (don't even print warnings)
-c CLASS - what class to use to mirror (default: CPAN::Mini)
-C FILE - what config file to use (default: ~/.minicpanrc)
-h - print help and exit
-v - print version and exit
-x - build an exact mirror, getting even normally disallowed files
--offline - operate in offline mode (generally: do nothing)
=head1 DESCRIPTION
This simple shell script just updates (or creates) a miniature CPAN mirror as
described in CPAN::Mini.
=head1 CONFIGURATION FILE
By default, C<minicpan> will read a configuration file to get configuration
information. The file is a simple set of names and values, as in the following
example:
local: /home/rjbs/mirrors/minicpan/
remote: http://your.favorite.cpan/cpan/
exact_mirror: 1
C<minicpan> tries to find a configuration file through the following process.
It takes the first defined it finds:
=over 4
=item * Use the value specified by C<-C> on the command line
=item * Use the value in the C<CPAN_MINI_CONFIG> environment variable
=item * Use F<~/.minicpanrc>
=item * Use F<CPAN/Mini/minicpan.conf>
=back
If the selected file does not exist, C<minicpan> does not keep looking.
You can override this process with a C<config_file> method in your subclass.
See C<CPAN::Mini> for a full listing of available options.
=head1 TO DO
Improve command-line options.
=head1 SEE ALSO
Randal Schwartz's original article, which can be found here:
http://www.stonehenge.com/merlyn/LinuxMag/col42.html
=head1 AUTHORS
Randal Schwartz <F<merlyn@stonehenge.com>> had the bright idea and wrote the
original implementation.
Ricardo SIGNES <F<rjbs@cpan.org>> brazenly took the script, made a module and
distribution, and slowly allowed it to gain features.
This code was copyrighted in 2004, and is released under the same terms as Perl
itself.
=cut
|