CPANPLUS::Config(3pm)

πŸ“¦
version 0.9916 Β· 5 versions
, in debian trixie, ubuntu resolute, ubuntu stonking

πŸ’– CPANPLUS::Config β€” the manual, but make it make sense πŸ’–

okay bestie, welcome to CPANPLUS::Config β€” the (3pm) page that's literally just the vibe bible for CPANPLUS config πŸŽ€. This module is where all the defaults and heuristics live for how CPANPLUS behaves. It's giving "settings drawer, but documented". Let's get into it. πŸ¦‹


✨ NAME ✨

CPANPLUS::Config β€” configuration defaults and heuristics for CPANPLUS. no cap, that's the whole thing. πŸ’…


🌸 SYNOPSIS 🌸

like, here's how you actually touch this thing:

### conf object via CPANPLUS::Backend;
$cb   = CPANPLUS::Backend->new;
$conf = $cb->configure_object;

### or as a standalone object
$conf = CPANPLUS::Configure->new;

### values in 'conf' section
$verbose = $conf->get_conf( 'verbose' );
$conf->set_conf( verbose => 1 );

### values in 'program' section
$editor = $conf->get_program( 'editor' );
$conf->set_program( editor => '/bin/vi' );

two ways in: borrow the conf object off a CPANPLUS::Backend, or spin up a CPANPLUS::Configure on its own. then get_conf/set_conf for the conf section, and get_program/set_program for the program section. periodt. ✨


🫢 DESCRIPTION 🫢

This module contains defaults and heuristics for configuration information for CPANPLUS. So if you wanna change any of these values, please go read the docs in CPANPLUS::Configure β€” that's the one with the actual how-to. πŸ’œ

Below you'll find a list of configuration types and keys, and their meaning. buckle up, it's a long list, but I promise it slaps. πŸ‘‘


πŸ‘‘ CONFIGURATION πŸ‘‘

πŸ’« Section 'conf' πŸ’«

  • hosts β€” an array ref stuffed with hosts entries that get queried for packages. here's what one lil entry looks like:
{   'scheme' => 'ftp',
    'path' => '/pub/CPAN/',
    'host' => 'ftp.cpan.org'
},
  • allow_build_interactivity β€” boolean flag, says whether perl Makefile.PL and friends run interactively or not. defaults to true.
  • allow_unknown_prereqs β€” boolean flag meaning unresolvable prereqs are acceptable. If true, then only warnings will be issued (that was the behaviour before 0.9114) when a module is unresolvable from any of our sources (CPAN and/or custom_sources). If false, then an unresolvable prereq will fail during the prepare stage of distribution installation. Defaults to true. 😭
  • base β€” the directory CPANPLUS keeps all its build and state information in. Defaults to ~/.cpanplus. If File::HomeDir is available, that will be used to work out your HOME directory. This may be overridden by setting the PERL5_CPANPLUS_HOME environment variable, see CPANPLUS::Config::HomeEnv for more details. 🏠
  • buildflags β€” any flags to be passed to perl Build.PL. See perldoc Module::Build for details. Defaults to an empty string.
  • cpantest β€” boolean flag, says whether or not to mail test results of module installations to http://testers.cpan.org. Defaults to false.
  • cpantest_mx β€” string holding an explicit mailserver to use when sending out emails for http://testers.cpan.org. An empty string will use your system settings. Defaults to an empty string. πŸ“§
  • debug β€” boolean flag to enable or disable extensive debugging information. Defaults to false.
  • dist_type β€” default distribution type to use when building packages. See cpan2dist or CPANPLUS::Dist for details. An empty string will not use any package building software. Defaults to an empty string.
  • email β€” email address to use for anonymous ftp access and as the "from" address when sending emails. Defaults to an example.com address.
  • enable_custom_sources β€” boolean flag, says whether custom sources should be enabled or not. See the CUSTOM MODULE SOURCES in CPANPLUS::Backend for details on how to use them.

