Hi Gary, on Tue, 17 Feb 2004 21:22:28 -0800 you wrote: > It seems that RPM's (from Redhat's up2date for example) interact poorly > sometimes with CPAN installs. Why is that?
Probably because Red Hat supplies a number of CPAN modules in the distribution, but they are packaged in the usual way as RPMs. If you are using package management tools like up2date, then there is an implicit assumption that you are using package management system-wide. If you have some stuff package-managed and some stuff not-package-managed, or (worse) overwrite package-managed stuff with un-managed stuff without removing the package from your database first, then it's inevitable that trying to do updates etc. using package management will be unpredictable at best. Consider what happens if your base distribution includes the CPAN module Foo::Bar. One day, you decide to update it with the "perl" command line to a newer version. Now, Red Hat then release a new revision on the older version. When you run up2date, up2date will have no idea that you have overwritten the module files manually, and will therefore proceed to downgrade you back to the "newer-older" packaged version. > What's the cure? Be consistent in your use of package management. Either install everything from source without package management, or install everything as RPMs, but don't do a mixture. In the case of CPAN modules, either remove all the Red Hat CPAN RPMs and install everything using the perl/CPAN command line, or (preferably, so as not to break your package management dependencies for everything else) not use the perl/CPAN command line and instead install all CPAN modules as RPMs. There are a number of packages floating around that will automatically package a CPAN module as an RPM, including "cpan2rpm", "perlmod2rpm" and (my favourite) "cpanflute2". I hit the same problem myself a few years ago, at which point I made the decision to use package management properly, and learnt how to build my own RPM packages for software that I wanted to build from source. So now absolutely *everything* on my systems is package managed, which makes updates/rollbacks/whatever easy, predictable and reliable. You can see some of the packaging I've put together/used at http://www.timj.co.uk/linux/rpms.php Tim
