This partially reverts commit 38d8a9c2.
glib-compile-schemas and gtk-update-icon-cache are deliberately split up
between %post and %posttrans to optimize the scriptlet run time with
multi-package transactions.
Instead of regenerating the whole icon cache after every single package
install (in %post), this splits it in two: in %post, there's just a
"touch %{_datadir}/icons/hicolor", and the icon cache is later
regenerated once after the whole transaction (in %posttrans). The very
first gtk-update-icon-cache call in %posttrans regenerates the cache,
and the subsequent ones are no-op because the icon files (and directory
timestamps) don't change during the sequential %posttrans runs.
http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache