Toshio Kuratomi <toshio(a)tiki-lounge.com> wrote:
[...]
Better rhetorical question:
How should I know that yum is going to install an i386 of xfsprogs
but
not vim ahead of time?
Mostly because a package isn't available natively... and this is (mostly) a
repository setup decision.
I don't know that there's an i386 version of the package
within the tree
until yum tells me.
Then ask...
So if I don't want to waste time with yum
trying to
download the i386 package I need to waste time ftp'ing into the
repository to list the exact filenames of the packages I'm interested
in.
Again, a repository setup decision.
This is a case where "do what I mean" and "do what I
say" don't match
up. I think that part of it is because yum's overloading a field. In
yum install [PACKAGE], PACKAGE sometimes means package name and
PACKAGENAME.ARCH in others. If we break arch out of that field another
issue is easier to see:
On x86_64:
yum remove [multilib package]* will remove whichever versions of the
packages are present on the system.
OK.
yum remove [multilib package]* --arch=i386 will remove the i386
packages
if they exist on the system
OK.
yum upgrade [multilib package]* will upgrade whichever versions of
the
packages are present on the system
OK.
yum upgrade [multilib package]* --arch=i386 will upgrade the i386
packages if they exist on the system.
Breaks badly if it is truly multiarch (in that case, you can't have one
version of one arch and another one of the other one).
yum install [multilib package]* will install the packages from the
repository.
Which ones? Native only? All?
yum install [multilib package]* --arch=i386 will install the i386
packages if they exist in the repository.
OK, unless it conflicts with an installed (older) package for the other
arch. What do you want done in that case? Error out? Upgrade the other
arch?
The install case is different from the remove and upgrade cases
because
remove and upgrade deal with the installed system while install deals
with the repository.
/All/ interact with the repository.
To be truly consistent between yum install and
yum
upgrade, if I had vim-common on my system and ran "yum upgrade vim*",
yum would look in the repository, discover vim-minimal, vim-enhanced,
and vim-X11 and "upgrade" those as well. You don't have yum do that
because yum install and yum upgrade are operating in different contexts
with different expectations. If the expectation for the install case is
"best arch for the system" instead of "all packages present in the
repository" then it shouldn't be a surprise that it isn't consistent
with the upgrade or remove case for the same reason.
What is so wrong with "yum install 'vim*.i?86'" here? (Not that I'd
expect
vim.i386 to be in the x86_64 repository, but...).
--
Dr. Horst H. von Brand User #22616
counter.li.org
Departamento de Informatica Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria +56 32 654239
Casilla 110-V, Valparaiso, Chile Fax: +56 32 797513