This uses recurseForDerivations directly after using callPackage magic to ensure
that the input attributes can be overriden *and* nix-env shows the package as in
recurseIntoAttrs.
The reason for making this optional is because there probably is only a minority
of people who want to use XMPP and we don't want to introduce an additional
dependency for the majority, do we?
Signed-off-by: aszlig <aszlig@redmoonstudios.org>