========================================================================
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 <terceiro@debian.org>  Wed, 27 May 2015 10:45:20 -0300
