Red Hat Bugzilla – Bug 58797
up2date is too inflexible
Last modified: 2015-01-07 18:54:38 EST
up2date is very inflexible, and needs more options. For example, I'm currently
trying to update a system to the RH 7.2 errata. It's refusing to install the X
font errata because "configuration changed".
First of all, that shouldn't matter. The only thing that's changed for
XFree86-100dpi-fonts and XFree86-75dpi-fonts is the encodings.dir file, which
will naturally be different since it's a generated file.
But, even given that particular bit of braindeadness on up2date's part, it
should still be possible to tell up2date to install the RPMs. As far as I can
tell, it's not.
Even more braindead, though, is the fact that downloading only (up2date -d) also
fails to retrieve those two packages. download only should at least be
configurable to download packages for which configuration has changed.
>up2date is very inflexible, and needs more options. For example, I'm currently
>trying to update a system to the RH 7.2 errata. It's refusing to install the X
>font errata because "configuration changed".
The case for which up2date flags something as having a config modified is
The file is flagged as a config file.
The md5sum of the version on disk is different than the
original md5sum of the file.
(ie, the file has been modified)
The md5sum of the file in the new package is different than
the original md5sum of the file in the old package.
(ie, the default format of the file has changed)
The file is not marked as "config(noreplace)"
In all other cases, rpm is left to handle the config files. But
In this circumstance, since:
a) installing the new file may cause a local change
to be repealed
b) the old config file is used, but since the default config
format has changed, the old config file may not with the new
package, potentially breaking something.
Since up2date is designed to be used automatically and not interactivily
in many cases, these potentiall dangerous updates are skipped by default.
To install the packages anyway, you can:
a) run the interactive gui client and select the package from the
presented list of skipped packages, overriding the default action.
b) run `up2date --configure` and disable the config option of
"Do not upgrade packages when local configurations have been modifed"
c) Run the client with the "--force" flag. Note: this also overrides
package and file skip lists.
In this particular case, it looks like the config files in question should
of been flagged with the "config(noreplace)" option.
up2date will only download packages that it can correctly install according
to the config options set. (with the occasional minor caveat of packages that
fail a real install but pass a transaction run (a rpm with a file thats been
chattr +i'ed, for example). This is by design.
config option is probabaly a reasonable feature request.
Reopening as a RFE. I still want the
--get and --get-source, circa 3.1.40 or so
closing as fixed, thanks