forked from pool/vagrant
- Combined dependency patches into a common dependency.patch:
* 0005-do-not-depend-on-wdm.patch * 0010-Remove-dependency-on-grpc-tools.patch * 0011-Remove-vagrant-ssl-extension.patch * 0012-Bump-rgl-dependency-to-0.6.6.patch * 0013-Bump-webrick-dependency-to-1.8.0.patch * 0014-Bump-vagrant_cloud_dependency.patch * childprocess-5.0.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization:vagrant/vagrant?expand=0&rev=92
This commit is contained in:
63
README.SUSE
Normal file
63
README.SUSE
Normal file
@@ -0,0 +1,63 @@
|
||||
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
|
||||
|
||||
%description
|
||||
$DESCRIPTION
|
||||
|
||||
%global vagrant_plugin_name %{name}
|
||||
|
||||
%prep
|
||||
%gem_unpack
|
||||
|
||||
%build
|
||||
%gem_build
|
||||
|
||||
%install
|
||||
%vagrant_plugin_install
|
||||
|
||||
%files
|
||||
%{vagrant_plugin_instdir}
|
||||
%{vagrant_plugin_cache}
|
||||
%{vagrant_plugin_spec}
|
||||
|
||||
|
||||
%changelog
|
||||
|
||||
```
|
Reference in New Issue
Block a user