commit:     53a7376efa22aeee0473bd5d16cdefcc1ccb19ab
Author:     Guillaume Seren <guillaumeseren <AT> gmail <DOT> com>
AuthorDate: Wed Nov 29 21:07:50 2023 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Wed Jan 31 12:54:23 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=53a7376e

app-emulation/vagrant: Bump to 2.4.0

Closes: https://bugs.gentoo.org/916978
Signed-off-by: Guillaume Seren <guillaumeseren <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/34054
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-emulation/vagrant/Manifest             |   1 +
 app-emulation/vagrant/files/vagrant.in     |   2 +-
 app-emulation/vagrant/vagrant-2.4.0.ebuild | 122 +++++++++++++++++++++++++++++
 3 files changed, 124 insertions(+), 1 deletion(-)

diff --git a/app-emulation/vagrant/Manifest b/app-emulation/vagrant/Manifest
index 9f3c8b22cca7..ee40ff4269b4 100644
--- a/app-emulation/vagrant/Manifest
+++ b/app-emulation/vagrant/Manifest
@@ -1 +1,2 @@
 DIST vagrant-2.3.7.tar.gz 3296042 BLAKE2B 
720e16bed6f9088558f7a8a2af7925946c71d771fc732fd43fc277f160faa1d2c86bdb3eaab6ec0cf569e945a30593655f3551608f708ee74203392ba61ce11f
 SHA512 
a65b1c48fad6eb04fc0097dc7c8dc4e37467c5e6406d1d384a017b127704ebd6872cd0cc69ef38b393c98d6fd58c39c806e7ef439c2b55a15bf66c3647595cc2
+DIST vagrant-2.4.0.tar.gz 3334706 BLAKE2B 
62b720a83646e94c7608a2f8aa7acf985aea0a3532e0474aa45c229b054ea40a6e0b23ccdbfdbf7e27e3da9a4db5f57407656fe103ead0f5a98dc27dae5ebb57
 SHA512 
94e866b012303b65d33b72034f08305fc04c12be40aeb95247b786b53d14259b7b5062b372e3c87523390f0539848a0eafd45b28ad16a27badecd8888541243b

diff --git a/app-emulation/vagrant/files/vagrant.in 
b/app-emulation/vagrant/files/vagrant.in
index 0dfd12d10148..21d6c0bf3c82 100644
--- a/app-emulation/vagrant/files/vagrant.in
+++ b/app-emulation/vagrant/files/vagrant.in
@@ -4,7 +4,7 @@
 # Vagrant installation directory. This sets up proper environmental variables
 # so that everything loads and compiles to proper directories.
 
-for r in ruby32 ruby31 ruby30 ruby27 ruby26; do
+for r in ruby33 ruby32 ruby31 ruby30 ruby27 ruby26; do
   # not all ruby versions are guaranteed to be installed
   if ! command -v "${r}" >/dev/null 2>&1; then
     continue

