uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead

https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948
this can do it nicely.

Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,342 @@
From dc7156d8951242231cfd9142b3d5628815dc6589 Mon Sep 17 00:00:00 2001
From: Maximilian Bosch <maximilian@mbosch.me>
Date: Wed, 31 Mar 2021 14:30:01 +0200
Subject: [PATCH] Revert "Merge pull request #12225 from
chrisroberts/resolution-isolation"
This reverts commit 8a69d0c4dae035a4b1aa789bc4ec3db69c210df2, reversing
changes made to 5dd0a8c8acc36b654c13a5102e4327eedf1858f2.
-----
Rationale: NixOS-specific patch. The changes in here break our current
implementation of declarative plugins (only `vagrant-libvirt` atm).
---
bin/vagrant | 28 +--------------
lib/vagrant.rb | 2 +-
lib/vagrant/bundler.rb | 17 +++------
lib/vagrant/errors.rb | 12 -------
lib/vagrant/plugin/manager.rb | 22 ++----------
templates/locales/en.yml | 23 ++----------
test/unit/bin/vagrant_test.rb | 1 -
test/unit/vagrant/bundler_test.rb | 58 ++++++++++++++-----------------
8 files changed, 39 insertions(+), 124 deletions(-)
diff --git a/bin/vagrant b/bin/vagrant
index c019f30ff..ba7e40076 100755
--- a/bin/vagrant
+++ b/bin/vagrant
@@ -23,9 +23,9 @@ if idx = argv.index("--")
argv = argv.slice(0, idx)
end
-require_relative "../lib/vagrant/version"
# Fast path the version of Vagrant
if argv.include?("-v") || argv.include?("--version")
+ require_relative "../lib/vagrant/version"
puts "Vagrant #{Vagrant::VERSION}"
exit 0
end
@@ -82,29 +82,6 @@ end
$stdout.sync = true
$stderr.sync = true
-# Before we start activate all our dependencies
-# so we can provide correct resolutions later
-builtin_specs = []
-
-vagrant_spec = Gem::Specification.find_all_by_name("vagrant").detect do |spec|
- spec.version == Gem::Version.new(Vagrant::VERSION)
-end
-
-dep_activator = proc do |spec|
- spec.runtime_dependencies.each do |dep|
- gem(dep.name, *dep.requirement.as_list)
- dep_spec = Gem::Specification.find_all_by_name(dep.name).detect(&:activated?)
- if dep_spec
- builtin_specs << dep_spec
- dep_activator.call(dep_spec)
- end
- end
-end
-
-if vagrant_spec
- dep_activator.call(vagrant_spec)
-end
-
env = nil
begin
require 'log4r'
@@ -114,9 +91,6 @@ begin
require 'vagrant/util/platform'
require 'vagrant/util/experimental'
- # Set our list of builtin specs
- Vagrant::Bundler.instance.builtin_specs = builtin_specs
-
# Schedule the cleanup of things
at_exit(&Vagrant::Bundler.instance.method(:deinit))
diff --git a/lib/vagrant.rb b/lib/vagrant.rb
index f3dcba0bc..d696bdff8 100644
--- a/lib/vagrant.rb
+++ b/lib/vagrant.rb
@@ -81,7 +81,7 @@ if ENV["VAGRANT_LOG"] && ENV["VAGRANT_LOG"] != ""
# See https://github.com/rest-client/rest-client/issues/34#issuecomment-290858
# for more information
class VagrantLogger < Log4r::Logger
- def << msg
+ def << (msg)
debug(msg.strip)
end
end
diff --git a/lib/vagrant/bundler.rb b/lib/vagrant/bundler.rb
index eb2caabb0..d75f54362 100644
--- a/lib/vagrant/bundler.rb
+++ b/lib/vagrant/bundler.rb
@@ -189,11 +189,8 @@ module Vagrant
attr_reader :env_plugin_gem_path
# @return [Pathname] Vagrant environment data path
attr_reader :environment_data_path
- # @return [Array<Gem::Specification>, nil] List of builtin specs
- attr_accessor :builtin_specs
def initialize
- @builtin_specs = []
@plugin_gem_path = Vagrant.user_data_path.join("gems", RUBY_VERSION).freeze
@logger = Log4r::Logger.new("vagrant::bundler")
end
@@ -290,6 +287,7 @@ module Vagrant
# Never allow dependencies to be remotely satisfied during init
request_set.remote = false
+ repair_result = nil
begin
@logger.debug("resolving solution from available specification set")
# Resolve the request set to ensure proper activation order
@@ -652,6 +650,7 @@ module Vagrant
self_spec.activate
@logger.info("Activated vagrant specification version - #{self_spec.version}")
end
+ self_spec.runtime_dependencies.each { |d| gem d.name, *d.requirement.as_list }
# discover all the gems we have available
list = {}
if Gem.respond_to?(:default_specifications_dir)
@@ -660,16 +659,10 @@ module Vagrant
spec_dir = Gem::Specification.default_specifications_dir
end
directories = [spec_dir]
- if Vagrant.in_bundler?
- Gem::Specification.find_all{true}.each do |spec|
- list[spec.full_name] = spec
- end
- else
- builtin_specs.each do |spec|
- list[spec.full_name] = spec
- end
+ Gem::Specification.find_all{true}.each do |spec|
+ list[spec.full_name] = spec
end
- if Vagrant.in_installer?
+ if(!Object.const_defined?(:Bundler))
directories += Gem::Specification.dirs.find_all do |path|
!path.start_with?(Gem.user_dir)
end
diff --git a/lib/vagrant/errors.rb b/lib/vagrant/errors.rb
index 5cb861c06..782615bc4 100644
--- a/lib/vagrant/errors.rb
+++ b/lib/vagrant/errors.rb
@@ -636,18 +636,6 @@ module Vagrant
error_key(:provisioner_winrm_unsupported)
end
- class PluginNeedsDeveloperTools < VagrantError
- error_key(:plugin_needs_developer_tools)
- end
-
- class PluginMissingLibrary < VagrantError
- error_key(:plugin_missing_library)
- end
-
- class PluginMissingRubyDev < VagrantError
- error_key(:plugin_missing_ruby_dev)
- end
-
class PluginGemNotFound < VagrantError
error_key(:plugin_gem_not_found)
end
diff --git a/lib/vagrant/plugin/manager.rb b/lib/vagrant/plugin/manager.rb
index b73f07f9c..9058e68b3 100644
--- a/lib/vagrant/plugin/manager.rb
+++ b/lib/vagrant/plugin/manager.rb
@@ -179,26 +179,8 @@ module Vagrant
result
rescue Gem::GemNotFoundException
raise Errors::PluginGemNotFound, name: name
- rescue Gem::Exception => err
- @logger.warn("Failed to install plugin: #{err}")
- @logger.debug("#{err.class}: #{err}\n#{err.backtrace.join("\n")}")
- # Try and determine a cause for the failure
- case err.message
- when /install development tools first/
- raise Errors::PluginNeedsDeveloperTools
- when /library not found in default locations/
- lib = err.message.match(/(\w+) library not found in default locations/)
- if lib.nil?
- raise Errors::BundlerError, message: err.message
- end
- raise Errors::PluginMissingLibrary,
- library: lib.captures.first,
- name: name
- when /find header files for ruby/
- raise Errors::PluginMissingRubyDev
- else
- raise Errors::BundlerError, message: err.message
- end
+ rescue Gem::Exception => e
+ raise Errors::BundlerError, message: e.to_s
end
# Uninstalls the plugin with the given name.
diff --git a/templates/locales/en.yml b/templates/locales/en.yml
index edae9b477..782904f49 100644
--- a/templates/locales/en.yml
+++ b/templates/locales/en.yml
@@ -794,9 +794,9 @@ en:
matching this provider. For example, if you're using VirtualBox,
the clone environment must also be using VirtualBox.
cloud_init_not_found: |-
- cloud-init is not found. Please ensure that cloud-init is installed and
+ cloud-init is not found. Please ensure that cloud-init is installed and
available on path for guest '%{guest_name}'.
- cloud_init_command_failed: |-
+ cloud_init_command_failed: |-
cloud init command '%{cmd}' failed on guest '%{guest_name}'.
command_deprecated: |-
The command 'vagrant %{name}' has been deprecated and is no longer functional
@@ -1238,23 +1238,6 @@ en:
following command:
vagrant plugin install --local
- plugin_needs_developer_tools: |-
- Vagrant failed to install the requested plugin because development tools
- are required for installation but are not currently installed on this
- machine. Please install development tools and then try this command
- again.
- plugin_missing_library: |-
- Vagrant failed to install the requested plugin because it depends
- on a library which is not currently installed on this system. The
- following library is required by the '%{name}' plugin:
-
- %{library}
-
- Please install the library and then run the command again.
- plugin_missing_ruby_dev: |-
- Vagrant failed to install the requested plugin because the Ruby header
- files could not be found. Install the ruby development package for your
- system and then run this command again.
powershell_not_found: |-
Failed to locate the powershell executable on the available PATH. Please
ensure powershell is installed and available on the local PATH, then
@@ -3015,7 +2998,7 @@ en:
pushes:
file:
no_destination: "File destination must be specified."
-
+
autocomplete:
installed: |-
Autocomplete installed at paths:
diff --git a/test/unit/bin/vagrant_test.rb b/test/unit/bin/vagrant_test.rb
index dbbd52112..bc11309aa 100644
--- a/test/unit/bin/vagrant_test.rb
+++ b/test/unit/bin/vagrant_test.rb
@@ -30,7 +30,6 @@ describe "vagrant bin" do
allow(Kernel).to receive(:exit)
allow(Vagrant::Environment).to receive(:new).and_return(env)
allow(Vagrant).to receive(:in_installer?).and_return(true)
- allow(self).to receive(:require_relative)
end
after { expect(run_vagrant).to eq(exit_code) }
diff --git a/test/unit/vagrant/bundler_test.rb b/test/unit/vagrant/bundler_test.rb
index 69f425c66..00cedc021 100644
--- a/test/unit/vagrant/bundler_test.rb
+++ b/test/unit/vagrant/bundler_test.rb
@@ -778,46 +778,42 @@ describe Vagrant::Bundler do
end
end
- context "when bundler is not defined" do
- before { expect(Vagrant).to receive(:in_bundler?).and_return(false) }
+ context "when run time dependencies are defined" do
+ let(:vagrant_dep_specs) { [double("spec", name: "vagrant-dep", requirement: double("spec-req", as_list: []))] }
- context "when running inside the installer" do
- before { expect(Vagrant).to receive(:in_installer?).and_return(true) }
+ it "should call #gem to activate the dependencies" do
+ expect(subject).to receive(:gem).with("vagrant-dep", any_args)
+ subject.send(:vagrant_internal_specs)
+ end
+ end
- it "should load gem specification directories" do
- expect(Gem::Specification).to receive(:dirs).and_return(spec_dirs)
- subject.send(:vagrant_internal_specs)
- end
+ context "when bundler is not defined" do
+ before { expect(Object).to receive(:const_defined?).with(:Bundler).and_return(false) }
- context "when checking paths" do
- let(:spec_dirs) { [double("spec-dir", start_with?: in_user_dir)] }
- let(:in_user_dir) { true }
- let(:user_dir) { double("user-dir") }
+ it "should load gem specification directories" do
+ expect(Gem::Specification).to receive(:dirs).and_return(spec_dirs)
+ subject.send(:vagrant_internal_specs)
+ end
- before { allow(Gem).to receive(:user_dir).and_return(user_dir) }
+ context "when checking paths" do
+ let(:spec_dirs) { [double("spec-dir", start_with?: in_user_dir)] }
+ let(:in_user_dir) { true }
+ let(:user_dir) { double("user-dir") }
- it "should check if path is within local user directory" do
- expect(spec_dirs.first).to receive(:start_with?).with(user_dir).and_return(false)
- subject.send(:vagrant_internal_specs)
- end
-
- context "when path is not within user directory" do
- let(:in_user_dir) { false }
+ before { allow(Gem).to receive(:user_dir).and_return(user_dir) }
- it "should use path when loading specs" do
- expect(Gem::Specification).to receive(:each_spec) { |arg| expect(arg).to include(spec_dirs.first) }
- subject.send(:vagrant_internal_specs)
- end
- end
+ it "should check if path is within local user directory" do
+ expect(spec_dirs.first).to receive(:start_with?).with(user_dir).and_return(false)
+ subject.send(:vagrant_internal_specs)
end
- end
- context "when running outside the installer" do
- before { expect(Vagrant).to receive(:in_installer?).and_return(false) }
+ context "when path is not within user directory" do
+ let(:in_user_dir) { false }
- it "should not load gem specification directories" do
- expect(Gem::Specification).not_to receive(:dirs)
- subject.send(:vagrant_internal_specs)
+ it "should use path when loading specs" do
+ expect(Gem::Specification).to receive(:each_spec) { |arg| expect(arg).to include(spec_dirs.first) }
+ subject.send(:vagrant_internal_specs)
+ end
end
end
end
--
2.29.3

