One of annoying "features" of rpmdrake is that it completely ignores errors during RPM installation phase - i.e. such things like bad RPM or missing depndencies and removes all packages from list assuming they have been installed.
Unfortunately it turned out not to be easy to fix. grpmi calls rpmRunTransactions and relies on it to return a list of problems during install. Now rpm does not always returns something meaningful. It does it in such cases like out of space or missing dependencies but does not if you have corrupted RPM or in case of *any* other error during actual installation. To test just truncate any RPM and see - you get just overall "installation failed" status without any more detailed information which RPM failed. This actually looks like RPM bug (or design error). Anybody knows how to get this information? I'll probably fix grpmi to still return something useful for missing dependencies or conflicts but keep in mind it won't cover everything. -andrej