We occasionaly get complaints from users that our official Vagrant images do not include the VirtualBox Guest Additions. We do not include them because the CentOS repositories do not have any package for VirtualBox. Packaging it would probably require a significant amount of work - the Debian source package shows quite a number of first-level dependencies, probably not all already available in CentOS. [1] I'm also not sure if packaging the full VirtualBox is even desirable. [2]
The alternative would be to package just the Guest Additions (which have considerably fewer build dependencies), to be able to include them in the Vagrant images. Two VirtualBox developers told me in #vbox-devel that the source code already supports building just the Guest Additions, and it's actually used for generating the official download images: one should simply invoke "kmk VBOX_ONLY_ADDITIONS=1", or, I quote: 'kmk VBOX_ONLY_ADDITIONS=1 packing to produce the ISO, which will only be for one platform and bit count.' They also believe we should be able to get away with simply providing the binary modules, since our kernels have a stable ABI (the upstream Guest Additions ISO, as well as the Debian packages, require DKMS and the development tools and kernel headers, which would considerably increase the size of our Vagrant images). We would probably need to incorporate some functionality from their installer at RPM build time, to get just the binary modules.
Regards, Laurențiu
[1] https://packages.debian.org/sid/virtualbox [2] https://lkml.org/lkml/2011/10/6/317