View file

@ -0,0 +1,93 @@
From: Antonio Terceiro <terceiro@debian.org>
Date: Wed, 27 May 2015 09:36:17 -0300
Subject: Support system-installed plugins
Source: https://salsa.debian.org/ruby-team/vagrant/-/blob/9d86f222/debian/patches/0004-Support-system-installed-plugins.patch
Plugins must be installed as regular Ruby libraries, and they must
contain /usr/share/vagrant-plugins/plugins.d/$PLUGINNAME.json with the
following content:
{
"${PLUGINNAME}": {
"ruby_version":"$(ruby -e 'puts RUBY_VERSION')",
"vagrant_version":"$(cat /usr/share/vagrant/version.txt)",
"gem_version":"",
"require":"",
"sources":[]
}
}
---
lib/vagrant/plugin/manager.rb | 4 ++--
lib/vagrant/plugin/state_file.rb | 22 +++++++++++++++++++++-
2 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/lib/vagrant/plugin/manager.rb b/lib/vagrant/plugin/manager.rb
index 9058e68..2772131 100644
--- a/lib/vagrant/plugin/manager.rb
+++ b/lib/vagrant/plugin/manager.rb
@@ -18,7 +18,7 @@ module Vagrant
# Returns the path to the [StateFile] for system plugins.
def self.system_plugins_file
- dir = Vagrant.installer_embedded_dir
+ dir = '@system_plugin_dir@'
return nil if !dir
Pathname.new(dir).join("plugins.json")
end
@@ -38,7 +38,7 @@ module Vagrant
system_path = self.class.system_plugins_file
@system_file = nil
- @system_file = StateFile.new(system_path) if system_path && system_path.file?
+ @system_file = StateFile.new(system_path, true) if system_path && system_path.file?
@local_file = nil
@globalized = @localized = false
diff --git a/lib/vagrant/plugin/state_file.rb b/lib/vagrant/plugin/state_file.rb
index c6872d4..935d431 100644
--- a/lib/vagrant/plugin/state_file.rb
+++ b/lib/vagrant/plugin/state_file.rb
@@ -11,8 +11,9 @@ module Vagrant
# @return [Pathname] path to file
attr_reader :path
- def initialize(path)
+ def initialize(path, system = false)
@path = path
+ @system = system
@data = {}
if @path.exist?
@@ -28,6 +29,21 @@ module Vagrant
@data["version"] ||= "1"
@data["installed"] ||= {}
+ load_extra_plugins
+ end
+
+ def load_extra_plugins
+ extra_plugins = Dir.glob(@path.dirname.join('plugins.d', '*.json'))
+ extra_plugins.each do |filename|
+ json = File.read(filename)
+ begin
+ plugin_data = JSON.parse(json)
+ @data["installed"].merge!(plugin_data)
+ rescue JSON::ParserError => e
+ raise Vagrant::Errors::PluginStateFileParseError,
+ path: filename, message: e.message
+ end
+ end
end
# Add a plugin that is installed to the state file.
@@ -107,6 +123,10 @@ module Vagrant
f.close
FileUtils.mv(f.path, @path)
end
+ rescue Errno::EACCES
+ # Ignore permission denied against system-installed plugins; regular
+ # users are not supposed to write there.
+ raise unless @system
end
protected

