[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How's ...



* Weaver <weaver@riseup.net> [22-07/04=Mo 00:43 -0700]:
> ... your day going?

Hairier than Gene Heskett's nostrils, because "up"grading Perl from
5.8.8 to 5.34.1 had a fine `make test`, then installed a CPAN that's
so broken it abends before it finishes its own Configure, thereby
making it impossible to upgrade anything else, and leaving the new Perl
unrunnable because compiled modules keep reporting missing symbols
and abending, because they need to be recompiled, which is what CPAN
is *for*, and of course it can't do that, because it too depends on
compiled modules that cause it to abend before it can recompile them.

I have the old Perl in /usr/bin with its old CPAN, which might
run, but if I try it and *THAT* breaks, suddenly I no longer have
any working Perl.  So I'm reading source code to try to figure out
what needs to be done and how to do it by hand, interleaved with
reading stuff like https://perl-begin.org/topics/cpan/life-with-cpan/
that warns me not to follow CPAN's *own* recommendations about
what to install ... not sure why not yet ... but it seems like
that documentation believes the latest version of CPAN is safe
from the bugs it's warning against ... but of course the latest
version is the one that abends before it even gets out of bed.

Somebody needs to reimplement CPAN in Bash just so we can bootstrap a
totally broken Perl without needing to run out and buy a new computer.
I mean, how hard can it be (assuming you grok what CPAN actually
*does*, which I don't yet, and know Bash, which I know just enough
of to make Greg Wooledge hate me)?  Never mind reading the Configure
hash, just parameterize the script with shell variables the user
can hand-edit: an array of mirrors, an array of modules to build,
etc.  Make that shell script so simple it's its own documentation.

Hmm ... make it idempotent, by having it know how to check whether
a module is up-to-date and NOP if so.  That way, modules can be added
to the array until the result has updated enough modules that CPAN
itself can run, after which it can get out of bed and go to work.

Because this is probably the best solution I will actually probably
end up doing it myself unless somebody who has already done it can
point me to a published script.  It's so obvious that it's probably
been done this way a dozen times over the decades, but the reason
it's not easily findable (I did Google 'reimplement cpan in bash',
finding nothing useful) is the same reason Perl documentation is in
a general state of desuetude.  I couldn't even find a decent Perl
mailing list to lurk on; I'm lurking on perl-beginners, but there's
been nothing there since I subscribed but some Mordorsoft stuff.

For extra fun, I have to interrupt soon because I *JUST* found out
that my physician is retiring EIGHT DAYS from today, I'm ADHD and
have already run out of methylphenidate, and that physician has been
my only source; the only one I know in the Seattle area who isn't
intimidated by a medically-competent client or offended that I consider
my own body to be my property and not that of the physicians' guild.

So, how's ...

-- 
... your day going?          perl -le"print unpack '%C*',MENGARINI"


Reply to: