Red Hat Bugzilla – Bug 49409
Can't tell what "rpm --freshen *.rpm" will do
Last modified: 2007-04-18 12:34:53 EDT
Description of Problem:
There is no way to test for which packages will be upgraded by --freshen.
This greatly reduces the utility of --freshen because you can't tell if
you're going to get into something complicated, as when a complex config
file is upgraded and you need to be sure your config and the new software
are in sync, or something dangerous, like a upgrade to the kernel. This is
especially significant when trying to apply the updates from RedHat, as
lots of update rpms wind up in one directory.
I'd like some combination of -v --freshen and --test to provide clues as to
what's going to happen. Or at least what packages are going to be
rpm -Fvv --test --noscripts --notriggers ...
The output is copious, but complete. (And, AFAIK, --noscripts
and --notriggers are implied by --test, but Just In Case ...)
I'll grant that -Fvv is acceptable if you'll commit to a particular script,
rpm -Fvv --test --noscripts --notriggers *.rpm 2>&1 | grep '^D: package: ' | cut
-d ' ' -f 3
which will _allways_ produce the list of new packages to be installed. If you
won't commit, I stick by my claim that "There is no way to test for which
packages will be upgraded by --freshen."
(I wouldn't take the bait if I were you... :-)
I'll commit to a relatively simple, deterministic way of identifying
what packages are gonna be installed, but I reserve the right to
change the "D: package:" string if I need to. How's that? :-)