Re: perl system integrity?
Miles Fidelman wrote:
> On 7/18/17 12:52 PM, Jude DaShiell wrote:
>
> >Does any means exist within perl to detect that a perl base installed on a
> >system is completely intact? Perl base is perl binary and all support
> >packages that binary uses before cpan or cpanp is run. The perl base is
> >put on newly installed systems.
> >I am interested in this since sometimes system updates break perl and
> >steps have to be taken to clear the breakage then repair steps need to be
> >taken. If a means exists to let a user know this list of packages came
> >with your installed system and are now missing perl system repairs could
> >be expedited.
> >Aside from perl, such capabilities added to other base systems like python
> >for one example could help out repairing those other systems too.
>
> Perl has the best collection of regression tests that I've ever seen. When
> you install from a source tarball, and run "make test" - everything gets
> checked. Same again when you install/update modules via cpan. It takes a
> while, but you know everything is working.
>
> Personally, when I'm using perl, I always install from scratch, and maintain
> using cpan - packagers & packaging just muck it up.
The Debian Perl team does an amazing job of packaging -- and
patching -- the base perl as well as thousands of
distributions from CPAN. Their bug reports and patches
are a significant contribution to upstream maintenance.
Debian packaging handles external dependencies of perl
modules, which the perl toolchain is not capable of
handling on its own. For casual, trouble-free installations,
the system perl is excellent.
That said, I generally compile perl from sources and install
it in my $HOME directory, along with any CPAN modules that I
need.
There are various ways to install non-system perl.
The newest and neatest IMO is plenv, which allows multiple
perl versions to coexist. You can select a global perl
version to use, and override it in individual directories.
That floats my boat, however perlbrew and local::lib
can also be useful.
I find that cpanm (App::cpanminus) is the most convenient
way to install CPAN modules.
Coming to the OP's question, I agree with the poster who
said that perl's testing framework is awesome. If there is a
problem upgrading system perl, it's a bug. If reported, the
Debian perl team will investigate it thoroughly.
Problems are most likely with an unintended mix of system
perl, perl installed by root in /usr/local, or unprivileged
perl installed in $HOME.
Which perl is picked up by a shebang line #!/usr/bin/env
perl will depend on your $PATH variable.
cheers,
Joel
> Miles Fidelman
>
>
> --
> In theory, there is no difference between theory and practice.
> In practice, there is. .... Yogi Berra
>
--
Joel Roth
Reply to: