On 09/24/2013 07:51 AM, Alexandre Drahon wrote:
Hi Mo,

Thanks for the pointers, I'll definitely look at this and ask for help on the Ruby SIG list. The issue here is that Vagrant plugins are rubygems that get installed in the user's ~/.vagrant.d/ directory with all their dependencies (ie. Vagrant won't reuse system-wide installed gems). I already face the issue with vagrant-kvm with the dependency on Nokogiri, which needs gcc to install. OTOH I'm trying to keep Vagrant patching to a minimum. I think the best course of action is:
 - have Vagrant look for plugins system-wide first (in /usr/share/gems) and then in ~/.vagrant.d
 - still allow plugin install from rubygems.org ('vagrant plugin install whatever') and ensure it works
 - provide vagrant-kvm as a system-wide rubygem and ensure it uses system-wide dependencies
 - maybe provide some other Vagrant plugins as RPM (not sure it's wise)

bundler_ext seems like it could help here, I'm going to have a look at that.

Alex

Sounds like the plugin system works somewhat similar to engines in rails. IIUC, so long as we have the deps to startup the base system from a yum install, we should be good as far as loading plugins from wherever. Additional plugins shipped as rpm's would be a nice feature but might not be a required from the get-go.

  -Mo