rpm -q PackageName.NotInstalledArch should report "package PackageName is not installed" instead of being silent. I noticed this when I was trying to figure out why I couldn't remove openssl.i386 on an AMD64 system (which had openssl.i686 and openssl.x86_64 installed) -- all references to openssl.i386 were silently ignored.
Use the exact arch. Trying to compute all possible compatible arches is not worth the effort. Consider for example hosting on a server, or using a qemu emulator: exactly what arches are "compatible" and hos the heck is rpm supposed to discover "compatible"?!?
I'm not complaining about RPM failing to infer that i686 is i386, I'm complaining that RPM doesn't say *anything at all* when you mistakenly list an architecture that isn't installed for a package that is. i.e. [nicholas@entropy ~]$ rpm --nevra -qa openssl* openssl097a-(none):0.9.7a-3.1.x86_64 openssl-(none):0.9.7f-7.10.x86_64 openssl-devel-(none):0.9.7f-7.10.x86_64 openssl-(none):0.9.7f-7.10.i686 [nicholas@entropy ~]$ rpm -q openssl.i386 [nicholas@entropy ~]$ The bug is the complete lack of output between the last two shell prompts. I'd expect "package openssl is not installed" at the very least or "package openssl.i386 is not installed" if you feel like fixing it right.
Fixed in rpm cvs, will be in rpm-4.4.8-0.9 when built. UPSTREAM
REOPENED status has been deprecated. ASSIGNED with keyword of Reopened is preferred.
Fixed in rpm.org now, will be in 4.4.2.1
*** Bug 230580 has been marked as a duplicate of this bug. ***
*** Bug 234601 has been marked as a duplicate of this bug. ***
CLOSED
Fixed in next rawhide push by rpm 4.4.2.1-rc1