vagrant-vbguest 0.3.2 → 0.3.3.a

Sign up to get free protection for your applications and to get access to all the features.
data/Readme.md CHANGED
@@ -1,68 +1,156 @@
1
1
  # vagrant-vbguest
2
2
 
3
- `vagrant-vbguest` is a [Vagrant](http://vagrantup.com) plugin wich automatically installes the host's VirtualBox Guest Additions on the guest system.
3
+ *vagrant-vbguest* is a [Vagrant](http://vagrantup.com) plugin which automatically installs the host's VirtualBox Guest Additions on the guest system.
4
4
 
5
5
  ## Installation
6
6
 
7
7
  Requires vagrant 0.9.4 or later (including 1.0)
8
- Since vagrant v1.0.0 the prefered installation method for vagrant is using the provided packages or installers.
8
+ Since vagrant v1.0.0 the preferred installation method for vagrant is using the provided packages or installers.
9
9
  If you installed vagrant that way, you need to use vagrant's gem wrapper:
10
10
 
11
- vagrant gem install vagrant-vbguest
11
+ ```bash
12
+ $ vagrant gem install vagrant-vbguest
13
+ ```
12
14
 
13
- If you installed vagrant using RubyGems simply:
15
+ If you installed vagrant using RubyGems, use:
14
16
 
15
- gem install vagrant-vbguest
17
+ ```bash
18
+ $ gem install vagrant-vbguest
19
+ ```
16
20
 
17
21
  Compatibly for vagrant 0.8 is provided by version 0.0.3 (which lacks a bunch of new options)
18
22
 
19
23
  ## Configuration / Usage
20
24
 
21
- If you're lucky, `vagrant-vbguest` does not require any configurations.
25
+ If you're lucky, *vagrant-vbguest* does not require any configurations.
22
26
  However, here is an example for your `Vagrantfile`:
23
27
 
24
- Vagrant::Config.run do |config|
25
- # we will try to autodetect this path.
26
- # However, if we cannot or you have a special one you may pass it like:
27
- # config.vbguest.iso_path = "#{ENV['HOME']}/Downloads/VBoxGuestAdditions.iso"
28
- # or
29
- # config.vbguest.iso_path = "http://company.server/VirtualBox/$VBOX_VERSION/VBoxGuestAdditions.iso"
30
-
31
- # set auto_update to false, if do NOT want to check the correct additions
32
- # version when booting this machine
33
- config.vbguest.auto_update = false
34
-
35
- # do NOT download the iso file from a webserver
36
- config.vbguest.no_remote = true
37
- end
38
-
28
+ ```ruby
29
+ Vagrant::Config.run do |config|
30
+ # we will try to autodetect this path.
31
+ # However, if we cannot or you have a special one you may pass it like:
32
+ # config.vbguest.iso_path = "#{ENV['HOME']}/Downloads/VBoxGuestAdditions.iso"
33
+ # or
34
+ # config.vbguest.iso_path = "http://company.server/VirtualBox/$VBOX_VERSION/VBoxGuestAdditions.iso"
35
+
36
+ # set auto_update to false, if do NOT want to check the correct additions
37
+ # version when booting this machine
38
+ config.vbguest.auto_update = false
39
+
40
+ # do NOT download the iso file from a webserver
41
+ config.vbguest.no_remote = true
42
+ end
43
+ ```
44
+
39
45
  ### Config options
40
46
 
41
47
  * `iso_path` : The full path or URL to the VBoxGuestAdditions.iso file. <br/>
42
48
  The `iso_path` may contain the optional placeholder `$VBOX_VERSION` for the detected version (e.g. `4.1.8`).
43
49
  The URI for the actual iso download reads: `http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso`<br/>
44
50
  vbguest will try to autodetect the best option for your system. WTF? see below.
45
- * `auto_update` (Boolean, dafault: `true`) : Whether to check the correct additions version on each start (where start is _not_ resuming a box).
51
+ * `auto_update` (Boolean, default: `true`) : Whether to check the correct additions version on each start (where start is _not_ resuming a box).
46
52
  * `no_install` (Boolean, default: `false`) : Whether to check the correct additions version only. This will warn you about version mis-matches, but will not try to install anything.
47
53
  * `no_remote` (Boolean, default: `false`) : Whether to _not_ download the iso file from a remote location. This includes any `http` location!
48
54
 
55
+
56
+ ### Running as a middleware
57
+
58
+ Running as a middleware will is the default way using *vagrant-vbguest*.
59
+ It will run automatically right after the box started. This is each time the box boots, i.e. `vagrant up` or `vagrant reload`.
60
+ It won't run on `vagrant resume` (or `vagrant up` a suspended box) to save you some time resuming a box.
61
+
62
+ You may switch off the middleware by setting the vm's config `vbguest.auto_update` to `false`.
63
+ This is a per box settings. On multi vm environments you need to set that for each vm.
64
+
65
+ When *vagrant-vbguest* is running it will provide you some logs:
66
+
67
+ ...
68
+ [default] Booting VM...
69
+ [default] Waiting for VM to boot. This can take a few minutes.
70
+ [default] VM booted and ready for use!
71
+ [default] Installing Virtualbox Guest Additions 4.1.14 - guest's version is 4.1.12
72
+ [default] Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
73
+ [default] Copy installer file setup_debian.sh into the box /tmp/install_vbguest.sh
74
+ stdin: is not a tty
75
+ Reading package lists...
76
+ Building dependency tree...
77
+ Reading state information...
78
+ linux-headers-2.6.32-30-server is already the newest version.
79
+ dkms is already the newest version.
80
+ 0 upgraded, 0 newly installed, 0 to remove and 142 not upgraded.
81
+ Verifying archive integrity... All good.
82
+ Uncompressing VirtualBox 4.1.14 Guest Additions for Linux..........
83
+ VirtualBox Guest Additions installer
84
+ Removing installed version 4.1.12 of VirtualBox Guest Additions...
85
+ tar: Record size = 8 blocks
86
+ Removing existing VirtualBox DKMS kernel modules ...done.
87
+ Removing existing VirtualBox non-DKMS kernel modules ...done.
88
+ Building the VirtualBox Guest Additions kernel modules ...done.
89
+ Doing non-kernel setup of the Guest Additions ...done.
90
+ You should restart your guest to make sure the new modules are actually used
91
+
92
+ Installing the Window System drivers ...fail!
93
+ (Could not find the X.Org or XFree86 Window System.)
94
+ ...
95
+
96
+
97
+ The plugin's part starts at `[default] Installing Virtualbox Guest Additions 4.1.14 - guest's version is 4.1.1`, telling you that:
98
+
99
+ * the guest addition of the box *default* are outdated (or mismatch)
100
+ * which guest additions iso file will be used
101
+ * which installer script will be used
102
+ * all the VirtualBox Guest Additions installer output.
103
+
104
+ No worries on the `Installing the Window System drivers ...fail!`. Most dev boxes you are using won't run a Window Server, thus it's absolutely save to ignore that error.
105
+
106
+ When everything is fine, and no update is needed, you see log like:
107
+
108
+ ...
109
+ [default] Booting VM...
110
+ [default] Waiting for VM to boot. This can take a few minutes.
111
+ [default] VM booted and ready for use!
112
+ [default] Detected Virtualbox Guest Additions 4.1.14 --- OK.
113
+ ...
114
+
115
+
116
+ ### Running as a Command
117
+
118
+ When you switched off the middleware auto update, or you have a box up and running you may also run the installer manually.
119
+
120
+ ```bash
121
+ $ vagrant vbguest [vm-name] [-f|--force] [-I|--no-install] [-R|--no-remote] [--iso VBoxGuestAdditions.iso]
122
+ ```
123
+
124
+ For example, when you just updated Virtual Box on your host system, you should update the gust additions right away. However, you may need to reload the box to get the guest additions working.
125
+
126
+ If you want to check the guest additions versions, without installing them, you may run:
127
+
128
+ ```bash
129
+ $ vagrant vbguest --no-install
130
+ ```
131
+
132
+ Telling you either about a version mismatch:
133
+
134
+ [default] Virtualbox Guest Additions on host: 4.1.14 - guest's version is 4.1.0
135
+
136
+ or a match:
137
+
138
+ [default] Detected Virtualbox Guest Additions 4.1.14 --- OK
139
+
49
140
  ### ISO autodetection
50
141
 
51
- `vagrant-vbguest` will try to autodetect a VirtualBox GuestAdditions iso file on your system, which usually matches your installed version of VirtualBox.
52
- If it cannot find one, it downloads one from the web (virtualbox.org). Those places will be checked in order:
142
+ *vagrant-vbguest* will try to autodetect a VirtualBox GuestAdditions iso file on your system, which usually matches your installed version of VirtualBox. If it cannot find one, it downloads one from the web (virtualbox.org).
143
+ Those places will be checked in order:
53
144
 
54
145
  1. Checks your VirualBox "Virtual Media Maganger" for a DVD called "VBoxGuestAdditions.iso"
55
- 2. Guess by your operating system:
146
+ 2. Guess by your host operating system:
56
147
  * for linux : `/usr/share/virtualbox/VBoxGuestAdditions.iso`
57
148
  * for Mac : `/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso`
58
149
  * for Windows : `%PROGRAMFILES%/Oracle/VirtualBox/VBoxGuestAdditions.iso`
59
-
60
- You may also run the installer manually:
61
150
 
62
- $ vagrant vbguest [vm-name] [-f|--force] [-I|--no-install] [-R|--no-remote] [--iso VBoxGuestAdditions.iso]
63
151
 
64
152
  ## Knows Issues
65
153
 
66
154
  * The installer script, which mounts and runs the GuestAdditions Installer Binary, works on linux only. Most likely it will run on most unix-like plattform.
67
- * The installer script requires a directory `/mnt` on the host system
155
+ * The installer script requires a directory `/mnt` on the guest system
68
156
  * On multi vm boxes, the iso file will be downloaded for each vm
@@ -1,3 +1,3 @@
1
1
  module VagrantVbguest
2
- VERSION = "0.3.2"
2
+ VERSION = "0.3.3.a"
3
3
  end
@@ -15,14 +15,13 @@ Gem::Specification.new do |s|
15
15
 
16
16
  s.required_rubygems_version = ">= 1.3.6"
17
17
  #s.rubyforge_project = "vagrant-vbguest"
18
-
18
+
19
19
  # specify any dependencies here; for example:
20
20
  # s.add_development_dependency "rspec"
21
21
  # s.add_runtime_dependency "rest-client"
22
-
23
- s.add_dependency "vagrant", ">= 0.9.4"
22
+
24
23
  s.add_development_dependency "bundler", ">= 1.0.0"
25
-
24
+
26
25
  s.files = `git ls-files`.split("\n")
27
26
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
28
27
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
metadata CHANGED
@@ -1,32 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-vbguest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
5
- prerelease:
4
+ version: 0.3.3.a
5
+ prerelease: 6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Robert Schulze
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-04 00:00:00.000000000 Z
12
+ date: 2012-06-29 00:00:00.000000000 Z
13
13
  dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: vagrant
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: 0.9.4
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: 0.9.4
30
14
  - !ruby/object:Gem::Dependency
31
15
  name: bundler
32
16
  requirement: !ruby/object:Gem::Requirement