File README.SUSE of Package vagrant

Packaging Vagrant plugins

This convention is based on the Fedora vagrant package.

Vagrant plugins are ordinary rubygems, but they should not be packaged as
these. First off all, we don't need to build the plugin with a ruby version
other then the ruby version with which vagrant was built. Furthermore, vagrant
will _only_ recognize gems inside its own directory structure as plugins and not
arbitrary rubygems.

Note that we *must* explicitly specify the macros `rb_build_versions` and
`rb_build_abi` (and cannot use macros here!). Usually we can simply use the
default ruby here, but in case vagrant is incompatible with the default ruby, we
must override this in each plugin.

An example specfile for a vagrant plugin looks like this:
``` spec
%global rb_build_versions ruby26
%global rb_build_abi ruby:2.6.0
%global rb_ruby_suffix ruby2.6

Name:           vagrant-MYPLUGIN
Version:        $VERSION
Release:        0
%define mod_name %{name}
%define mod_full_name %{mod_name}-%{version}
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  %{rubygem gem2rpm}
BuildRequires:  %{ruby}
BuildRequires:  ruby-macros >= 5

BuildRequires:  vagrant
BuildArch:      noarch
Url:            $URL
Source:         $SRC
Source1:        gem2rpm.yml
Summary:        $SUMMARY
License:        $LICENSE


%global vagrant_plugin_name %{name}






openSUSE Build Service is sponsored by