I'd like to call on everybody, who's maintaining packages, to no longer use "Requires(foo,bar): ..." notation in spec files, because it can lead to unexpected results due to two bugs. [1] [2] Details in the bugzilla reports. Instead, it should be split like this to work around those bugs: Requires(pre): foo Requires(post): foo For instance, we here have a package with "Requires(post,preun): GConf2" because gconftool-2 is needed and executed in the package's postinstall and preuninstall scriptlets. However, the installed package does not seem to depend on GConf2 when it is queried like this $ rpm --query straw straw-0.22.1-0.fdr.2 $ rpm --query --whatrequires GConf2 | grep straw $ and actually one can erase the GConf2 package (provided that no other installed package depends on it, of course, which makes this bug more dangerous when less widely used programs are required in package scriplets). A subsequent "rpm --erase straw" would fail in the preuninstall scriptlet, since gconftool-2 is no longer available. [1] Requires(pre,postun) screws up package ordering http://bugzilla.redhat.com/118773 [2] Requires(pre,postun) is ignored for installed packages http://bugzilla.redhat.com/118780 -- Fedora Core release 1.91 (FC2) - Linux 2.6.5-1.326