Personally I'm in favor of the idea of extracting dependencies from the control and spec files and building a script that will install the necessary tool chain. I am sure that as we embark on this we will discover dependencies that have not been declared in the package scripts - but I think that is only more of a reason to do this exercise. Maintaining VMs may also be desirable, but writing a system to build and install the tool chain as a first step would make maintaining VMs much easier in the long term too.
I don't have a terribly strong opinion against any of the proposed ideas, however - so I'll gladly volunteer to contribute towards whatever seems to be the most accepted solution.
