long-wanted feature added to yum

January 30, 2008

I checked in a long-wanted feature into yum yesterday. It was only able to happen b/c of the some groundwork done earlier this month in the install() method in YumBase but now it was easy-ish to do.

A lot of people have complained about this over the years multilib has existed:

on x86_64:

yum install foo

if you do this and foo.i386 and foo.x86_64 exist then yum will try to install both of them.

With yum 3.2.11 and forward you can set: multilib_policy=best in your yum.conf file. If you do that then it will install the ‘best’ arch for your platform and only that one, if it is available.

so: yum install foo on x86_64 will only install foo.x86_64, unless foo.x86_64 doesn’t exist and then it will fall back to whatever foo is available.

If you set multilib_policy=all, which is the default, then yum follows the behavior it has always followed, install all of them it can.

This doesn’t impact people not using biarch-capable systems, but I thought I’d mention it as I’m sure there are a number of people who will be pleased to see this.


8 Responses to “long-wanted feature added to yum”

  1. Seth, this is indeed outstanding. This little annoyance has really bothered me for a long time, since I try to use x86_64 on both of my home machines as well as my work machine. Good work to you and the rest that have made this possible!

    Any chance that the default for multilib_policy can be set to “best” in F9? Whom do I need to petition to make that happen, if not you?

  2. skvidal Says:

    if you want it default for f9, talk to folks like bill nottingham and jesse keating.

  3. whyohwhyohwhyoh Says:

    awesome work.

    while this is fresh in your mind could you possibly have a quick look at my bug https://bugzilla.redhat.com/show_bug.cgi?id=428513 ?

    hmm … just noticed it’s actually assigned to you! would the bug become obsolete if this change went into F9?

    thanks again!

  4. Author Says:

    This sounds very nice, although the universal acceptance of .arch convention has mitigated the need somewhat. These days I can say “yum install foo.x86_64” and it works fine (in fact, just tried it the other day after trying “yum install libsilc” first and seeing the list of packages). I say somewhat because it’s still a good thing to be able to type “yum install foo”, so thanks a lot.

  5. I tend to forgetfully use “yum install foo” constantly, so this is going to be a space-saver for me, esp. with the upcoming SD hotness on this Dell laptop. Thanks Seth!

  6. Bret McMillan Says:

    Just keep your eye on the package universe you’re dealing with. up2date had boatloads of pain on this (mostly got sorted out in… 4u4?) as packagers did weird crap like noarch –> i386, etc.

    But maybe this’ll finally get folks to document what are and are not completely insane multilib scenarios.

  7. skvidal Says:

    well, the i386> noarch issue is handled through exactarchlists and more to the point this ONLY impacts installs, not updates.

    And yes, multilib definitions are so unbelievably vague anyway, short of “magically do what I mean”

  8. Floroskop Says:

    I think this try.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: