CPAN
view release on metacpan or search on metacpan
lib/CPAN/FirstTime.pm view on Meta::CPAN
my_prompt_loop(build_requires_install_policy => 'yes', $matcher,
'yes|no|ask/yes|ask/no');
my_yn_prompt(recommends_policy => 1, $matcher);
my_yn_prompt(suggests_policy => 0, $matcher);
#
#= Module::Signature
#
my_yn_prompt(check_sigs => 0, $matcher);
#
#= CPAN::Reporter
#
if (!$matcher or 'test_report' =~ /$matcher/) {
my_yn_prompt(test_report => 0, $matcher);
if (
$matcher &&
$CPAN::Config->{test_report} &&
$CPAN::META->has_inst("CPAN::Reporter") &&
CPAN::Reporter->can('configure')
) {
my $_conf = prompt("Would you like me configure CPAN::Reporter now?", "yes");
if ($_conf =~ /^y/i) {
$CPAN::Frontend->myprint("\nProceeding to configure CPAN::Reporter.\n");
CPAN::Reporter::configure();
$CPAN::Frontend->myprint("\nReturning to CPAN configuration.\n");
}
}
}
my_yn_prompt(trust_test_report_history => 0, $matcher);
#
#= YAML vs. YAML::Syck
#
if (!$matcher or "yaml_module" =~ /$matcher/) {
my_dflt_prompt(yaml_module => "YAML", $matcher);
my $old_v = $CPAN::Config->{load_module_verbosity};
$CPAN::Config->{load_module_verbosity} = q[none];
if (!$auto_config && !$CPAN::META->has_inst($CPAN::Config->{yaml_module})) {
$CPAN::Frontend->mywarn
("Warning (maybe harmless): '$CPAN::Config->{yaml_module}' not installed.\n");
$CPAN::Frontend->mysleep(3);
}
$CPAN::Config->{load_module_verbosity} = $old_v;
}
#
#= YAML code deserialisation
#
my_yn_prompt(yaml_load_code => 0, $matcher);
#
#= External programs
#
my(@path) = split /$Config{'path_sep'}/, $ENV{'PATH'};
$CPAN::Frontend->myprint($prompts{external_progs})
if !$matcher && !$auto_config;
_init_external_progs($matcher, {
path => \@path,
progs => [ qw/make bzip2 gzip tar unzip gpg patch applypatch/ ],
shortcut => 0
});
_init_external_progs($matcher, {
path => \@path,
progs => [ qw/wget curl lynx ncftpget ncftp ftp/ ],
shortcut => 1
});
{
my $path = $CPAN::Config->{'pager'} ||
$ENV{PAGER} || find_exe("less",\@path) ||
find_exe("more",\@path) || ($^O eq 'MacOS' ? $ENV{EDITOR} : 0 )
|| "more";
my_dflt_prompt(pager => $path, $matcher);
}
{
my $path = $CPAN::Config->{'shell'};
if ($path && File::Spec->file_name_is_absolute($path)) {
$CPAN::Frontend->mywarn("Warning: configured $path does not exist\n")
unless -e $path;
$path = "";
}
$path ||= $ENV{SHELL};
$path ||= $ENV{COMSPEC} if $^O eq "MSWin32";
if ($^O eq 'MacOS') {
$CPAN::Config->{'shell'} = 'not_here';
} else {
$path ||= 'sh', $path =~ s,\\,/,g if $^O eq 'os2'; # Cosmetic only
my_dflt_prompt(shell => $path, $matcher);
}
}
{
my $tar = $CPAN::Config->{tar};
my $prefer_external_tar = $CPAN::Config->{prefer_external_tar}; # XXX not yet supported
unless (defined $prefer_external_tar) {
if ($^O =~ /(MSWin32|solaris)/) {
# both have a record of broken tars
$prefer_external_tar = 0;
} elsif ($tar) {
$prefer_external_tar = 1;
} else {
$prefer_external_tar = 0;
}
}
my_yn_prompt(prefer_external_tar => $prefer_external_tar, $matcher);
}
#
# verbosity
#
my_prompt_loop(tar_verbosity => 'none', $matcher,
'none|v|vv');
my_prompt_loop(load_module_verbosity => 'none', $matcher,
'none|v');
my_prompt_loop(perl5lib_verbosity => 'none', $matcher,
'none|v');
my_yn_prompt(inhibit_startup_message => 0, $matcher);
( run in 0.711 second using v1.01-cache-2.11-cpan-df04353d9ac )