--- lib/CPAN/FirstTime.pm.orig 2006-02-06 07:50:13.000000000 -0500 +++ lib/CPAN/FirstTime.pm 2006-02-06 07:50:28.000000000 -0500 @@ -292,7 +292,7 @@ by ENTER. my(@path) = split /$Config{'path_sep'}/, $ENV{'PATH'}; local $^W = $old_warn; my $progname; - for $progname (qw/gzip tar unzip make lynx wget ncftpget ncftp ftp gpg/){ + for $progname (qw/gzip tar unzip make links lynx wget ncftpget ncftp ftp gpg/){ if ($^O eq 'MacOS') { $CPAN::Config->{$progname} = 'not_here'; next; --- lib/CPAN.pm.orig 2006-02-06 07:54:43.000000000 -0500 +++ lib/CPAN.pm 2006-02-06 07:52:59.000000000 -0500 @@ -2604,7 +2604,7 @@ sub hosthard { $self->debug("localizing funkyftpwise[$url]") if $CPAN::DEBUG; my($f,$funkyftp); - for $f ('lynx','ncftpget','ncftp','wget') { + for $f ('links','lynx','ncftpget','ncftp','wget') { next unless exists $CPAN::Config->{$f}; $funkyftp = $CPAN::Config->{$f}; next unless defined $funkyftp; @@ -2613,7 +2613,7 @@ sub hosthard { ($asl_ungz = $aslocal) =~ s/\.gz//; $asl_gz = "$asl_ungz.gz"; my($src_switch) = ""; - if ($f eq "lynx"){ + if (($f eq "lynx")||($f eq "links")){ $src_switch = " -source"; } elsif ($f eq "ncftp"){ $src_switch = " -c"; @@ -2637,10 +2637,14 @@ Trying with "$funkyftp$src_switch" to ge my($wstatus); if (($wstatus = system($system)) == 0 && - ($f eq "lynx" ? + (($f eq "lynx" ? -s $asl_ungz # lynx returns 0 when it fails somewhere : 1 - ) + )|| + ($f eq "links" ? + -s $asl_ungz # links returns 0 when it fails somewhere + : 1 + )) ) { if (-s $aslocal) { # Looks good @@ -2695,7 +2699,7 @@ returned status $estatus (wstat $wstatus }); } return if $CPAN::Signal; - } # lynx,ncftpget,ncftp + } # links,lynx,ncftpget,ncftp } # host } @@ -6022,7 +6026,7 @@ stalled. The CPAN module is designed to automate the make and install of perl modules and extensions. It includes some primitive searching capabilities and -knows how to use Net::FTP or LWP (or lynx or an external ftp client) +knows how to use Net::FTP or LWP (or lynx or links or an external ftp client) to fetch the raw data from the net. Modules are fetched from one or more of the mirrored CPAN @@ -6975,16 +6979,18 @@ or =back -=head2 Configuring lynx or ncftp for going through a firewall +=head2 Configuring links or lynx or ncftp for going through a firewall If you can go through your firewall with e.g. lynx, presumably with a command such as /usr/local/bin/lynx -pscott:tiger + /usr/local/bin/links -pscott:tiger then you would configure CPAN.pm with the command o conf lynx "/usr/local/bin/lynx -pscott:tiger" + o conf links "/usr/local/bin/links -pscott:tiger" That's all. Similarly for ncftp or ftp, you would configure something like