summaryrefslogtreecommitdiff
path: root/gnu/packages/virtualization.scm
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2023-08-06 17:56:41 +0200
committerHartmut Goebel <h.goebel@crazy-compilers.com>2025-09-23 16:36:14 +0200
commit34778811bb33548bcfd1bdeef3c2ed175c14c64f (patch)
treed23d20b9e71cc1de9a01af278f8c54c8e5cb2351 /gnu/packages/virtualization.scm
parent3ba037d9434b715d8f1c15243df920580691fbc3 (diff)
gnu: Add vagrant-reload.
* gnu/packages/virtualization.scm (vagrant-reload): New variable.
Diffstat (limited to 'gnu/packages/virtualization.scm')
-rw-r--r--gnu/packages/virtualization.scm52
1 files changed, 52 insertions, 0 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 8eba5c9e7e6..9a2ebde5181 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -2786,6 +2786,58 @@ managers and Linux distros.")
(home-page "https://github.com/fgrehm/vagrant-cachier")
(license license:expat)))
+(define-public vagrant-reload
+ (package
+ (name "vagrant-reload")
+ (version "0.0.1")
+ (source (origin
+ (method url-fetch)
+ (uri (rubygems-uri "vagrant-reload" version))
+ (sha256
+ (base32
+ "0smy0px20xgakcyki5hdbk3n63k9c6ychh5pvbannn1p4zjxa0xa"))))
+ (build-system ruby-build-system)
+ (arguments
+ (list
+ #:tests? #f ; has no tests, testing as described in the Readme requires
+ ; running vagrant, a provider and downloading a box
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-gemfile
+ (lambda _
+ (substitute* "Gemfile"
+ ((", :git.*") "\n"))))
+ (add-after 'install 'install-plugin.json
+ (lambda _
+ (let* ((plugins.d (string-append
+ #$output "/share/vagrant-plugins/plugins.d"))
+ (plugin.json (string-append
+ plugins.d "/" #$name ".json")))
+ (mkdir-p plugins.d)
+ #$(with-extensions (list guile-json-4)
+ #~(begin
+ (use-modules (json))
+ (call-with-output-file plugin.json
+ (lambda (port)
+ (scm->json
+ '((#$name
+ .
+ (("ruby_version"
+ . #$(package-version (this-package-input "ruby")))
+ ("vagrant_version"
+ . #$(package-version (this-package-input "vagrant")))
+ ("gem_version" . "")
+ ("require" . "")
+ ("installed_gem_version" . #$version)
+ ("sources" . #()))))
+ port)))))))))))
+ (inputs (list ruby vagrant))
+ (synopsis "Reload a Vagrant VM as a provisioning step")
+ (description "This Vagrant plugin enables reloading a Vagrant VM as a
+provisioning step.")
+ (home-page "http://www.vagrantup.com")
+ (license license:expat)))
+
(define-public vagrant-vai
(package
(name "vagrant-vai")