[Yum] --allow-downgrade - how does it work? still having problems...
Troy Dawson
dawson at fnal.gov
Tue Sep 30 15:12:05 UTC 2008
Seth Vidal wrote:
> On Thu, 2008-09-18 at 22:55 +0200, Nikola Ciprich wrote:
>> Hello everybody,
>> some time ago, I asked here for help, because I can't get allowdowngrade plugin
>> working. We didn't come to any conclusion, and I didn't have time to play with
>> it anymore, but now I got back to it, and I'd like to ask for bit of explanation.
>> I did a bit of exploring, and I'm a bit confused. It seems that allowdowngrade adds
>> hooks to postresolve, but if I try to install package, yum just doesn't get there
>> at all, so plugin can't really change anything.
>> It seems that it ends in yum/__init__.py, after line 2392 (install method):
>>
>> # make sure we don't have a name.arch of this already installed
>> # if so pass it to update b/c it should be able to figure it out
>> if self.rpmdb.contains(name=po.name, arch=po.arch) and not self.allowedMultipleInstalls(po):
>> if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
>> self.verbose_logger.warning(_('Package matching %s already installed. Checking for update.')
>> txmbrs = self.update(po=po)
>> tx_return.extend(txmbrs)
>> continue
>>
>> self.update(po=po) returns empty list, which causes package to be skipped. Is this intended behaviour?
>> Should I be looking elsewhere?
>> I'm using latest yum and yum-allowdowngrade
>> Any ideas?
>> thanks a lot in advance!
>> with best regards
>
> Nope, I think you're on the right path. Making sure allowdowngrade
> semi-behaves is on my list to fix before 3.2.20 comes out.
>
> If you can fix it w/o breaking more things please send a patch you may
> have.
>
> -sv
>
Hi All,
I'm looking back and it looks like I never got back with the syntax of
allow-downgrade.
I don't know about 3.2.20, but in 3.2.8 it is working, but the syntax is a
little different than expected.
Make sure you have the allowdowngrade plugin installed. Also make sure that the
downgraded rpm is in your yum repository.
The syntax is
yum --allow-downgrade install <rpm name in special format>
The special format is gotten by doing
rpm -qp --qf "%|epoch?{%{epoch}}:{0}|:%{name}-%{version}-%{release}.%{arch}\n"
<rpm>
So a package like firefox-3.0-0.beta5.6.el5.i386.rpm comes out like
0:firefox-3.0-0.beta5.6.el5.i386
Troy
p.s. I'm about ready to post of plugin called versionfix which was originally
based on allow-downgrade, which is why I saw this.
--
__________________________________________________
Troy Dawson dawson at fnal.gov (630)840-6468
Fermilab ComputingDivision/LCSI/CSI DSS Group
__________________________________________________
More information about the Yum
mailing list