diff options
Diffstat (limited to 'bin')
-rw-r--r-- | bin/minicpan | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/bin/minicpan b/bin/minicpan new file mode 100644 index 0000000..66f4e65 --- /dev/null +++ b/bin/minicpan @@ -0,0 +1,185 @@ +#!/usr/bin/perl -w +use strict; +use warnings; +use CPAN::Mini::App; +CPAN::Mini::App->run; + +# PODNAME: minicpan +# ABSTRACT: uses CPAN::Mini to create or update a local mirror + +=pod + +=encoding UTF-8 + +=head1 NAME + +minicpan - uses CPAN::Mini to create or update a local mirror + +=head1 VERSION + +version 1.111016 + +=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 + --debug - run in debug mode (print even banal messages) + -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 + -t SEC - timeout in sec. Defaults to 180 sec + --offline - operate in offline mode (generally: do nothing) + --log-level - provide a log level; instead of --debug, -q, or -qq + --remote-from TYPE - cpan remote from 'cpan' or 'cpanplus' configs + +=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 + +=over 4 + +=item * + +Ricardo SIGNES <rjbs@cpan.org> + +=item * + +Randal Schwartz <merlyn@stonehenge.com> + +=back + +=head1 COPYRIGHT AND LICENSE + +This software is copyright (c) 2004 by Ricardo SIGNES. + +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + +=cut + +__END__ + +#pod =head1 SYNOPSIS +#pod +#pod minicpan [options] +#pod +#pod Options +#pod -l LOCAL - where is the local minicpan? (required) +#pod -r REMOTE - where is the remote cpan mirror? (required) +#pod -d 0### - permissions (numeric) to use when creating directories +#pod -f - check all directories, even if indices are unchanged +#pod -p - mirror perl, ponie, and parrot distributions +#pod --debug - run in debug mode (print even banal messages) +#pod -q - run in quiet mode (don't print status) +#pod -qq - run in silent mode (don't even print warnings) +#pod -c CLASS - what class to use to mirror (default: CPAN::Mini) +#pod -C FILE - what config file to use (default: ~/.minicpanrc) +#pod -h - print help and exit +#pod -v - print version and exit +#pod -x - build an exact mirror, getting even normally disallowed files +#pod -t SEC - timeout in sec. Defaults to 180 sec +#pod --offline - operate in offline mode (generally: do nothing) +#pod --log-level - provide a log level; instead of --debug, -q, or -qq +#pod --remote-from TYPE - cpan remote from 'cpan' or 'cpanplus' configs +#pod +#pod =head1 DESCRIPTION +#pod +#pod This simple shell script just updates (or creates) a miniature CPAN mirror as +#pod described in CPAN::Mini. +#pod +#pod =head1 CONFIGURATION FILE +#pod +#pod By default, C<minicpan> will read a configuration file to get configuration +#pod information. The file is a simple set of names and values, as in the following +#pod example: +#pod +#pod local: /home/rjbs/mirrors/minicpan/ +#pod remote: http://your.favorite.cpan/cpan/ +#pod exact_mirror: 1 +#pod +#pod C<minicpan> tries to find a configuration file through the following process. +#pod It takes the first defined it finds: +#pod +#pod =over 4 +#pod +#pod =item * Use the value specified by C<-C> on the command line +#pod +#pod =item * Use the value in the C<CPAN_MINI_CONFIG> environment variable +#pod +#pod =item * Use F<~/.minicpanrc> +#pod +#pod =item * Use F<CPAN/Mini/minicpan.conf> +#pod +#pod =back +#pod +#pod If the selected file does not exist, C<minicpan> does not keep looking. +#pod +#pod You can override this process with a C<config_file> method in your subclass. +#pod +#pod See C<CPAN::Mini> for a full listing of available options. +#pod +#pod =head1 TO DO +#pod +#pod Improve command-line options. +#pod +#pod =head1 SEE ALSO +#pod +#pod Randal Schwartz's original article, which can be found here: +#pod +#pod http://www.stonehenge.com/merlyn/LinuxMag/col42.html +#pod +#pod =cut |