MCPANI(1p)

πŸ“¦
version 1.012 Β· 4 versions
, in debian trixie, ubuntu resolute, ubuntu stonking

πŸ’– MCPANI πŸ’–

okay bestie, so this is the manual page for mcpani β€” a command line tool that manages a CPAN Mini Mirror. she's giving very much "run my mirror, keep my modules, don't talk to me before coffee" energy and honestly? we're obsessed. πŸŽ€


✨ SYNOPSIS ✨

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

🌸 Commands:

  • --add β€” drop a brand new package into the repository. but bestie, she needs her little friends:
    • --module β€” the name of the module you're adding
    • --authorid β€” the author ID of the module
    • --modversion β€” the version number of the module
    • --file β€” distribution module
  • --update β€” refresh the local CPAN mirror and inject modules. the glow-up is twofold, periodt ✨
  • --mirror β€” pull a fresh local CPAN mirror down from the remote
  • --inject β€” take modules from your repository and put them into the CPAN mirror

πŸ’… Options:

  • -h, --help β€” this synopsis
  • -H, --man β€” the detailed description
  • -l, --local β€” local location for CPAN::Mini Mirror
  • -r, --remote β€” the 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

πŸ¦‹ DESCRIPTION πŸ¦‹

mcpani uses CPAN::Mini to build or update a local CPAN mirror from a remote one, and while she's at it she also adds private or third-party distributions. she contains multitudes, your honor. πŸ˜­πŸ’œ

πŸŽ€ Configuration file

mcpani will search these four places, in order, no skips:

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

By default, mcpani uses a simple configuration file that looks exactly like this:

 local: /www/CPAN
 remote: ftp://ftp.cpan.org/pub/CPAN ftp://ftp.kernel.org/pub/CPAN
 repository: /work/mymodules
 passive: yes
 dirmode: 0755

πŸ’– Configuration options

  • "dirmode" β€” sets the permissions of created directories to the specified mode (an octal value, bestie, keep it octal). the default value is based on the umask (if that's supported).
  • "force" β€” update modules even if the module list is out of date. this one comes from CPAN::Mini.
  • "local" (required) β€” where you store the local CPAN::Mini mirror. required, no cap.
  • "log_level" β€” the logging level for CPAN::Mini.
  • "passive" β€” enable passive FTP.
  • "remote" (required) β€” the CPAN site(s) to mirror from. you can list multiple sites, with spaces between them. also required!
  • "repository" β€” where you store the modules that are going to be added to the local CPAN::Mini mirror.
  • "skip_cleanup" β€” do not remove old files in the local directory. this is from CPAN::Mini.
  • "skip_perl" β€” do not mirror perl distributions. this is from CPAN::Mini.
  • "trace" β€” enable trace logging. this is from CPAN::Mini

🌈 Command-line options

  • --add
    • --authorid β€” the CPAN ID
    • --file β€” the distribution file
    • --module β€” the package name of the main module
    • -v, --verbose
    • --version β€” the version of the distribution
  • -h, -H, --help, --man, -? β€” output a help message and exit.
  • --inject β€” inject the local distributions into the local repository.
    • -v, --verbose
  • --mirror β€” update the local MiniCPAN by downloading the latest modules from the public CPAN (or the CPAN-like repo specified in the "remote" config. "--mirror" uses
    • -l, --local
    • -r, --remote
    • -v, --verbose
  • --update β€” this runs "--mirror" then "--inject".
  • -V, --version β€” output the version of mcpani and exit.
ngl, that "--mirror" uses line really just... trails off in the original. she said what she said and then stopped. we're respecting the icon's silence. πŸ’€

πŸ‘‘ AUTHOR πŸ‘‘

Shawn Sorichetti <ssoriche@coloredblocks.net>


⭐ SOURCE AVAILABILITY ⭐

the main repository is on GitHub:

https://github.com/briandfoy/cpan-mini-inject

there are also backup repositories on several other services:

https://bitbucket.org/briandfoy/cpan-mini-inject
https://codeberg.org/briandfoy/cpan-mini-inject
https://gitlab.com/briandfoy/cpan-mini-inject

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.


and that's the whole vibe check, bestie 🫢 this one's from perl v5.40.1, dated 2025-04-12. go forth and mirror slayfully. βœ¨πŸ’…

πŸ“¦ where this page comes from