mcpani(1) A command line tool to manage a CPAN Mini Mirror.


mcpani [options] < --add | --update | --mirror | --inject >


--add Add a new package to the repository
--module Name of the module to add
--authorid Author ID of the module
--modversion Version number of the module
--file tar.gz file of the module
--update Update local CPAN mirror and inject modules
--mirror Update local CPAN mirror from remote
--inject Add modules from repository to CPAN mirror


    -h, --help          This synopsis
    -H, --man           Detailed description
    -l, --local         local location for CPAN::Mini Mirror
    -r, --remote        CPAN mirror to mirror from
    -p, --passive       Enable passive ftp for mirroring.
    -v, --verbose       verbose output
    -V, --version       Version information.
        --signing-key   See CPAN::Checksums $SIGNING_KEY



Add a module to the repository for later inclusion in the CPAN Mini mirror. The add command requires the following parameters:
This is the name of the module (ie CPAN::Mini::Inject).
A CPAN 'like' author ID for the module. The author ID does not need to exist on CPAN.
Version number of the module. This must match the version number in the file name.
``add'' in CPAN::Mini::Inject adds all modules found in the file. These options remain for backward compatibility and do nothing.
File name and path of the module. The file name must follow the standard CPAN naming convention (the resulting file from a "make tardist").

  mcpani --add --module CPAN::Mini::Inject --authorid SSORICHE
         --modversion 0.01 --file ./CPAN-Mini-Inject-0.01.tar.gz


Update your local CPAN Mini mirror from a CPAN site. Once completed add the modules contained in the repository to it. This is the same as running "mcpani --mirror" followed by "mcpani --inject"


Update the local CPAN Mini mirror from CPAN.


Add the repository modules into the CPAN Mini mirror.

-l, --local

A local directory to store the CPAN Mini mirror in. Specifying this option overrides the value in the config file.

-r, --remote

A CPAN site to create the local CPAN Mini mirror from.

-v, --verbose

Display verbose processing information

-V, --version

Display version information.


mcpani uses a simple configuration file in the following format:

 local: /www/CPAN
 repository: /work/mymodules
 passive: yes
 dirmode: 0755

Description of options:

  • local

    location to store local CPAN::Mini mirror (*REQUIRED*)

  • remote

    CPAN site(s) to mirror from. Multiple sites can be listed, with spaces between them. (*REQUIRED*)

  • repository

    Location to store modules to add to the local CPAN::Mini mirror.

  • passive

    Enable passive FTP.

  • dirmode

    Set the permissions of created directories to the specified mode (octal value). The default value is based on the umask (if supported).

mcpani will search the following four places in order:

  • file pointed to by the environment variable MCPANI_CONFIG
  • $HOME/.mcpani/config
  • /usr/local/etc/mcpani
  • /etc/mcpani


Christian Walde "<[email protected]>"


Shawn Sorichetti "<[email protected]>"


Please report any bugs or feature requests to "[email protected]", or through the web interface at <>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

Copyright & License

Copyright 2004 Shawn Sorichetti, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.