An empty Vagrant machine is distributed to users
as a bundle of Vagrantfile
and an
installation script.
Read the section Scripts for installing ready-made packages
and make a Bash installation script.
You may want to distribute
.bashrc
and
.rsyncexlude
files too, as described in
the section Setting up a default environment with .bashrc
, but that is easiest done by letting
the installation script download the files from site where they
are available. Relevant lines may be
$ cd $HOME
$ wget http://tinyurl.com/m88bljf/.bashrc
$ wget http://tinyurl.com/m88bljf/.rsyncexclude
To ensure that the user's initialization process of the machine
invokes an installation of the desired packages, you need to
add a line to Vagrantfile
that runs the Bash script.
Say the name of the script is install_minimal.sh
.
The relevant line is shown below:
Vagrant.configure("2") do |config|
...
# Run installation
config.vm.provision :shell, :path => "install_minimal.sh"
...
end
Users must now have the files Vagrantfile
and install_minimal.sh
to create a complete Vagrant machine on their computers.