diff options
Diffstat (limited to 'macros.vagrant')
-rw-r--r-- | macros.vagrant | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/macros.vagrant b/macros.vagrant index 08df448..0868b11 100644 --- a/macros.vagrant +++ b/macros.vagrant @@ -1,3 +1,8 @@ +%vagrant_dir %{_datadir}/%{name} + +%vagrant_plugin_conf_dir %{_sharedstatedir}/%{name} +%vagrant_plugin_conf %{vagrant_plugin_conf_dir}/plugins.json + # Common locations for Vagrant plugin gems %vagrant_plugin_dir %{vagrant_dir}/gems %vagrant_plugin_instdir %{vagrant_plugin_dir}/gems/%{vagrant_plugin_name}-%{version} @@ -25,3 +30,18 @@ gem install \\\ --backtrace \\\ %{-n*}%{!?-n:%{vagrant_plugin_name}-%{version}.gem} \ %{nil} + +# Macros to (un)register Vagrant gem +%vagrant_plugin_register() \ +%{_bindir}/ruby -e ' \\\ +$LOAD_PATH.unshift "%{vagrant_dir}/lib"; \\\ +require "vagrant/plugin/manager"; \\\ +Vagrant::Plugin::StateFile.new(Pathname.new(File.expand_path "%{vagrant_plugin_conf}")).add_plugin "%1";' \ +%{nil} + +%vagrant_plugin_unregister() \ +%{_bindir}/ruby -e ' \\\ +$LOAD_PATH.unshift "%{vagrant_dir}/lib"; \\\ +require "vagrant/plugin/manager"; \\\ +Vagrant::Plugin::StateFile.new(Pathname.new(File.expand_path "%{vagrant_plugin_conf}")).remove_plugin "%1";' \ +%{nil} |