Vagrant
This page shows how to use Vagrant together with GRASS GIS. The GRASS source code contains customized Vagrantfile. This highly simplifies the vagrant usage.
Dependecies:
apt-get install vagrant virtualbox
Note: '$' shows commands to be entered from local machine, '#' from vagrant's virtual machine
First of all we download GRASS source code from SVN:
$ svn checkout https://svn.osgeo.org/grass/grass/trunk grass_trunk_vagrant $ cd grass_trunk_vagrant
We start new vagrant instance by:
$ vagrant up
The command creates new vagrant virtual machines, downloads all dependecies, and compiles GRASS on this machine. You can connect to this machine by:
$ vagrant ssh
Enjoy!
Usage
The common usage may be:
1) get data to your virtual machine, first we create empty directory for grassdata on virtual machine
$ vagrant ssh -c "mkdir grassdata"
You have several options:
1a) link your grassdata from local to virtual machine:
$ vagrant ssh-config > ssh-config $ sshfs -F ssh-config vagrant@grass-gis-vagrant:~/grassdata /opt/grassdata
1b) copy your grassdata from local to virtual machine:
$ vagrant ssh-config > ssh-config $ scp -r -F ssh-config /opt/grassdata/gismentors grass-gis-vagrant:grassdata
1c) download sample grassdata from Internet
$ vagrant ssh # mkdir grassdata # wget https://grass.osgeo.org/sampledata/north_carolina/nc_spm_08_grass7.tar.gz # tar xzf nc_spm_08_grass7.tar.gz
2) start GRASS from virtual machine
# grass71
3) To halt running virtual machine type:
$ vagrant halt
How to update GRASS installation
First of all, update GRASS source code from SVN:
$ svn up
To update your GRASS installation in vagrant (make && make install):
$ vagrant provision
If you want to re-compile GRASS from scratch (make distclean && configure && make && make install) you need to destroy your virtual machine and create new one:
$ vagrant destroy -f $ vagrant up