View file

@ -0,0 +1,118 @@
{ stdenv, lib, fetchurl, buildRubyGem, bundlerEnv, ruby, libarchive
, libguestfs, qemu, writeText, withLibvirt ? stdenv.isLinux
}:
let
# NOTE: bumping the version and updating the hash is insufficient;
# you must use bundix to generate a new gemset.nix in the Vagrant source.
version = "2.2.19";
url = "https://github.com/hashicorp/vagrant/archive/v${version}.tar.gz";
sha256 = "sha256-Tw5rHUZuJt6taCxNSEPo9koBLrpL6RUGrmxtNNPZyPk=";
deps = bundlerEnv rec {
name = "${pname}-${version}";
pname = "vagrant";
inherit version;
inherit ruby;
gemfile = writeText "Gemfile" "";
lockfile = writeText "Gemfile.lock" "";
gemset = lib.recursiveUpdate (import ./gemset.nix) ({
vagrant = {
source = {
type = "url";
inherit url sha256;
};
inherit version;
};
} // lib.optionalAttrs withLibvirt (import ./gemset_libvirt.nix));
# This replaces the gem symlinks with directories, resolving this
# error when running vagrant (I have no idea why):
# /nix/store/p4hrycs0zaa9x0gsqylbk577ppnryixr-vagrant-2.2.6/lib/ruby/gems/2.6.0/gems/i18n-1.1.1/lib/i18n/config.rb:6:in `<module:I18n>': uninitialized constant I18n::Config (NameError)
postBuild = ''
for gem in "$out"/lib/ruby/gems/*/gems/*; do
cp -a "$gem/" "$gem.new"
rm "$gem"
# needed on macOS, otherwise the mv yields permission denied
chmod +w "$gem.new"
mv "$gem.new" "$gem"
done
'';
};
in buildRubyGem rec {
name = "${gemName}-${version}";
gemName = "vagrant";
inherit version;
doInstallCheck = true;
dontBuild = false;
src = fetchurl { inherit url sha256; };
patches = [
./unofficial-installation-nowarn.patch
./use-system-bundler-version.patch
./0004-Support-system-installed-plugins.patch
./0001-Revert-Merge-pull-request-12225-from-chrisroberts-re.patch
];
postPatch = ''
substituteInPlace lib/vagrant/plugin/manager.rb --subst-var-by \
system_plugin_dir "$out/vagrant-plugins"
'';
# PATH additions:
# - libarchive: Make `bsdtar` available for extracting downloaded boxes
# withLibvirt only:
# - libguestfs: Make 'virt-sysprep' available for 'vagrant package'
# - qemu: Make 'qemu-img' available for 'vagrant package'
postInstall =
let
pathAdditions = lib.makeSearchPath "bin"
(map (x: lib.getBin x) ([
libarchive
] ++ lib.optionals withLibvirt [
libguestfs
qemu
]));
in ''
wrapProgram "$out/bin/vagrant" \
--set GEM_PATH "${deps}/lib/ruby/gems/${ruby.version.libDir}" \
--prefix PATH ':' ${pathAdditions}
mkdir -p "$out/vagrant-plugins/plugins.d"
echo '{}' > "$out/vagrant-plugins/plugins.json"
mkdir -p $out/share/bash-completion/completions/
cp -av contrib/bash/completion.sh $out/share/bash-completion/completions/vagrant
'' +
lib.optionalString withLibvirt ''
substitute ${./vagrant-libvirt.json.in} $out/vagrant-plugins/plugins.d/vagrant-libvirt.json \
--subst-var-by ruby_version ${ruby.version} \
--subst-var-by vagrant_version ${version}
'';
installCheckPhase = ''
HOME="$(mktemp -d)" $out/bin/vagrant init --output - > /dev/null
'';
# `patchShebangsAuto` patches this one script which is intended to run
# on foreign systems.
postFixup = ''
sed -i -e '1c#!/bin/sh -' \
$out/lib/ruby/gems/*/gems/vagrant-*/plugins/provisioners/salt/bootstrap-salt.sh
'';
passthru = {
inherit ruby deps;
};
meta = with lib; {
description = "A tool for building complete development environments";
homepage = "https://www.vagrantup.com/";
license = licenses.mit;
maintainers = with maintainers; [ ma27 ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -0,0 +1,366 @@
{
bcrypt_pbkdf = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ndamfaivnkhc6hy0yqyk2gkwr6f3bz6216lh74hsiiyk3axz445";
type = "gem";
};
version = "1.1.0";
};
builder = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
type = "gem";
};
version = "3.2.4";
};
childprocess = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1lvcp8bsd35g57f7wz4jigcw2sryzzwrpcgjwwf3chmjrjcww5in";
type = "gem";
};
version = "4.1.0";
};
concurrent-ruby = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0nwad3211p7yv9sda31jmbyw6sdafzmdi2i2niaz6f0wk5nq9h0f";
type = "gem";
};
version = "1.1.9";
};
ed25519 = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1f5kr8za7hvla38fc0n9jiv55iq62k5bzclsa5kdb14l3r4w6qnw";
type = "gem";
};
version = "1.2.4";
};
erubi = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "09l8lz3j00m898li0yfsnb6ihc63rdvhw3k5xczna5zrjk104f2l";
type = "gem";
};
version = "1.10.0";
};
excon = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "15yrwawhvkjvfg0dsf8z81876ddj6161q0wh5s7pw4sim8z8pspr";
type = "gem";
};
version = "0.88.0";
};
ffi = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ssxcywmb3flxsjdg13is6k01807zgzasdhj4j48dm7ac59cmksn";
type = "gem";
};
version = "1.15.4";
};
gssapi = {
dependencies = ["ffi"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1qdfhj12aq8v0y961v4xv96a1y2z80h3xhvzrs9vsfgf884g6765";
type = "gem";
};
version = "1.3.1";
};
gyoku = {
dependencies = ["builder"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1wn0sl14396g5lyvp8sjmcb1hw9rbyi89gxng91r7w4df4jwiidh";
type = "gem";
};
version = "1.3.1";
};
hashicorp-checkpoint = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1z6mwzvd7p2wqhmk07dwrhvm0ncgqm7pxn0pr2k025rwsspp9bsd";
type = "gem";
};
version = "0.1.5";
};
httpclient = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
type = "gem";
};
version = "2.8.3";
};
i18n = {
dependencies = ["concurrent-ruby"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0vdd1kii40qhbr9n8qx71k2gskq6rkl8ygy8hw5hfj8bb5a364xf";
type = "gem";
};
version = "1.8.11";
};
listen = {
dependencies = ["rb-fsevent" "rb-inotify"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ncfhdkjiwq9l1pm87ax2pa20kz2j0dz56vi74cnr5a6cfk0qb5p";
type = "gem";
};
version = "3.7.0";
};
little-plugger = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym";
type = "gem";
};
version = "1.1.4";
};
log4r = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ri90q0frfmigkirqv5ihyrj59xm8pq5zcmf156cbdv4r4l2jicv";
type = "gem";
};
version = "1.1.10";
};
logging = {
dependencies = ["little-plugger" "multi_json"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pkmhcxi8lp74bq5gz9lxrvaiv5w0745kk7s4bw2b1x07qqri0n9";
type = "gem";
};
version = "2.3.0";
};
mime-types = {
dependencies = ["mime-types-data"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
type = "gem";
};
version = "3.3.1";
};
mime-types-data = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1z5wvk6qi4ws1kjh7xn1rfirqw5m72bwvqacck1fjpbh33pcrwxv";
type = "gem";
};
version = "3.2021.0901";
};
multi_json = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
type = "gem";
};
version = "1.15.0";
};
net-scp = {
dependencies = ["net-ssh"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0b4h3ip8d1gkrc0znnw54hbxillk73mdnaf5pz330lmrcl1wiilg";
type = "gem";
};
version = "3.0.0";
};
net-sftp = {
dependencies = ["net-ssh"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "185vsybznqgqbb4i2qnxvf1gam8lb634nqcrq7r3i2zy1g6xd8mi";
type = "gem";
};
version = "3.0.0";
};
net-ssh = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0jp3jgcn8cij407xx9ldb5h9c6jv13jc4cf6kk2idclz43ww21c9";
type = "gem";
};
version = "6.1.0";
};
nori = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "066wc774a2zp4vrq3k7k8p0fhv30ymqmxma1jj7yg5735zls8agn";
type = "gem";
};
version = "2.6.0";
};
rb-fsevent = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1qsx9c4jr11vr3a9s5j83avczx9qn9rjaf32gxpc2v451hvbc0is";
type = "gem";
};
version = "0.11.0";
};
rb-inotify = {
dependencies = ["ffi"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
type = "gem";
};
version = "0.10.1";
};
rb-kqueue = {
dependencies = ["ffi"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0wpn2m28qs7s95nqg67dn5vpyh05q7d0w6sm4svhflm41cd0akr4";
type = "gem";
};
version = "0.2.7";
};
rexml = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
type = "gem";
};
version = "3.2.5";
};
rubyntlm = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0b8hczk8hysv53ncsqzx4q6kma5gy5lqc7s5yx8h64x3vdb18cjv";
type = "gem";
};
version = "0.6.3";
};
rubyzip = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
type = "gem";
};
version = "2.3.2";
};
vagrant_cloud = {
dependencies = ["excon" "log4r" "rexml"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0np0d8rjca130si5iaxasbqmfbbx4l3kd9mxdsa3p5mqiia7za3b";
type = "gem";
};
version = "3.0.5";
};
wdm = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0x5l2pn4x92734k6i2wcjbn2klmwgkiqaajvxadh35k74dgnyh18";
type = "gem";
};
version = "0.1.1";
};
winrm = {
dependencies = ["builder" "erubi" "gssapi" "gyoku" "httpclient" "logging" "nori" "rubyntlm"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0nxf6a47d1xf1nvi7rbfbzjyyjhz0iakrnrsr2hj6y24a381sd8i";
type = "gem";
};
version = "2.3.6";
};
winrm-elevated = {
dependencies = ["erubi" "winrm" "winrm-fs"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1lmlaii8qapn84wxdg5d82gbailracgk67d0qsnbdnffcg8kswzd";
type = "gem";
};
version = "1.2.3";
};
winrm-fs = {
dependencies = ["erubi" "logging" "rubyzip" "winrm"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0gb91k6s1yjqw387x4w1nkpnxblq3pjdqckayl0qvz5n3ygdsb0d";
type = "gem";
};
version = "1.3.5";
};
}