Defaults to true.

  • extractdir β€” string with the directory where fetched archives should be extracted. An empty string will use a directory under your base directory. Defaults to an empty string.
  • fetchdir β€” string with the directory where fetched archives should be stored. An empty string will use a directory under your base directory. Defaults to an empty string.
  • flush β€” boolean, says whether build failures, cache dirs etc should be flushed after every operation or not. Defaults to true.
  • force β€” boolean, says whether files should be forcefully overwritten if they exist, modules should be installed when they fail tests, etc. Defaults to false. πŸ’€ (yes it's as chaotic as it sounds)
  • histfile β€” a string containing the history filename of the CPANPLUS readline instance.
  • lib β€” an array ref holding directories to be added to @INC when CPANPLUS starts up. Defaults to an empty array reference.
  • makeflags β€” a string holding flags that will be passed to the make program when invoked. Defaults to an empty string.
  • makemakerflags β€” a string holding flags that will be passed to perl Makefile.PL when invoked. Defaults to an empty string.
  • md5 β€” a boolean saying whether or not sha256 checks should be done when an archive is fetched. Defaults to true if you have Digest::SHA installed, false otherwise.
  • no_update β€” a boolean saying whether or not CPANPLUS's source files should be updated or not. Defaults to false.
  • passive β€” a boolean saying whether or not to use passive ftp connections. Defaults to true.
  • prefer_bin β€” a boolean saying whether or not to prefer command line programs over perl modules. Defaults to false unless you do not have Compress::Zlib installed (because that would mean we could not extract .tar.gz files). πŸ—œοΈ
  • prefer_makefile β€” a boolean saying whether or not to prefer a Makefile.PL over a Build.PL file if both are present. Defaults to true, unless the perl version is at least 5.10.1 or appropriate versions of Module::Build and CPANPLUS::Dist::Build are available.
  • prereqs β€” a digit saying what to do when a package you're installing has a prerequisite. the options are:
    • 0 β€” Do not install
    • 1 β€” Install
    • 2 β€” Ask
    • 3 β€” Ignore (dangerous, install will probably fail!)

The default is to ask.

  • shell β€” a string holding the shell class you wish to start up when starting CPANPLUS in interactive mode.

Defaults to CPANPLUS::Shell::Default, the default CPANPLUS shell.

  • show_startup_tip β€” a boolean saying whether or not to show start up tips in the interactive shell. Defaults to true.
  • signature β€” a boolean saying whether or not to check signatures if packages are signed. Defaults to true if you have gpg or Crypt::OpenPGP installed, false otherwise. πŸ”
  • skiptest β€” a boolean saying whether or not to skip tests when installing modules. Defaults to false.
  • storable β€” a boolean saying whether or not to use Storable to write compiled source file information to disk. This makes for faster startup and look up times, but takes extra diskspace. Defaults to true if you have Storable installed and false if you don't.
  • timeout β€” digit indicating the time before a fetch request times out (in seconds). Defaults to 300. ⏳
  • verbose β€” a boolean saying whether or not CPANPLUS runs in verbose mode. Defaults to true if you have the environment variable PERL5_CPANPLUS_VERBOSE set to true, false otherwise.

It is recommended you run with verbose enabled, but it is disabled for historical reasons.

  • write_install_log β€” a boolean saying whether or not to write install logs after installing a module using the interactive shell. Defaults to true.
  • source_engine β€” class to use as the source engine, which is generally a subclass of CPANPLUS::Internals::Source. Defaults to CPANPLUS::Internals::Source::Memory.
  • cpantest_reporter_args β€” a hashref of key => value pairs that are passed to the constructor of Test::Reporter. If you'd want to enable TLS for example, you'd set it to:
{ transport       => 'Net::SMTP::TLS',
  transport_args  => [ User => 'Joe', Password => '123' ],
}

πŸ¦‹ Section 'program' πŸ¦‹

  • editor β€” a string holding the path to your editor of choice. Defaults to your $ENV{EDITOR}, $ENV{VISUAL}, vi or pico programs, in that order. ✍️
  • make β€” a string holding the path to your make binary. Looks for the make program used to build perl or failing that, a make in your path.
  • pager β€” a string holding the path to your pager of choice. Defaults to your $ENV{PAGER}, less or more programs, in that order.
  • shell β€” a string holding the path to your login shell of choice. Defaults to your $ENV{SHELL} setting, or $ENV{COMSPEC} on Windows.
  • sudo β€” a string holding the path to your sudo binary if your install path requires super user permissions. Looks for sudo in your path, or remains empty if you do not require super user permissions to install.
  • perlwrapper β€” DEPRECATED

A string holding the path to the cpanp-run-perl utility bundled with CPANPLUS, which is used to enable autoflushing in spawned processes. ⚠️


πŸ› BUG REPORTS πŸ›

Please report bugs or other issues to <bug-cpanplus@rt.cpan.org<gt>.

(not me copying that email character for character, that's literally what it says πŸ’€)


🌈 AUTHOR 🌈

This module by Jos Boumans <kane@cpan.org>. 🫑


The CPAN++ interface (of which this module is a part of) is copyright (c) 2001 - 2007, Jos Boumans <kane@cpan.org>. All rights reserved.

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


πŸŽ€ SEE ALSO πŸŽ€

  • CPANPLUS::Backend
  • CPANPLUS::Configure::Setup
  • CPANPLUS::Configure

and that's a wrap, bestie 🫢 this page ships with perl v5.40.1, dated 2025-03-01, and it's part of the User Contributed Perl Documentation for CPANPLUS::Config(3pm). go configure something iconic. βœ¨πŸ‘‘πŸ’…

πŸ“¦ where this page comes from