On Mon, Dec 01, 2003 at 02:39:29PM +0000, Graham Murray wrote: > "Logan Harbaugh" <[EMAIL PROTECTED]> writes: > > > I had to locate the RPM on the RedHat disks, install the package, > > then go back and then install the dependencies that hadn't been > > installed in the first place. Then I had to go through the > > documentation and see what files needed to be changed and how, make > > those changes, and then test the result. The whole process took me a > > little over an hour. > > Would it not have been a lot simpler to just done > > #perl -MCPAN -e shell; > cpan> install Mail::SpamAssassin > > which is the 'standard' way of installing almost any Perl based > package?
This can be problematic under many distribution's package control. SpamAssassin has numerious dependencies, including a SA-patched version of Perl module, and very often install Mail::SpamAssassin must be accompanied by several other install commmands. If you regularly install security upgrades from your vendor, it is a very good idea to locate all vendor packages containing anything installed under CPAN, and one way or another mark them installed but on hold. This prevents your regular vendor upgrades from overwriting and possibly downgrading SpamAssassin dependencies. The second alternative is to compare in detail the CPAN versions to the vendor versions of all dependencies, wrapping the CPAN packages in the vendor build scripts for each package that must be newer than the vendor-supported release, then using the vendor build procedure rather than CPAN's. This can be laborious. For most vendors there are unofficial troves of newer-than-vendor stuff which can be used to bridge any gaps. Another alternative is using /usr/local builds of CPAN things, checking to see that there aren't parallel but older versions of each installed from vendor sources, and if need be uninstalling the vendor sources, or constructing a full replacement for Perl and its modules under /usr/local and forcing SpamAssassin to load first from there. This again can require some time-consuming attention to details. Or, you can just say "damn the torpedos" and install from CPAN over the top of the vendor installation, trusting that if anything gets downgraded during the next vendor upgrade, either you'll notice it breaks and be able to fix it, or it won't break. Or maybe just stop applying vendor security upgrades. None of these is foolproof. The underlying problem is that two different configuration management systems unaware of each other's workings, controlling possibly overlapping sets of modules, can step on each other. Many well-informed and security-conscious professionals conclude that the best option is to stick with only one method of managing configuration, and pick the one that manages versions of most of the software on their systems. This is the course Mr. Harbaugh followed. I happen to favor the freeze-the-vendor-versions approach, simplifying it by marking Perl and _all_ modules as installed but on version hold, then using CPAN exclusively for all Perl related upgrades. But other people's mileage will vary. It's easy to chew up an hour with any of these approaches. -- Dan Wilder <[EMAIL PROTECTED]> ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Spamassassin-talk mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/spamassassin-talk