View file

@ -0,0 +1,179 @@
{
builder = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
type = "gem";
};
version = "3.2.4";
};
excon = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1rv2hq29lx2337214a1p2qy70fi77ch6p0p77nw9h6x84q028qr0";
type = "gem";
};
version = "0.92.3";
};
fog-core = {
dependencies = ["builder" "excon" "formatador" "mime-types"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "06m6hxq8vspx9h9bgc2s19m56jzasvl45vblrfv1q5h1qg1k6amw";
type = "gem";
};
version = "2.3.0";
};
fog-json = {
dependencies = ["fog-core" "multi_json"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zj8llzc119zafbmfa4ai3z5s7c4vp9akfs0f9l2piyvcarmlkyx";
type = "gem";
};
version = "1.2.0";
};
fog-libvirt = {
dependencies = ["fog-core" "fog-json" "fog-xml" "json" "ruby-libvirt"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1s8b3bsajwjyrjs53h0nrfrpzzgi8igsrslprhr6fgl80ig3plld";
type = "gem";
};
version = "0.9.0";
};
fog-xml = {
dependencies = ["fog-core" "nokogiri"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1vyyb2429xqzys39xyk2r3fal80qqn397aj2kqsjrgg2y6m59i41";
type = "gem";
};
version = "0.1.4";
};
formatador = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1l06bv4avphbdmr1y4g0rqlczr38k6r65b3zghrbj2ynyhm3xqjl";
type = "gem";
};
version = "1.1.0";
};
json = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1z9grvjyfz16ag55hg522d3q4dh07hf391sf9s96npc0vfi85xkz";
type = "gem";
};
version = "2.6.1";
};
mime-types = {
dependencies = ["mime-types-data"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ipw892jbksbxxcrlx9g5ljq60qx47pm24ywgfbyjskbcl78pkvb";
type = "gem";
};
version = "3.4.1";
};
mime-types-data = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "003gd7mcay800k2q4pb2zn8lwwgci4bhi42v2jvlidm8ksx03i6q";
type = "gem";
};
version = "3.2022.0105";
};
mini_portile2 = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
type = "gem";
};
version = "2.8.0";
};
multi_json = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pb1g1y3dsiahavspyzkdy39j4q377009f6ix0bh1ag4nqw43l0z";
type = "gem";
};
version = "1.15.0";
};
nokogiri = {
dependencies = ["mini_portile2" "racc"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "11w59ga9324yx6339dgsflz3dsqq2mky1qqdwcg6wi5s1bf2yldi";
type = "gem";
};
version = "1.13.6";
};
racc = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0la56m0z26j3mfn1a9lf2l03qx1xifanndf9p3vx1azf6sqy7v9d";
type = "gem";
};
version = "1.6.0";
};
rexml = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
type = "gem";
};
version = "3.2.5";
};
ruby-libvirt = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0rnmbfhdz270fky0cm8w1i73gkrnlf3s1hdkm5yxjkdbvapwvjsd";
type = "gem";
};
version = "0.8.0";
};
vagrant-libvirt = {
dependencies = ["fog-core" "fog-libvirt" "nokogiri" "rexml"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1j31y6sjhslj5yr0ssvb36ngm7prfsbdfj6131757jl0l0ri8pyv";
type = "gem";
};
version = "0.8.2";
};
}

