From dbfe9f14d4f8c2605d976e60e76f056974562079 Mon Sep 17 00:00:00 2001 From: Michael Lowell Roberts Date: Fri, 12 May 2017 14:43:11 -0700 Subject: [PATCH] vagrant: update `README.md` with installation instructions. --- README.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/README.md b/README.md index 73b6227..5b54fbe 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,50 @@ proofs, and supports a use model in which the human protocol designer and the automated tool interact to expose errors and prove correctness. +## Installation + +### Releases + +A pre-release Windows installer is available on [IVy's Github release page](https://github.com/Microsoft/ivy/releases). + +### Vagrant + +IVy users and contributors may also deploy IVy within an container using Vagrant. + +#### Windows + +On Windows, Virtualbox is currently the recommended container provider. + +1. Clone the `IVy` repository (e.g. `git clone https://github.com/Microsoft/ivy.git`). +2. Download and install [Vagrant](http://vagrantup.com). +3. Download and install [Virtualbox](http://virtualbox.org). +4. Type `vagrant plugin install vagrant-vbguest` to install the [`vagrant-vbguest`](https://github.com/dotless-de/vagrant-vbguest) plugin (optional but recommended). +5. Download and install an X11 server for Windows (e.g. [Xming](http://www.straightrunning.com/XmingNotes/)). +6. Type `vagrant up` [from an administrator console](https://github.com/mitchellh/vagrant/issues/3854) to prepare a new development environment. This is likely to take some time to complete the first time it is done, because [z3](https://github.com/Z3Prover/z3) must be compiled from its sources. +7. Launch your X11 server and type `vagrant ssh` to get access to IVy from the console. + +#### Linux + +On Linux, [Docker](http://docker.com) is also available as a container provider, and will yield better performance than the Virtualbox backend. + +1. Clone the `IVy` repository (e.g. `git clone https://github.com/Microsoft/ivy.git`). +2. Install [Vagrant](http://vagrantup.com). +3. Install [Docker](http://docker.com). +4. (Debian-based systems) Ensure your user is in the `docker` group. +5. Type `vagrant up --provider=docker`. +6. Type `vagrant ssh` to get access to IVy from a shell. + +Linux users also have the option of directly executing the provisioning scripts in the `scripts/setup` directory, bypassing a container. Those interested should take note that the scripts have only been tested with Ubuntu and Debian Vagrant guest images. + +#### MacOS + +- MacOS installation instructions should be similar to the Windows instructions, with the exception that [an X11 server for MacOS](https://www.xquartz.org/) should be used. +- Docker support for may function in Linux but this remains unconfirmed at the time of this writing. + + + +## Further Reading + For further information on IVy, see [the IVy web site](http://microsoft.github.io/ivy/).