======================================================================== Vagrant for Debian ======================================================================== Packaging Vagrant plugins ------------------------- Vagrant plugins must be packaged as regular Ruby libraries. Using the Rubygems installation layout, supported by gem2deb >= 0.23, is recommended. For vagrant to recognize the package as a plugin, it needs only one extra detail: the package must contain a file at /usr/share/vagrant-plugins/plugins.d/$PLUGINNAME.json with the following content: { "${PLUGINNAME}": { "ruby_version":"$(ruby -e 'puts RUBY_VERSION')", "vagrant_version":"$(cat /usr/share/vagrant/version.txt)", "gem_version":"", "require":"", "sources":[] } } The vagrant package includes a helper called dh_vagrant_plugin, which will create that for you. To use it, just call `dh_vagrant_plugin` at the install phase of your package. A sample debian/rules that should just work is as follows: ----------------8<----------------8<----------------8<----------------- #!/usr/bin/make -f export DH_RUBY = --gem-install %: dh $@ --buildsystem=ruby --with ruby override_dh_auto_install: dh_auto_install dh_vagrant_plugin ----------------8<----------------8<----------------8<----------------- If using dh_vagrant_plugin, your package must build-depend on `gem2deb` and `vagrant`. Vagrant plugins don't have to be called ruby-$foo as other Ruby libraries. If their name already start with vagrant-, they can just keep it. If their name does not begin with vagrant-, please do name at least your binary package vagrant-$foo. -- Antonio Terceiro Wed, 27 May 2015 10:45:20 -0300