diff --git a/app-emulation/vagrant/vagrant-2.4.0.ebuild 
b/app-emulation/vagrant/vagrant-2.4.0.ebuild
new file mode 100644
index 000000000000..225878aa2fc9
--- /dev/null
+++ b/app-emulation/vagrant/vagrant-2.4.0.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/vagrant/vagrant_ssl/extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+RUBY_FAKEGEM_GEMSPEC="vagrant.gemspec"
+RUBY_FAKEGEM_EXTRAINSTALL="keys plugins templates version.txt"
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST=test:unit
+RUBY_FAKEGEM_RECIPE_TEST=rake
+
+inherit bash-completion-r1 optfeature ruby-fakegem
+
+DESCRIPTION="A tool for building and distributing development environments"
+HOMEPAGE="https://vagrantup.com/";
+SRC_URI="https://github.com/hashicorp/vagrant/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       ${RDEPEND}
+       app-arch/libarchive
+       net-misc/curl
+"
+
+ruby_add_rdepend "
+       >=dev-ruby/bcrypt_pbkdf-1.1.0
+       >=dev-ruby/childprocess-4.1.0
+       >=dev-ruby/ed25519-1.3.0
+       dev-ruby/erubi
+       >=dev-ruby/googleapis-common-protos-types-1.3.0
+       >=dev-ruby/grpc-1.59.2
+       >=dev-ruby/hashicorp-checkpoint-0.1.5
+       >=dev-ruby/i18n-1.12:1
+       >=dev-ruby/listen-3.7
+       >=dev-ruby/log4r-1.1.9
+       <dev-ruby/log4r-1.1.11
+       >=dev-ruby/mime-types-3.3:*
+       >=dev-ruby/net-ftp-0.2.0
+       >=dev-ruby/net-ssh-7.0.0
+       >=dev-ruby/net-sftp-4.0.0
+       >=dev-ruby/net-scp-4.0.0
+       >=dev-ruby/rexml-3.2.0
+       >=dev-ruby/rgl-0.5.10
+       >=dev-ruby/rubyzip-2.3.2
+       >=dev-ruby/vagrant_cloud-3.1.0
+       >=dev-ruby/ipaddr-1.2.4
+"
+
+ruby_add_bdepend "
+       >=dev-ruby/rake-13.0.0
+       test? (
+               ~app-emulation/vagrant-${PV}
+               dev-ruby/fake_ftp
+               dev-ruby/rake-compiler
+               >=dev-ruby/rspec-3.11
+               >=dev-ruby/rspec-its-1.3.0
+               >=dev-ruby/webrick-1.7.0
+       )
+"
+
+all_ruby_prepare() {
+       # remove bundler support
+       sed -e '/[Bb]undler/ s:^:#:' \
+               -e '/extensiontask/ s:^:#:' \
+               -e '/ExtensionTask/,/^end/ s:^:#:' \
+               -i Rakefile || die
+       rm Gemfile || die
+       rm tasks/bundler.rake || die
+
+       sed -e ':rake\|rspec: s:~>:>=:' \
+               -e 
':bcrypt_pbkdf\|hashicorp-checkpoint\|i18n\|listen\|net-ssh\|net-scp\|net-sftp\|childprocess:
 s:~>:>=:' \
+               -e '/fake_ftp/ s:^#*:#:' \
+               -e '/wdm/ s:^#*:#:' \
+               -e '/winrm/ s:^#*:#:' \
+               -e '/rb-kqueue/ s:^#*:#:' \
+               -e '/ruby_dep/ s:^#*:#:' \
+               -i ${PN}.gemspec || die
+
+       sed -e "s/@VAGRANT_VERSION@/${PV}/g" "${FILESDIR}/${PN}.in" > "${PN}" 
|| die
+
+       sed -i -e 's/format documentation/format progress/' tasks/test.rake || 
die
+
+       # Avoid tests confused by the environment
+       rm -f test/unit/vagrant/util/env_test.rb || die
+
+       # Avoid tests for Windows-specific components
+       rm -rf test/unit/plugins/communicators/winrm || die
+       sed -e '/eager loads WinRM/askip "Windows component"' \
+               -e '/should return the specified communicator if given/askip 
"Windows component"' \
+               -i test/unit/vagrant/machine_test.rb || die
+       sed -e '/with winrm communicator/ s/context/xcontext/' \
+               -i test/unit/plugins/provisioners/ansible/provisioner_test.rb 
|| die
+}
+
+all_ruby_install() {
+       all_fakegem_install
+
+       newbashcomp contrib/bash/completion.sh ${PN}
+
+       # provide executable similar to upstream:
+       # 
https://github.com/hashicorp/vagrant-installers/blob/master/substrate/modules/vagrant_installer/templates/vagrant.erb
+       dobin "${PN}"
+
+       # directory for plugins.json
+       keepdir /var/lib/vagrant
+
+       insinto /usr/share/vim/vimfiles/syntax/
+       doins contrib/vim/vagrantfile.vim
+
+       optfeature_header "Optional emulation/container backends:"
+       optfeature "VirtualBox support" app-emulation/virtualbox
+       optfeature "Docker support" app-containers/docker
+}

Reply via email to