Hello Monks,

I'm trying to work up my game on a raspberry pi, a verifiable neophyte. So far, I'm trying to keep it running with the software as it came out of the package, because I am finding it equal amounts incredible, entertaining, and challenging.

I found some syntax that got me unstuck with updating:

sudo apt-get update --allow-releaseinfo-change

followed by

sudo apt -y full-upgrade

I realize that you can paste those commands together with &&, but that's hubris for the likes of me. Along the way, I also did:

install CPAN reload CPAN

Trying to cover all the bases with necessary headers:

sudo apt-get install  perl-doc  build-essential

, and now I seem to be hung up on CPAN. This is not the first time recently that I've been hung up on CPAN, and I think some of it derives from the unusual measures that 2.29 addresses. I got stuck in what looks to be a similar mire with my droplet recently, and I ended up having to hit the reset button, which I do not want to do with this neato OS.

$ lsb_release -a No LSB modules are available. Distributor ID: Raspbian Description: Raspbian GNU/Linux 10 (buster) Release: 10 Codename: buster $

When I'm directed to man apt-secure, I read:

Notice that this is distinct from checking signatures on a per +package basis. It is designed to prevent two possible attacks: • Network "man in the middle" attacks. Without signature chec +king, malicious agents can introduce themselves into the package +download process and provide malicious software either by controllin +g a network element (router, switch, etc.) or by redirecting tr +affic to a rogue server (through ARP or DNS spoofing attacks). • Mirror network compromise. Without signature checking, a ma +licious agent can compromise a mirror host and modify the files in +it to propagate malicious software to all users downloading packa +ges from that host.

It would seem that these are similar to the considerations that pushed 2.29. Right now, I can't download any perl modules, and I'm scratching my head as to why. I try to recreate the cpan info faithfully, which means that it will be verbose, so I'll put that part in readmore tags for the intrepid:

So, I thought that I walked through the new dialog for 2.29 correctly. I use an alias to invoke cpan:

$ alias sc alias sc='sudo cpan' $
$ sc Loading internal logger. Log::Log4perl recommended for better logging Starting with version 2.29 of the cpan shell, a new download mechanism is the default which exclusively uses cpan.org as the host to download from. The configuration variable pushy_https can be used to (de)select the new mechanism. Please read more about it and make your choice between the old and the new mechanism by running o conf init pushy_https Once you have done that and stored the config variable this dialog will disappear. Terminal does not support AddHistory. To fix that, maybe try> install Term::ReadLine::Perl cpan shell -- CPAN exploration and modules installation (v2.29) Enter 'h' for help. cpan[1]> o conf init pushy_https Boolean. Defaults to true. If this option is true, the cpan shell will use https://cpan.org/ to download stuff from the CPAN. It will fall back to http://cpan.org/ if it can't handle https for some reason (missing modules, missing programs). Whenever it falls back to the http protocol, it will issue a warning. If this option is true, the option C<urllist> will be ignored. Consequently, if you want to work with local mirrors via your own configured list of URLs, you will have to choose no below. <pushy_https> Do you want to turn the pushy_https behaviour on? [yes] Please remember to call 'o conf commit' to make the config permanent! cpan[2]> o conf commit commit: wrote '/root/.cpan/CPAN/MyConfig.pm' cpan[3]> q Terminal does not support GetHistory. Lockfile removed. $ $ sudo grep pushy /root/.cpan/CPAN/MyConfig.pm 'pushy_https' => q[1], $

Then:

reload CPAN

I think that I've gotten it but then I find myself back in the same Charybdis:

cpan[1]> install Regexp::Pattern Reading '/root/.cpan/Metadata' Database was generated on Mon, 28 Feb 2022 23:41:02 GMT Running install for module 'Regexp::Pattern' Fetching with HTTP::Tiny: https://cpan.org/authors/id/P/PE/PERLANCAR/Regexp-Pattern-0.2.14.tar.g +z HTTP::Tiny failed with an internal error: IO::Socket::SSL 1.42 must be + installed for https support Net::SSLeay 1.49 must be installed for https support Giving up on '/root/.cpan/sources/authors/id/P/PE/PERLANCAR/Regexp-Pat +tern-0.2.14.tar.gz' Note: Current database in memory was generated on Mon, 28 Feb 2022 23: +41:02 GMT cpan[2]> install Log::Log4perl Running install for module 'Log::Log4perl' Fetching with HTTP::Tiny: https://cpan.org/authors/id/E/ET/ETJ/Log-Log4perl-1.54.tar.gz HTTP::Tiny failed with an internal error: IO::Socket::SSL 1.42 must be + installed for https support Net::SSLeay 1.49 must be installed for https support Giving up on '/root/.cpan/sources/authors/id/E/ET/ETJ/Log-Log4perl-1.5 +4.tar.gz' Note: Current database in memory was generated on Mon, 28 Feb 2022 23: +41:02 GMT cpan[3]> install Net::SSLeay Running install for module 'Net::SSLeay' Fetching with HTTP::Tiny: https://cpan.org/authors/id/C/CH/CHRISN/Net-SSLeay-1.92.tar.gz HTTP::Tiny failed with an internal error: IO::Socket::SSL 1.42 must be + installed for https support Net::SSLeay 1.49 must be installed for https support Giving up on '/root/.cpan/sources/authors/id/C/CH/CHRISN/Net-SSLeay-1. +92.tar.gz' Note: Current database in memory was generated on Mon, 28 Feb 2022 23: +41:02 GMT cpan[4]>

So I need Net::SSLeahy to install it, and I'm at checkmate.

Nothing looks fishy or out of place with openssl:

$ openssl version -a OpenSSL 1.1.1d 10 Sep 2019 built on: Wed Feb 23 16:50:26 2022 UTC platform: debian-armhf options: bn(64,32) rc4(char) des(long) blowfish(ptr) compiler: gcc -fPIC -pthread -Wa,--noexecstack -Wall -D__ARM_MAX_ARCH_ +_=7 -Wa,--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-FuVaAp +/openssl-1.1.1d=. -fstack-protector-strong -Wformat -Werror=format-se +curity -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPE +NSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA5 +12_ASM -DKECCAK1600_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ +256_ASM -DPOLY1305_ASM -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2 OPENSSLDIR: "/usr/lib/ssl" ENGINESDIR: "/usr/lib/arm-linux-gnueabihf/engines-1.1" Seeding source: os-specific $ which openssl /usr/bin/openssl $

I think I've got the resources to make it work. Looking for any tips on how to get CPAN unstuck. Do I need headers?

Anyways, fishing for tips, tricks, and best policies. I hope this finds you all well, in particular those who are proximal to conflict.


In reply to CPAN 2.29 stuck with Net::SSLeahy by Aldebaran

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.