View file

@ -0,0 +1,16 @@
diff --git a/bin/vagrant b/bin/vagrant
index 0e6abdc..cb36e9c 100755
--- a/bin/vagrant
+++ b/bin/vagrant
@@ -155,11 +155,6 @@ begin
end
end
- if !Vagrant.in_installer? && !Vagrant.very_quiet?
- # If we're not in the installer, warn.
- env.ui.warn(I18n.t("vagrant.general.not_in_installer") + "\n", prefix: false)
- end
-
# Acceptable experimental flag values include:
#
# Unset - Disables experimental features

View file

@ -0,0 +1,13 @@
diff --git a/lib/vagrant/bundler.rb b/lib/vagrant/bundler.rb
index 336ac1e05..1bfd84c0d 100644
--- a/lib/vagrant/bundler.rb
+++ b/lib/vagrant/bundler.rb
@@ -470,7 +470,7 @@ module Vagrant
source_list = {}
system_plugins = plugins.map do |plugin_name, plugin_info|
plugin_name if plugin_info["system"]
- end.compact
+ end.compact << "bundler"
installer_set = VagrantSet.new(:both)
installer_set.system_plugins = system_plugins

View file

@ -0,0 +1,9 @@
{
"vagrant-libvirt": {
"ruby_version":"@ruby_version@",
"vagrant_version":"@vagrant_version@",
"gem_version":"",
"require":"",
"sources":[]
}
}